ADには、例role1、role2のようないくつかの役割があります。コントローラーの認証に使用できる役割を、アプリケーションで作成したいと思います。もちろん、私はそのようなものを使うことができます:
[Authorize(Roles = "role1")]
ただし、誰かがADでグループの名前を変更した場合は、それを使用したすべてのコントローラーでこのロールを変更する必要があります。だから私はコントローラーで使用するアプリで自分の役割を定義しようとしています:
MyRole = role1
また、ここでは、アプリで複数の役割を1つに設定できます。私はそのようなものを使おうとしています:
string UserName = HttpContext.Current.User.Identity.Name;
string[] roles = Roles.GetRolesForUser(UserName);
if (roles.Contains("role"))
{
Roles.CreateRole("MyRole");
Roles.AddUserToRole(UserName, "MyRole");
}
ただし、メソッドCreateRoleおよびAddUserToRoleはWindows認証では機能しません。
それを行う方法はありますか?