asp.netページにWindows認証を行った際の所属グループのチェック

ただのメモになってしまっている感がありますが、aasp.netページにIISのWindows認証を行った際に特定グループに所属しているかを確認するコードです。C#です。

administratorsに所属しているかの確認

if (Page.User.IsInRole("administrators"))
{
    Response.Write("OK");
}
else
{
    Response.Write("NG");
}

所属しているグループのSIDの一覧を取得する

※SIDからグループ名に変換する方法が分かりませんでした。判明したら追記します。

var Sids = ((System.Security.Principal.WindowsIdentity)((Page.User).Identity)).UserClaims;

foreach (var Sid in Sids)
{
    Response.Write(string.Format("{0}<br />", Sid.Value));
}

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です