gpt4 book ai didi

asp.net-mvc - 如何仅允许匿名访问一个 Controller ?

转载 作者:行者123 更新时间:2023-12-02 08:41:44 24 4
gpt4 key购买 nike

我正在使用带有表单例份验证的 MVC 2.0。我想允许公众访问一个名为“Logout”的 Controller 。目前,每当我浏览它时,我都会跳到登录。

<authentication mode="Forms">
<forms loginUrl="Login/Login"
protection="All" timeout="30"
name=".ASPXAUTH"
path="/"
requireSSL="false"
slidingExpiration="true"
defaultUrl="Token/Create"
cookieless="UseDeviceProfile"
enableCrossAppRedirects="false" />
</authentication>

<!-- Deny Anonymous users. -->
<authorization>
<deny users="?" />
</authorization>

<小时/> 更新:我正在使用 WIF,每次用户到达注册页面(匿名访问)时,我都需要将他们注销,以确保他们的 token 中有最新的声明,而不仅仅是使用过时的 token 允许进入。他们的声明是通过注册页面的请求传入的。

最佳答案

正如 SLAks 提到的,未登录的用户应该不需要访问注销操作。但是,如果您想启用对 Controller /操作的匿名访问,您必须在 Web.Config 中启用它:

<location path="~/Logout">
<system.web>
<authorization>
<allow users="?" />
</authorization>
</system.web>
</location>

对于纯 MVC 应用程序来说,更好的方法是使用 Authorize 属性并允许对 web.config 中的所有用户进行访问。

关于asp.net-mvc - 如何仅允许匿名访问一个 Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8257348/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com