フォーム認証を使用して MVC アプリケーションを作成しています。Active Directory に対して認証を行っているため、カスタム RoleProvider を作成しました。私のアプリケーションは、これまで web.config の appSettings セクションで定義してきたロールの小さなセットにのみ関係しています。
<appSettings>
<add key="DirectorRole" value="Domain\Directors" />
<add key="ManagementRole" value="Domain\Managers" />
...
</appSettings>
ただし、このアプローチではいくつかの問題に遭遇しました。
- コントローラーのデータ注釈でこれらの設定を参照できません。
[Authorize(Roles = ConfigurationManager.AppSettings["DirectorRole"])]
コンパイルできないため、グループの名前を再度指定する必要があります:[Authorize(Roles = "Domain\\Directors")]
。 - 私の web.config では、ロール プロバイダーに groupsToUse を指定し、同じロール セットの 2 つの個別のリストを維持するのではなく、既存のリストを参照したいと考えています。
web.configでロールを定義するためのより良い/再利用可能な方法が必要なようです.誰かが私を正しい方向に向けることができますか?