我想要做的事:禁用登錄提示符mod_auth_sspi_1.0.4-2.2.2
創建對我們公司的內部網的主頁,可以自動抓取登錄的人觀看的Windows用戶名頁面沒有當頁面加載時提示此人輸入這些憑證。
目前,我只是想讓它抓住本地用戶名,因爲在我們的IT人員獲得域名安裝之前,我們需要一段時間。例如,現在我希望它在沒有任何提示的情況下捕獲「(PC-Name)\ windows.user.name」。
環境:
的Apache 2.2.21在Windows 7 64位系統(將在CentOS,一旦它在生產)。
PHP 5.3.8(VC9-ZTS)。
Internet Explorer 9.0.8x和Firefox 6.0.2(稍後會擔心Chrome)。
當前測試頁面只是一個調用print_r($ _SERVER)的PHP腳本。
爲了簡單起見,我測試的目錄不是VirtualHost。
步驟我已經採取迄今:
從SourceForge下載mod_sspi_1.0.4-2.2.2並萃取mod_auth_sspi.so到Apache的模塊目錄中。
添加的模塊聲明:
的LoadModule sspi_auth_module模塊/ mod_auth_sspi.so
添加的目錄定義:
的AllowOverride無 選項無 訂購允許,拒絕 所有允許
配置和network.automatic-NTLM身份auth.trusted-URI的設置PHP腳本的絕對URL路徑,然後重新啓動Firefox中:AuthName "My Intranet" AuthType SSPI SSPIAuth On SSPIAuthoritative Off require valid-user
通過將大約啓用在Firefox中集成身份驗證。
我還沒有在IE中做過同樣的步驟,但我會一次讓Firefox工作,因爲這是我們主要支持的瀏覽器內部。
重新啓動Apache並嘗試加載測試PHP腳本。
結果:
- 在IE和Firefox,我得到提示頁面加載之前用戶名和密碼。我不想要那個提示。我想要在沒有提示的情況下自動檢測用戶名。
故障處理迄今:
我試圖通過各種SSPI選項,如authritative開/關和諸如此類的東西循環。沒有效果。
如果我刪除「require valid-user」,但沒有傳遞用戶名(不是NULL;簡單地不在數組期間中設置),則不會再出現提示。
如果我在提示符上點擊「取消」,我會看到標準的「需要驗證」頁面。
如果我輸入了無效的用戶名或正確的用戶名,但輸入了錯誤的密碼,頁面將會加載,但用戶名將是「(PC-Name)\ Guest」。
如果我輸入正確的用戶名/密碼,則會顯示用戶名而不是Guest。
一旦我在IE或Firefox中輸入用戶名/密碼,瀏覽器會記住後續頁面上的用戶名,直到我清除存儲的密碼緩存或重新啓動瀏覽器。
我已經花了最近3個小時谷歌搜索和隨機猜測。零成功。我發現了幾個人問起這個問題的一些孤立的論壇帖子,但要麼他們沒有回答,要麼提供了我已經嘗試過但沒有成功的解決方案。
再次,我要的是爲頁面加載,沒有任何提示,並顯示在$ _SERVER陣列輸出的當前登錄的Windows用戶名。
據我所知,這可能是:Windows配置問題,Apache配置問題或瀏覽器配置問題。除此之外,我是新鮮的想法。
我將非常感謝您提供的任何幫助。謝謝!
- 克里斯
對不起,沒有完全閱讀上面,你正在一個窗口站。 – ehime