【发布时间】:2012-07-17 08:40:15
【问题描述】:
我正在使用表单身份验证创建一个 MVC 应用程序。我正在针对活动目录进行身份验证,因此创建了一个自定义 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 并仅引用一个预先存在的列表,而不是维护同一组角色的两个单独列表。
似乎必须有更好/可重用的方式来定义 web.config 中的角色,有人可以指出正确的方向吗?
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-3 web-config roleprovider