我在我的 Azure AD 帐户中添加了一些用户,我想通过以声明的形式从 Postman 调用 Azure API 来获取这些用户的角色和用户信息。我尝试使用以下参数调用以下 URL:
https://login.microsoftonline.com/myTenantId/oauth2/token
正文: grant_type :密码, client_id :客户端 ID, 客户端 secret :客户端 secret
当我在https://jwt.io/上解码它时,我在响应中收到编码格式的access_token我看到了解码后的数据,但 access_token 中没有用户角色。
我想在同一响应中以声明的形式获取用户信息和角色。
我需要采取什么方法来解决这个问题?
最佳答案
如果你提到的角色是指目录角色,答案是否定的,它不会在 token 中返回。就像juunas说的,你可以调用graph api to get directory role信息。
如果你提到的角色是指应用角色,那么答案是肯定的,你可以在id_token中获取角色信息。 先决条件是您拥有 assigned some roles to the user .
以下是详细步骤。您也可以引用this article .
- 编辑 list 以添加一些自定义角色。
类似这样的事情。
{
"allowedMemberTypes": [
"User"
],
"displayName": "Test",
"id": "c200e304-fff3-49f1-a4df-e406741ea680",
"isEnabled": true,
"description": "Bla bla",
"value": "test"
}
2. assign users to roles 。 单击企业应用程序->所有应用程序->
角色分配。
关于azure - 如何从 Azure Active Directory 获取 postman 中的用户角色声明?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55492629/