0
我對ASP.NET Web窗體使用窗體身份驗證併成功驗證用戶身份。ASP.NET Web窗體授權允許匿名用戶訪問特定頁面
通過web.config中的這些授權設置,匿名用戶只能訪問登錄頁面。
<authorization>
<deny users="?" />
</authorization>
或
<location path="SubFolder">
<system.web>
<authorization>
<deny users="?" />
<allow users="*" />
</authorization>
</system.web>
</location>
我試圖使用位置標記來進一步允許額外的頁面的匿名訪問,但它們將被忽略:
<location path="SubFolder/LoggedOut.aspx">
<system.web>
<authorization>
<allow users="?" />
</authorization>
</system.web>
</location>
繼ASP.NET設置繼承位置標記中的授權標記應覆蓋全局授權標記。
系統通過構建URL的所有規則的合併列表來確定哪個規則優先,列表頭部使用最近的規則(層次結構中最近的規則)。 (link)
我怎麼能拒絕所有的網頁,但那些我指定的匿名訪問?
對此question的回答表明我所做的是正確的。但它似乎不適合我。那麼爲什麼會發生?有沒有辦法找出當我嘗試訪問一個頁面時設置阻止訪問的設置?有什麼我失蹤?