2016-02-26 48 views
1

我有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 問題)

+0

爲什麼不顯示所有用戶'login.aspx'來授權? – gofr1

+0

好吧,這是問題。用戶不會輸入www.mydomain.com/login.aspx...user只打入www.mydomain.com,但如果我有拒絕所有匿名用戶的訪問,那麼它會提供「拒絕訪問」錯誤,如果我只輸入www.mydomain.com .. – LP13

+0

我明白了,謝謝澄清。 – gofr1

回答

-1

在類似於下面SnagIt的默認文檔選項添加您的啓動頁面名稱:

enter image description here