2016-03-08 50 views
0

我已成功按照來自here的說明創建併發布了一個Web API項目。從SharePoint頁面調用Web API,即不是SharePoint加載項

我也測試過訪問我的服務的根網址,並正確提示先登錄後,我能夠從通過[授權]屬性保護的端點獲得結果。

Web API實例與我的SharePoint Online站點處於相同的租期。我現在想通過代碼片段webpart從SharePoint中的頁面調用API。我已經添加了一些代碼來調用API,並且正在取回302重定向到https://login.windows.net/[instance id]/oauth2/authorize?response_type = id_token & redirect_uri = ...因此它似乎正在嘗試執行登錄。

我的問題:由於SharePoint和Web API共享相同的Azure AD實例,因此如何將已登錄用戶的令牌通過Javascript轉發給API?

回答

0

由於SharePoint和Web API共享相同的Azure AD實例,因此如何將已登錄用戶的令牌通過JavaScript轉發到API?

SharePoint Online和Web API都受Azure AD保護,但令牌無法在應用程序之間共享。

在這種情況下,您可以考慮在Azure AD中爲您的Web App配置單點登錄(SSO),以避免用戶反覆輸入用戶名和密碼。

enter image description here

+0

是的web API服務被配置爲SSO。但是,這需要客戶端(在這種情況下,SharePoint)設置與服務的委託權限。 Azure AD中的SharePoint應用程序的配置選項被禁用。我如何解決這個問題? –

相關問題