我正在尝试使用图形 API 从 azure ad 获取用户列表。我通过使用以下查询获得了访问 token :
https://login.microsoftonline.com/<tenant-Id>/oauth2/token
我收到以下回复:
{
"token_type": "Bearer",
"expires_in": "3600",
"ext_expires_in": "3600",
"expires_on": "1559555742",
"not_before": "1559551842",
"resource": "https://graph.microsoft.com",
"access_token": "eyJ0eXAiOiJKV1QiLCJub25jZSI6IkFRQUJBQUFBQUFEQ29NcGpKWHJ4VHE5Vkc5dGUtN0ZYUy1XcWZRa2RmUmVnSVJfWE4yLXdYSFZwLXJKdlltcWVzTzAwSmd1V2dJOVVQUVBWbldScjhtZjM1SHhXblhFcWhIMVlWY1Y2NlYS00ZTE1LTQ0NWEtOTM0Ni02YTBhOGQxN2UxOTYvIiwib2lkIjoiYzE0YzFlYmEtYzExMS00ZmMxLTllYjAtYTJmNGMwNjg4MDEyIiwic3ViIjoiYzE0YzFlYmEtYzExMS00ZmMxLTllYjAtYTJkKgCbMg5jElY2I83cKpRos6Jti3SUYIVTYiyF__gMsKzCQWgRZFUWnTi7syaypCrPEExPw_OMRJMNMOrYixTBZjwUi0H6ThGNxQOMt5mXhzvlVYRMdyChdmv4r2-JK-LX9yjBN8BWG78e3FYhWQCRERh5H3zNpdX1ln79QY38mhn-XJViA2vX-VCYqZhoUo-c_iR-_HZ3CLCHxRxgRHtT_oGXuX1Kegxo3F6FsuQ2Vj1WT5VjCRGCi71pY_lU_EROzkLdefS84fur4jBawvd1ccCf8u9U0kYy3xu0m02wNxKPe2Weg"
}
一旦我有了 token ,我指的是这个link并使用以下网址获取用户列表:
https://graph.microsoft.com/v1.0/users
并且还在 header 中传递 token ,但出现以下错误:
{
"error": {
"code": "InvalidAuthenticationToken",
"message": "CompactToken parsing failed with error code: 80049217",
"innerError": {
"request-id": "f03e6cc4-1888-406d-9ee4-2558b96e7fb4",
"date": "2019-06-03T09:22:30"
}
}
}
我现在是通过 postman 执行此操作,但稍后必须通过 python 脚本执行此操作。任何人都可以建议这里出了什么问题吗?谢谢
最佳答案
您似乎正在尝试使用 Microsoft Graph 获取用户列表
。为此,请参阅以下步骤:
Azure 门户权限:
转到您的 Azure 门户租户并在“API 权限”菜单上设置以下权限。请参阅下面的屏幕截图:
查看应用程序权限,如下所示:
对专用权限执行相同的操作。请参阅下面的专用权限
您的权限应如下所示:
token 请求:
使用您的凭据将请求发送到您的 token 端点。如下所示:
解码 token 并检查权限:
获得 token 后,请确保打开 https://jwt.io/
您的 token 包含所需的权限,如下所示:
请求用户列表
在此阶段,在类型
上添加您的 token 作为不记名 token
,将您的 token 粘贴到 token 文本框中,然后单击发送:
获取用户列表:
您将获得以下屏幕截图中指定的用户列表。
关于azure - 如何从azure graph API获取用户列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56424488/