0

我有一个网络应用程序。在我使用 sso 进行身份验证之前。我将下面显示的代码放在 web.config 页面中。

<authentication mode="Forms">
      <forms loginUrl="https://sso.***.***.***/login" timeout="30" defaultUrl="~/Index.aspx" cookieless="UseCookies" slidingExpiration="true" path="/" />
    </authentication>

它运作良好。每个人去那个网站都需要先登录。现在我们需要改变一些页面向公众开放。因此人们不需要登录即可访问某些页面,但某些页面仍然需要登录(使用 sso)。怎么做?

谢谢

4

1 回答 1

1

使用 web.config 的<location><authorization>部分。如果当前要求用户登录所有页面,我假设您有以下内容:

<authorization>
    <deny users="?">
</authorization>

您可以添加<location>元素(这些元素超出该<system.web>部分):

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

您可以根据需要添加任意数量的<location>元素,还可以在 path 属性中定位目录。

If you want to keep things a little cleaner for directories, you can add a web.config to a directory and add <authorization> and <location> elements to that web.config

于 2013-04-11T20:01:08.710 回答