我有一個使用窗體身份驗證的ASP.NET應用程序。ASP.NET窗體身份驗證和調用Web服務
我需要調用的Sharepoint search.asmx Web服務從網絡檢索滿足搜索條件的文件列表(有一個很好的理由讓我這樣做的Sharepoint之外)
我不知道我需要通過search.asmx的安全信息。我已經試過: queryService.ClientCredentials.Windows.ClientCredential = System.Net.CredentialCache.DefaultNetworkCredentials queryService.ClientCredentials.Windows.AllowedImpersonationLevel = Security.Principal.TokenImpersonationLevel.Impersonation
哪位在我的開發環境作爲我的工作用戶有權訪問正在訪問的文件共享Sharepoint。我無法理解,並且無法從調試或事件查看器等推斷出什麼是在我將這些代碼部署到服務器上時,在上述代碼中傳遞的憑據。
在使用表單認證之前,它會通過打開IE窗口的用戶的Windows憑據嗎?它是否會傳遞運行asp.net組件的帳戶的憑證,即我正在運行的AppPool的帳戶,還是會傳遞其他內容?
我似乎無法讓Sharepoint返回任何文件,我猜這是因爲傳遞的憑據無法訪問文件共享。
感謝 安迪
謝謝。我應該說我的表單身份驗證不再需要通過Active Directory進行身份驗證,所以理論上我應該能夠處理「真實」用戶(我使用表單身份驗證,因爲用戶需要在機器上登錄應用程序他們可能不會自己登錄) – andrew
我有完全相同的場景。您可以在用戶登錄時存儲用戶名和密碼(可能位於表單故障單中的用戶數據字符串或會話狀態中)。當您準備好調用webservice時,將值放在networkcredential對象中。如果它對你有幫助,請將其標記爲答案。 –