【问题标题】:Cant see scope claims in Azure Ad OAuth-protected api在受 Azure Ad OAuth 保护的 api 中看不到范围声明
【发布时间】:2018-08-30 09:16:44
【问题描述】:

我的 api 受“Azure AD OAuth 2.0”保护有问题。我们想让我们的员工访问我们的 API(无需任何最终用户交互/批准)

我曾经复制过this example,上次尝试时,我可以从我的 api 代码中看到客户发送的声明。现在我不能了。

.

这是我在 azure 中的设置

.

这是我在 ClaimsPrincipal.Current 上看到的 .

我希望看到两个范围声明。我做错了什么或如何开始查找错误?

【问题讨论】:

    标签: azure oauth-2.0 azure-active-directory claims-based-identity


    【解决方案1】:

    嗯,简单地说,因为当应用代表用户调用 API 时,会应用委派权限。 您的方案中没有用户,因此仅应用应用程序权限。

    在这种情况下,您应该定义应用程序权限并将其授予您的应用程序。 然后,您可以在 roles 声明中找到它们的值。

    这是我关于这个主题的文章:https://joonasw.net/view/defining-permissions-and-roles-in-aad

    以下是 API 清单中定义的示例权限:

    {
      "appRoles": [
      {
        "allowedMemberTypes": [
          "Application"
        ],
        "displayName": "Read all todo items",
        "id": "f8d39977-e31e-460b-b92c-9bef51d14f98",
        "isEnabled": true,
        "description": "Allow the application to read all todo items as itself.",
        "value": "Todo.Read.All"
      }
      ]
    }
    

    【讨论】:

    • Juunas,我已经数不清有多少次你用这个 Azure AD 的东西救了我的培根了!这就像一个魅力!再次感谢:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-02-19
    • 2014-12-17
    • 2017-11-02
    • 2012-08-15
    • 1970-01-01
    • 2014-10-29
    • 2019-12-03
    相关资源
    最近更新 更多