我创建了一个暴露了API和作用域的应用注册。
然后,我使用另一个应用程序注册创建一个前端应用程序/客户端,然后我可以添加我自己的API作为委派权限,并使用正常的OAuth流程代表我向Azure AD要求为API提供令牌。
假设3个客户端需要访问API,但不是作为给定用户,而是作为应用程序本身。在Azure AD的UI中,添加此第3个API并尝试为其授予对API的访问权限时,我自己的API没有“应用程序权限”。这相当于什么?我该如何设置?
答案 0 :(得分:0)
我有一篇较旧的文章,向您展示了如何通过清单进行操作。
https://joonasw.net/view/defining-permissions-and-roles-in-aad
当前没有用于定义应用程序权限的UI,因此您必须通过清单或PowerShell进行操作。
基本上,您需要使用允许的Application成员类型定义一个appRole。 那是一个应用程序权限,然后可以将其分配给应用程序。 它将出现在令牌中的角色声明中。
{
"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"
}
]
}