C# を使用して、ログイン ユーザーによって Azman Manager からロールを取得しています。
これは私のコードです、
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;
}
広告ユーザーがアプリケーションにログインしたら、上記のメソッドを「strUserName」パラメーターで呼び出します。ここでは、 foreachを使用して azman からすべてのユーザー ロールをチェックし、このforeach内でロールに基づいて取得し、このすべてのメンバーがロールの下で使用可能かどうかをチェックしています。ロールの下でメンバーが使用可能な場合、userrole を文字列として返すことを意味します。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 ?
前もって感謝します...