自定义表单身份验证+MVC3+AuthorizeAttribute

2024-01-02

我本质上做的是this https://stackoverflow.com/a/2342196/69735。但是,每当我使用内置的 AuthorizeAttribute 时,MVC 框架(我猜)永远不会查看我的主体来确定用户是否具有正确的角色。它不断尝试在 app_data 目录中创建一个新的 MDF 文件,但由于没有特权,它崩溃了。

这是预期的行为吗?我应该派生自己的 AuthorizeAttribute 并亲自检查主体吗?

另一个需要指出的奇怪行为是,我在同一域上有两个站点,我正在为其进行单点登录。在任一站点上,我都使用相同的类库在 AuthenticateRequest 上重新创建我的自定义主体,并且在调试时我看到主体在每个站点上都已正确设置。但是,站点 1(对用户进行身份验证的站点)使用内置的 AuthorizeAttribute,并且它工作得很好,但站点 2 在调用任何具有 AuthorizeAttribute 的操作时尝试创建 MDF 文件。


好吧,我明白了,我必须将其添加到我的 web 配置中的 system.webServer 下。这会删除替换我主体的 HttpModule。

<modules runAllManagedModulesForAllRequests="true">
    <remove name="RoleManager" />
</modules>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

自定义表单身份验证+MVC3+AuthorizeAttribute 的相关文章

随机推荐