【问题标题】:Is IIS Form Authentication related anonymous authentication account?IIS 表单身份验证是否与匿名身份验证帐户有关?
【发布时间】:2020-09-19 09:07:52
【问题描述】:

登录后访问主页时,部分资源(图片)没有出现(使用表单认证) 但是,在 iis 管理器中将匿名身份验证的属性设置为“应用程序池 id”是可行的

在 iis 中使用什么 windows 帐户进行表单身份验证?

【问题讨论】:

  • blog.lextudio.com/… Forms 身份验证只是 ASP.NET 的一个概念。在 IIS 方面,您启用了匿名身份验证,因此使用了相关的 IIS 设置/帐户。

标签: asp.net forms authentication iis anonymous


【解决方案1】:

只有登录页面需要匿名授权访问。听起来您没有正确设置匿名身份验证。

当我们在 IIS 中实现表单认证时,表单认证和匿名认证是并行启用的。然后我们将为所有用户创建允许身份验证规则并在站点级别拒绝匿名用户。

<authentication mode="Forms">
  <forms name=".MyCookie" loginUrl="Login" protection="All" timeout="60" />
</authentication>
<authorization>
  <deny users="?" />
  <allow users="*" />
</authorization>

其次,我们需要创建一个授权规则,允许匿名访问登录页面。

 <location path="Login">
    <system.web>
      <authorization>
        <allow users="*" />
      </authorization>
    </system.web>
  </location>

当您通过表单身份验证时,IIS 将发送一个表单身份验证 cookie,其用户名由您的应用程序决定。可以是appsetting中的key,也可以是数据库中的用户名。

1.

FormsAuthentication.SetAuthCookie(UserInfo.UserName, false, FormsAuthentication.FormsCookiePath);

2.

FormsAuthenticationTicket

3.

FormsAuthentication.RedirectFromLoginPage(UserInfo.UserName, false);

您需要确保 auth_user 和应用程序池身份有权访问图像源。 https://support.microsoft.com/en-us/help/301240/how-to-implement-forms-based-authentication-in-your-asp-net-applicatio

【讨论】:

    猜你喜欢
    • 2019-01-09
    • 1970-01-01
    • 2020-12-21
    • 2019-01-17
    • 1970-01-01
    • 2012-10-14
    • 2012-03-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多