Rob*_*man 18 iis asp.net-mvc windows-authentication
我查了很多关于这个错误的帖子,但还没能解决问题.
我有一个在Windows 8 pro上运行的VS2013内置的简单MVC5网站.创建站点后,将选择单个帐户的选项.我现在需要启用Windows身份验证,以便只有AD帐户用户可以使用网站和授权,以便我可以限制对特定AD组的某些视图/控制器的访问.
在VS中选择了Web项目后,我更新了属性窗口(F4),以便将匿名身份验证设置为禁用,并将Windows身份验证设置为已启用.
该项目的web.config现在包含以下部分:
<system.web>
<authentication mode="Windows" />
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5" />
<authorization>
<deny users="?" />
</authorization>
</system.web>
<system.webServer>
<modules>
<remove name="FormsAuthenticationModule" />
</modules>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)
我从IIS或F5访问该站点我收到错误:HTTP错误404.15 - 未找到请求筛选模块配置为拒绝查询字符串太长的请求.我注意到有些东西已经循环以提供一个ReturnUrl,它是查询字符串中的重复长连接.
在IIS\Authentication部分中,我已设置为禁用"匿名身份验证,ASP.Net模拟和表单身份验证".在IIS.Net授权规则部分中,我设置为拒绝"匿名用户"并允许"所有用户"
我哪里错了?
Chr*_*att 26
我个人遇到这个问题的唯一一次是我不小心添加[Authorize]到布局中使用的子操作.添加[Authorize]到您的登录操作将产生相同的效果,或者只是忽略添加[AllowAnonymous]您的登录操作,当它所在的控制器[Authorize]上.长短,这是由于需要在实际登录页面上进行授权的东西造成的,这会导致您被重定向到登录页面,这需要授权,导致您被重定向到登录页面等.
TL;博士
[Authorize].[AllowAnonymous].[Authorize]没有,[AllowAnonymous]如果它们位于装饰的控制器中[Authorize].小智 12
启用Windows身份验证时出现此错误.我想基于Windows登录授权用户,我不想在我的应用程序中登录页面.
我通过在我的Web配置文件中添加以下内容来修复错误.
在标记下system.web,将身份mode="None"验证更改为身份验证mode="Windows"
在标签下appSettings,添加了添加key="owin:AutomaticAppStartup" value="false"
您可能在启动时具有将您重定向到登录页面的功能.你必须禁用它.我通过默认身份验证方法创建了项目,该方法创建了一个帐户控制器及其依赖项.现在,当我将身份验证方法更改为Windows模式时,引发了上述错误.现在我唯一做的就是在startup.cs文件中评论ConfigureAuth(app)函数
| 归档时间: |
|
| 查看次数: |
37158 次 |
| 最近记录: |