我有一個 SharePoint 門戶,當“啟用 Windows 身份驗證”/“集成 Windows 身份驗證”被激活(我們使用“基于宣告的身份驗證”)時,我可以正常作業,我可以瀏覽 SharePoint 門戶,我可以呼叫“https:// my-shp/_vti_bin/Lists.asmx”來自我的自定義 c# 應用程式(以及來自 Postman)。
當我激活“Trusted Indentity Provider”/“SAML Provider”(Windows 身份驗證和 SAML 提供程式都已激活)時,問題就開始了,現在瀏覽門戶正在作業(當我嘗試瀏覽時,我有一個頁面詢問我是否要使用“Windows 身份驗證”或“SAML 提供程式”,我選擇“Windows 身份驗證”,然后我被重定向到門戶),但是當我嘗試從我的 . net custom application 我得到“403 FORBIDDEN”,當我嘗試使用 Postman 時,我得到相同的回應,并且在回應的標題中我有這個條目:
X-MSDAVEXT_Error:917656;訪問 拒絕。 之前 打開 檔案 in this location, you must first browse to the web site and select the option to login 自動。
我認為 SharePoint 期望我在嘗試瀏覽門戶時告訴他使用哪種方法(“Windows 身份驗證”或“SAML 提供程式”),但在呼叫 Web 服務的情況下,我沒有不知道如何告訴他使用“Windows 身份驗證”(如果沒有指定方法,則強制使用)。Sharepoint 自己的 Web 服務(如 _vti_bin/Lists.asmx)以及我們在 SharePoint 門戶中托管的所有自定義 Web 服務都會出現此問題。
關于我在這里缺少什么的任何想法?
uj5u.com熱心網友回復:
感謝您的回復,您的建議可以解決問題,所以我將您的答案設定為正確答案,但我們使用另一種方式修復它,遵循這篇文章:
https://docs.microsoft.com/en-us/previous-versions/office/developer/sharepoint-2010/hh124553(v=office.14)
要強制 sharepoint 使用 windows 身份驗證,我們應該將以下條目添加到請求“X-FORMS_BASED_AUTH_ACCEPTED”的標頭中,值為“f”,以免在我們呼叫我們添加的 web 服務的所有位置進行更改一個 httpmodule 在所有 http 請求中注入條目。
uj5u.com熱心網友回復:
作為一種解決方法,您可以擴展 Web 應用程式并在新站點上僅使用 Windows 身份驗證。
https://docs.microsoft.com/en-us/SharePoint/administration/extend-a-claims-based-web-application
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/507600.html
標籤:网页服务 共享点 山姆 windows-身份验证
上一篇:從SAP公開SOAP服務?