Я работаю над бизнес-логикой для WPF-приложения. Перед запуском приложения мне нужно доказать, что CurrentUser находится в ActiveDirectory специального домена, и если он там, мне нужно выяснить, в каких ролях находится текущий пользователь. Текущий пользователь и его существование в AD работают нормально, но у меня есть проблемы, чтобы выяснить роли.Как получить все роли для текущего пользователя?
Я пробовал с:
using System.Web.Security;
Roles.GetRolesForUser(currentuser);
, но проблема в том, что я должен включить Role-Management, так что я писал выше код:
Roles.Enabled = true;
но есть еще проблема с этим ->System.InvalidOperationException;
Вот весь код (testversion):
string currentuser = Environment.UserName;
string currentmachine = Environment.MachineName;
if (DirectoryEntry.Exists(string.Format("WinNT://{0}/{1}", currentmachine, currentuser)))
{
Console.WriteLine("it's working\n");
Roles.Enabled = true;
Console.WriteLine(Roles.GetRolesForUser(currentuser));
}
else
{
Console.WriteLine("it's not working");
}
Это проблема с директивой по использованию? Или есть другие возможности проверить, в каких ролях пользователь?
спасибо большое.
Я использую эти директивы: 'using System.DirectoryServices.AccountManagement; с использованием System.DirectoryServices.ActiveDirectory; с использованием System.DirectoryServices.Protocols; с использованием System.DirectoryServices; ' –
спасибо вам - пришлось попробовать несколько вещей с доменом, но теперь он работает нормально. –