我有asp.net web應用程序。我想只允許經過身份驗證的用戶訪問此應用程序。任何匿名用戶都應該訪問被拒絕的錯誤,或者應該被重定向到登錄頁面。所以我在配置文件中添加了「Authorization」元素來拒絕所有匿名用戶。我排除了login.aspx
頁面,以便匿名用戶可以訪問它。如何在IIS中設置啓動頁面
<system.web>
<authentication mode="None" />
<authorization>
<deny users="?"/>
</authorization>
</system.web>
<location path="login.aspx">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
注意:此應用程序使用Azure的AD進行身份驗證這就是爲什麼你看到authetication模式= 「無」。用戶訪問登錄頁面時,只需將用戶重定向到Azure站點進行身份驗證。而這個身份驗證片工作正常。
問題
考慮我的申請在本地IIS託管。由於只有 login.aspx
被排除在授權之外,如果我輸入 http://localhost
我得到拒絕訪問錯誤。我必須明確 類型才能登錄。如何改變這種 所以當我鍵入http://localhost
IIS將重定向到 (我已經嘗試下IIS默認文檔設置 login.aspx的爲第一頁)
2.我需要什麼樣的配置做,因此,如果匿名用戶嘗試 訪問任何資源http://localhost
下,他會被重定向 到(這也將照顧1 問題)
爲什麼不顯示所有用戶'login.aspx'來授權? – gofr1
好吧,這是問題。用戶不會輸入www.mydomain.com/login.aspx...user只打入www.mydomain.com,但如果我有拒絕所有匿名用戶的訪問,那麼它會提供「拒絕訪問」錯誤,如果我只輸入www.mydomain.com .. –
LP13
我明白了,謝謝澄清。 – gofr1