web.configで以下のコードを使用して、asp.net Webサイトのアクセス制限を実装しました
<authentication mode="Windows">
</authentication>
<authorization>
<allow users="na\user1, phil\user2, so on" />
<deny users="*"/>
</authorization>
現在のユーザーを表示したり、ユーザーを削除したり、このサイトにアクセスするためにユーザーを追加したりできるインターフェイス (Web ページまたはモーダルポップアップ) を提供する必要がある管理者ユーザーはほとんどいません。今知りたい
1)現在のユーザーをプログラムで見つける方法、つまり users 属性の値。
asp.netの以下のコードを使用して解決しました コードの web.config にハードコードされた承認済みユーザーを参照するにはどうすればよいですか
AuthorizationSection configSection =
(AuthorizationSection)ConfigurationManager.GetSection("system.web/authorization");
var users = new List<string>();
var rules = configSection.Rules;
foreach (AuthorizationRule rule in rules)
{
if (rule.Action == AuthorizationRuleAction.Allow)
{
foreach (string user in rule.Users)
{
if (!users.Contains(user))
{
users.Add(user);
}
}
}
//rule.Users.Add("phil\user3");
//rule.Users.Remove("phil\\user2");
}
2) サイトの実行中にユーザーを削除または追加して web.config を更新する方法は?
上記のコードのコメント行を使用してユーザーの追加と削除を試みましたが、うまくいきませんでした。
そのコードのどこが間違っていますか? 私が言ったように、その場でweb.configにユーザーを追加または削除する必要があるので、誰かが私にコードを提供できる場合。前もって感謝します!