我得到一個401(訪問被拒絕)調用內部Web服務的方法。我從公司內部網上的ASP.NET頁面調用它。我檢查了所有的配置,它應該使用集成的安全性與訪問該服務的帳戶,但我試圖找出如何確認佔它連接下。不幸的是我無法調試生產網絡上的代碼。在我們的開發環境中,一切工作正常。我知道這些設置必須有所不同,但我從哪裏開始感到不知所措。任何建議?如何判斷哪個帳戶試圖訪問ASP.NET Web服務?
0
A
回答
1
你有沒有在IIS日誌看?
0
我也建議看在服務器進行認證故障對安全事件日誌。您應該在這裏找到失敗的授權嘗試的腳印。不過要注意的是 - 每秒獲得10次安全事件並不罕見,所以理想情況下,您需要能夠在請求失敗時訪問事件日誌。
0
如果您在實例化Web服務時沒有指定在您的ASP.NET頁面中使用哪些憑證,那麼我相信它默認爲NT_Authority \ Anonymous。
如果您使用的是System.Net.CredentialCache,那麼您的Web服務需要位於受信任的域中,通過HTTPS訪問並使用NTLM,Kerberos或Digest Auth,否則它不會從緩存中傳遞憑據。
http://msdn.microsoft.com/en-us/library/system.net.credentialcache.defaultcredentials.aspx http://msdn.microsoft.com/en-us/library/system.net.credentialcache.defaultnetworkcredentials.aspx http://msdn.microsoft.com/en-us/library/system.net.credentialcache.defaultcredentials.aspx
0
也許在生產服務器使用不同的用戶對於它的應用程序池比你的開發環境?我曾花了一天的時間找出一個。另一種選擇將是(缺乏)模擬在web.config
相關問題
- 1. 試圖訪問一個Web服務
- 2. 如何從ASP.Net訪問PHP Web服務?
- 3. 訪問asp.net web服務
- 4. 如何判斷哪個按鈕訪問了上下文菜單
- 5. 如何限制Web服務訪問公共用戶在asp.net
- 6. 如何判斷舊版Redmine運行在哪個服務器上?
- 7. 如何判斷緩存項目在哪個服務器上?
- 8. 如何判斷用戶來自哪裏?
- 9. 如何判斷每個用戶訪問每個頁面的時間?
- 10. 可以通過服務帳戶授權訪問哪些Google API?
- 11. 授予ASP.NET網絡服務帳戶訪問Azman
- 12. 使用ASP.NET網絡服務帳戶訪問網絡文件夾
- 13. 哪個服務帳戶適合?
- 14. 使用AD帳戶訪問WSS Lists.asmx Web服務時未經授權的訪問
- 15. 如何判斷編輯了哪個NSTextField?
- 16. 訪問asp.net web api http服務從android
- 17. 如何判斷服務引用來自哪裏?
- 18. 如何判斷誰在調用Web服務(Apache上的PHP)
- 19. 如何判斷一組Web服務調用是否完成?
- 20. 如何判斷哪個MKPinAnnotation被按下?
- 21. 如何判斷Java使用哪個StringEscapeUtils.escapeXML()?
- 22. 如何判斷哪個防區退出?
- 23. 如何判斷選擇了哪個HubSection
- 24. 如何判斷哪個CWInterface是機場?
- 25. 如何判斷使用哪個GUI來提供正確的服務? (Java客戶端/服務器)
- 26. 訪問Web服務
- 27. 從web服務客戶端訪問java web服務
- 28. 同時Web服務訪問測試
- 29. CRM 2011 SecurityNewiationException嘗試訪問Web服務
- 30. 如何限制服務帳戶只能訪問vision-api?
正在對你的ASP.NET應用程序中使用哪種類型的驗證?你如何向被調用的Web服務提供憑據?在您的開發環境中,ASP.NET應用程序和託管在同一臺計算機上的Web服務是什麼? – MyItchyChin 2009-07-20 20:30:49
另外,請說出您正在運行的Windows/IIS版本。 IIS7中有一些整潔的東西可能會有所幫助(失敗的請求跟蹤)。 – 2009-07-20 21:26:36