2010-07-08 45 views
0

我有包含管理應用程序的虛擬文件夾中,像IIS6 SSL配置 - 必須登錄兩次(一次對:80,一次用於:443)

https://www.mysite.com/alpha 

需要SSL。在文件夾的IIS管理器屬性中,在「身份驗證和訪問控制」下,禁用匿名訪問,並將「身份驗證訪問」設置爲「集成Windows身份驗證」。

當我在Chrome中連接到該網站時,我收到兩個登錄框。第一個來自mysite.com/alpha:443,第二個來自mysite.com/alpha:80。火狐似乎重新發送我的憑據第二個盒子,所以它永遠不會顯示。

任何想法爲什麼我需要登錄兩次?

回答

1

如果您的網站需要SSL認證的用戶(出於任何原因),那麼最好的解決方案是始終在https://上有您的「登錄」頁面。這樣當他們登錄時,他們立即變得安全。這是由於SSL本地設計的原因。它通過在httphttps之間不傳遞身份驗證狀態來將其自身從非安全版本分離/保護。

您還必須編寫一些邏輯來將返回的經過身份驗證的訪問者重定向到安全頁面(IE:可以從cookie返回身份驗證的訪問者)。

編輯:

由於您使用Windows身份驗證,它可能比較容易簡單地重定向ALL傳入http流量https。這意味着您的整個網站將通過SSL,並將無法通過http訪問(除重定向到https)

我寫了一個Blog Post強制網站使用WWW的網址,但它也可以移植到強制https。

+0

由於我沒有使用表單身份驗證,我不確定您的意思是「登錄頁面」。 ? – 2010-07-08 16:38:48

+0

如果你使用的是Windows身份驗證,那麼最簡單的做法是將所有不安全的流量重定向到安全頁面。看我的編輯 – 2010-07-08 16:52:51

0

是的,

一個使用SSL,另一個不是。 因此,不允許您使用安全會話中的一個來共享安全會話中的憑據緩存。

如果您需要SSL,則直接將用戶重定向到SSL網站。

+0

「一個而不是其他」是什麼?整個文件夾需要認證。 – 2010-07-08 16:51:35