代码之家  ›  专栏  ›  技术社区  ›  Sat Thiru

如何在获取Azure AD V2端点的访问令牌时指定资源URI?

  •  2
  • Sat Thiru  · 技术社区  · 5 年前

    https://myresource.com "). 很好。

    现在,我尝试在另一个项目中使用MSAL.js,因为在那里我需要支持两个工作帐户(aad auth)

    “资源”的概念似乎已经从AAD V2中消失了 . 那么,在获取目标API的访问令牌时,如何指定资源url呢?因此,生成的accesstoken在AUD声明中包含ResourceURI(这将由我调用的API强制执行)。

    msalapp.acquireTokenSilent([], null, null, "resource=https%3A%2F%2Fmyresource.com")

    我得到以下错误:

    AADSTS901002: The 'resource' request parameter is not supported.

    msalapp.acquireTokenSilent(['https://myresource.com'])

    结果:

    AADSTS70011: The provided value for the input parameter 'scope' is not valid. The scope https://myresource.com openid profile is not valid. The scope format is invalid. Scope must be in a valid URI form <https://example/scope> or a valid Guid <guid/scope>..

    通过MSAL.js处理v2端点时,如何在获取访问令牌时指定资源URI? 抱歉,在这种情况下,MSDN文章(通常相当好)根本没有用处。。。

    1 回复  |  直到 5 年前
        1
  •  13
  •   Jean-Marc Prieur    5 年前

    在Azure AD v2.0中,您需要使用作用域,而不是资源。

    https://myresource.com/.default .

    https://github.com/AzureAD/microsoft-authentication-library-for-dotnet/wiki/Adal-to-Msal#scopes-for-a-v10-application

    推荐文章