2009-08-20 25 views
1

我有一個要求將網站作爲服務帳戶出於IP原因運行,我也希望能夠使用AzMan進行用戶的Auth/Auth驗證。出於某種原因,我似乎無法讓這些工作在一起。我已經設置了一個示例應用程序來測試基本吐出一些用戶憑證的水域。除Azman和Web配置設置應用程序沒有集成代碼(無記錄/數據庫/ Webserice交互),它是一個傳呼機。作爲服務運行IIS的AzMan帳戶

運行與匿名訪問的網絡服務帳戶下的應用程序池否認我得到:

Windows Identity Check - Name: 'NT AUTHORITY\NETWORK SERVICE' 
Request.LogonUserIdentity.Name = 'CT\rhyc' 
HttpContext.User.Identity.Name = 'CT\rhyc' 
User.Identity.Name = 'CT\rhyc' 
Is in UserRole = 'True' 

..這是一切都很好,一切正常,但是服務帳戶是網絡服務不服務帳戶我應該使用。 如果我將帳戶切換到服務帳戶,我會彈出一個窗口詢問用戶憑據(我不希望它應該是單一登錄)。然而我得到這些憑據傳遞在前面的設置(ct/rhyc)

已經有一個setspn命令運行的網站(顯然),但我真的不知道什麼spn做,更不用說了知道如何檢查它。 另外,如果我允許與運行該服務的應用程序池匿名訪問帳戶的我得到:

Windows Identity Check - Name: 'CT\SVC-PERAT2-T2DEV' 
Request.LogonUserIdentity.Name = 'PERAT2NTAH3WD1\CVX_IUSR' 
HttpContext.User.Identity.Name = '' 
User.Identity.Name = '' 
Is in UserRole = 'False' 

對不起球員,我和IIS的n00b,這是不正常的東西我會做,但我們的管理員不要」不像是會知道很多有關IIS,所以它留給我.. :(

回答

1

與您正在進入的Kerberos世界SPN,這通常是未知的領域。

有一個偉大的白皮書說通過解決安全問題來解決這個問題: http://www.microsoft.com/DOWNLOADS/details.aspx?FamilyID=7dfeb015-6043-47db-8238-dc7af89c93f1&displaylang=en

它解釋瞭如何打開更多日誌記錄以獲取身份驗證問題的根。通常這是與代表團做在Exchange不是安裝轉嫁等

這裏更多的用戶的憑據: http://support.microsoft.com/kb/262177

0

OK,所以它看起來就像我們找錯了樹。克爾布羅斯從來沒有被要求,有些如何通過中國人的耳語溜走。我們已經改變爲NTLM,一切都很好。

CMD下面
CSCRIPT adsutil.vbs設置W3SVC/1152622725 /根/的NTAuthenticationProviders 「NTLM」

,其中1152622725是網站ID

感謝所有幫助傢伙,我們的教訓:不要與kerbros,因爲它咬了!

相關問題