首页 > 解决方案 > 在 Spring 中使用 MSAL 中的两个授权客户端时,我收到错误 AADSTS65001

问题描述

我的 Spring MSAL 应用程序中有两个授权客户端,如下所示:

azure:
  activedirectory:
    tenant-id: ${TENANT_ID}
    client-id: ${CLIENT_ID}
    client-secret: ${CLIENT_SECRET}
    authorization-clients:
      calendar-api:
        scopes:
        - ${CALENDAR_SCOPE}
      azure-api:
        scopes:
        - ${AZURE_SCOPE}

如果我将这些客户端中的任何一个保留在原位,我就可以运行我的应用程序、登录并生成客户端以调用下游资源服务器。但是,如果我启用两个客户端,我会收到以下错误:

[invalid_grant] AADSTS65001: The user or administrator has not consented to use the application with ID 'b31490c0-4ac4-4f8c-8f8e-d5addb72271d' named 'Frontend'. Send an interactive authorization request for this user and resource. Trace ID: 3f003263-5eb7-4f97-b29a-fe0337d80800 Correlation ID: 4ccb19ec-8ff9-442d-b1b6-a106aa6721eb Timestamp: 2021-09-25 09:58:41Z

我怎样才能解决这个问题?

标签: springazure

解决方案


我相信这里的答案是在 API Permissions 页面下添加 API,并授予他们管理员同意。一旦我添加了这个管理员同意,错误就消失了。

在此处输入图像描述


推荐阅读