Microsoft Graph API - 列出用户登录的所有权限/范围

问题描述 投票:1回答:1

我在https://apps.dev.microsoft.com有多个应用程序,用户使用我们网站上的Microsoft帐户登录。每个都需要不同的权限/范围集,例如一些只需要User.Read但有些需要Directory.Read.Alloffline_access等。

有没有办法查询Microsoft Graph API以获取用户登录的所有权限/范围(=同意)?

例如GET https://graph.microsoft.com/beta/currentPermissions

目标是了解是否允许为应用程序上的用户运行特定的API调用。这样可以防止无用的API调用

{
    "code": "Authorization_RequestDenied",
    "message": "Insufficient privileges to complete the operation."
}

响应。

浏览文档没有结果。

permissions microsoft-graph
1个回答
1
投票

如果用户使用工作或学校帐户(Azure AD)登录,您只需查看访问令牌内部以查看User.Read或Files.ReadWrite等权限列表。要在编码之前看到这一点,有像https://jwt.io/这样的工具,你可以给它们你的令牌(只用测试帐户,而不是真实账户),你可以看到令牌中的值(“声明”)。

要在代码中执行此操作,每种语言都有JWT解码库。我不确定你的编程是什么,所以只需搜索GitHub / Google,我相信你会看到很多可用的JWT库。

© www.soinside.com 2019 - 2024. All rights reserved.