我有一個用C#編寫的WCF服務,託管在遠程機器上,以本地管理員帳戶運行。在我的計算機上以活動目錄用戶身份登錄,我發送的命令只是告訴它在網絡上打開文件。我有權訪問該文件,但主機上的管理員帳戶沒有。我在需要模擬的方法上使用[OperationBehavior(Impersonation = ImpersonationOption.Required)]元標記,並且我具有正確設置的憑證類型和安全模式。我可以通過比較Windows身份驗證該帳戶是否確實試圖模仿,但我仍然遇到訪問被拒絕的異常。我認爲這與活動目錄沒有對模擬用戶進行身份驗證有關。有什麼我失蹤?爲什麼我無法在遠程機器上使用模擬打開文件?
回答
您正在進入Kerberos安全域和兩個跳躍驗證域。
你有兩個選擇:
採取紅色藥丸:儘量讓兩週跳的認證工作。確保至少有一個Windows Server 2003域,時間在所有機器之間正確同步,併爲spefic用戶/計算機帳戶設置適當的委派。如果你真的「幸運」,你將不得不使用SetSPN配置SPN。
乘坐藍色藥丸:忘記兩跳認證,有剛好夠權限的帳戶冒充WCF服務,並在前面的步驟檢查授權。
原諒我的無奈,但我不認爲我與這個主題簡要經歷了花費我至少有10年我的生活。我不想看到其他人發生這種情況。無論如何,如果你感覺很勇敢,這篇文章應該給你足夠的谷歌關鍵字。
事件日誌和網絡監視器對調試很有用...
嗯。我使用授權設置WebDAV並不是很麻煩。可能幫助我們已經在Server 2003域,並且我有一大羣Windows管理員來做實際的配置。 – tvanfosson 2009-08-11 19:28:29
它已經變得更加麻煩,而且我同意,我不想處理Kerberos身份驗證。看起來我們正在採取簡單的方法,創建一個具有有限訪問權限的應用程序特定用戶。 – MGSoto 2009-08-11 21:09:25
您可能還需要設置從Web服務器到文件服務器的委派。這將允許文件服務器信任Web服務器已驗證的憑據。有關如何爲您的應用程序設置委派,請參閱此MSDN article,特別是有關配置AD的部分。
- 1. 爲什麼我無法打開相機?
- 2. 爲什麼有些github資源無法打開模擬器?
- 3. 無法打開模擬器
- 4. 無法打開模擬器
- 5. 無法在iPhone模擬器上打開應用程序--Appium
- 6. Tizen Web應用程序無法在模擬器上打開
- 7. ssh在perl上打開遠程機器上的文件
- 8. 爲什麼我無法使用TransmitFile在瀏覽器中打開xls文件?
- 9. 爲什麼我的Storyboard無法在模擬器上啓動?
- 10. 在iOS模擬器上打開文件與應用程序?
- 11. Eclipse/RSE - 無法打開遠程文件
- 12. 爲什麼我無法用ImageMagickNet打開PDF文件?
- 13. 爲什麼我們無法在textedit中打開.xcodeproj文件?
- 14. 爲什麼無法在android模擬器中激活相機?
- 15. 爲什麼dafault相機無法在android模擬器中工作?
- 16. 爲什麼我無法打開我的文件?
- 17. PhpStorm重新打開上次使用的遠程主機文件
- 18. 無法打開遠程文件以在其上運行Xpath
- 19. 爲什麼我無法在chrome上打開我的html5畫布?
- 20. keycharmap文件是什麼?爲什麼我'無法打開keycharmap文件'警告?
- 21. 應用程序無法在模擬器中打開
- 22. 爲什麼我無法在手機或模擬器上看到應用程序的圖標?
- 23. 無法在Lion的終端上打開遠程Linux機器上的vi
- 24. Android - 無法打開模擬器窗口
- 25. android模擬器無法打開
- 26. Android Studio的模擬器無法打開
- 27. 爲什麼我無法打開位圖文件?
- 28. 爲什麼我無法打開這個文件來閱讀python?
- 29. 爲什麼我無法打開只讀.dtsx文件的任務?
- 30. 爲什麼我無法在模擬器中獲取位置?
只是一個想法...是否足夠模擬這個? – 2009-08-11 19:03:36
我真的希望它是,我能想到的唯一方法就是將它們序列化。我可能會得到一個虛擬帳戶,它可以運行,但是... – MGSoto 2009-08-11 19:13:02