2

我正嘗試首次使用Forms身份驗證。這是我在我的web.config:表單身份驗證不能按預期方式工作

<authentication mode="Forms"> 
    <forms loginUrl="Login.aspx" name="Login" slidingExpiration="true" timeout="30" path="/"> 
    </forms> 
</authentication> 
<authorization> 
    <allow users="*" /> 
</authorization> 

網站我的工作實際上並不需要任何身份驗證,因爲頁面應該無需登錄可訪問所以這就是爲什麼我讓所有用戶。 。我對此很新,所以可能有一些明顯的我做錯了,但所有頁面似乎重定向到Login.aspx,即使我允許所有用戶。

所有幫助非常感謝。謝謝。

UPDATE: 作爲一個答案執導,我改變了代碼下面的(改變*什麼?),但我仍然有同樣的問題:

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

回答

2

星號代表任何認證用戶其中不包括匿名用戶。使用問題,以允許匿名用戶:

<allow users="?" /> 
+0

謝謝你。我已將*更改爲?但我仍然有同樣的事情發生。 – Leah

+0

這不是簡單的閱讀,而是一個很好的開始幫助你。我現在使用MVC,永遠不會回到webforms。 LINK:http://www.asp.net/security/tutorials/forms-authentication-configuration-and-advanced-topics-cs – CrazyCoderz

+0

你的web.config中應該有這樣的內容: <形式loginUrl = 「的Login.aspx」 保護= 「全部」 超時= 「30」 名稱= 「ASPXAUTH」 路徑= 「/」 requireSSL = 「假」 slidingExpiration =「真「 defaultUrl =」 Default.aspx的」 無Cookie = 「UseDeviceProfile」 enableCrossAppRedirects = 「假」/> CrazyCoderz

0

我來得有同樣的問題該頁面,並看到5年以後這個從來沒有被正確回答。你需要指定web.config中的以下內容:

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

這意味着您拒絕訪問所有匿名用戶並允許訪問所有經過身份驗證的用戶。

相關問題