2017-08-07 62 views
1

我創建了一個簡單的角度spa項目,其中我使用ng2-adal庫進行認證和授權。該庫有一個方法acquireToken,它爲您在參數中指定的單個端點返回單個令牌,並且工作正常。我用它來進行REST API調用。由於我有多個API端點,因此我需要定義一個將爲其生成單個令牌的端點數組,這些端點將用於所有REST API調用。用於多個端點的角度2 adal單令牌

回答

1

您不能使用相同的訪問令牌調用多個API。由azure廣告發出的單一訪問令牌針對特定的資源/ API端點。當API收到訪問令牌時,它將驗證觀衆值是否正確,並拒絕針對不同觀衆的任何令牌。

ADAL for JavaScript將幫助您獲得不同資源的令牌,您應該首先配置端點屬性。當爲不同的資源獲取令牌時,ADAL JS使用隱藏的iframe來驅動無需UX的認證,該認證利用該cookie的存在,通過隱式流從Azure AD獲取新的令牌。

+0

這是不正確的。您可以查詢多個端點的一個令牌。查看Azure AD身份驗證庫(ADAL)中JavaScript的原始Microsoft示例。端點paramterar是數組,例如 - https://github.com/AzureAD/azure-activedirectory-library-for-js。我已經在AngularJS 1上使用了它多年。但我對ng2-adal庫及其在多個端點上的支持毫無頭緒。 –

+0

@HrvojeKusulja,不,op想要使用單個令牌來訪問多個端點。是的,端點paramterar是數組,但這並不意味着您可以使用microsoft graph api的訪問令牌訪問azure廣告圖api。你的理解是不正確的。 –

+0

如果我想使用ADAL和一個令牌訪問SharePoint Online和myCustomBackendAADApp,則可以使用單個令牌。那有什麼問題? –