C# - получить роль по логину пользователя в Azman
Я использую C# для получения роли от Azman Manager по логину User.
Это мой код,
internal string AzRoleCheck(string strUserName)
{
string strRoleName = string.Empty;
try
{
WindowsIdentity userIdentity = new WindowsIdentity(strUserName);
clientContext = azApplication.InitializeClientContextFromToken((ulong)userIdentity.Token, null);
foreach (IAzRole Azrole in azApplication.Roles)
{
strRoleName = Azrole.Name;
foreach (object member in (object[])Azrole.MembersName)
{
string strMemberName = member.ToString();
string[] str1 = Regex.Split(strMemberName, "@");
if (string.Equals(str1[0],strUserName,StringComparison.CurrentCultureIgnoreCase))
return strRoleName;
}
}
}
catch (Exception)
{
throw;
}
return strRoleName;
}
Когда пользователь ad войдет в мое приложение, вызовите этот метод выше с параметром strUserName. Здесь я проверяю все пользовательские роли от azman, используя foreach, и в рамках этого foreach получаю membername
на основе роли и затем проверка всех этих членов доступна под ролью или нет. Если член доступен под ролью, значит вернуть роль пользователя в виде строки.
Это работает нормально, но мой вопрос, это правильный способ получить роль на основе пользователя???
I have a question, i added a AD-User group to Azman, Now i am logging in through userName, how do i get the Azman role ?
Заранее спасибо...