Azure active directory Graph API的Azure API权限
上下文 对于一个需要使用私有Azure API的情况,让我们称之为MYTESTAPI。MYTESTAPI包含几个作用域,因此它能够访问我们的.net核心API。这非常有效,因为我正在通过以下方式发出令牌请求:Azure active directory Graph API的Azure API权限,azure-active-directory,microsoft-graph-api,openid-connect,azure-api-apps,Azure Active Directory,Microsoft Graph Api,Openid Connect,Azure Api Apps,上下文 对于一个需要使用私有Azure API的情况,让我们称之为MYTESTAPI。MYTESTAPI包含几个作用域,因此它能够访问我们的.net核心API。这非常有效,因为我正在通过以下方式发出令牌请求: api://{clientid}/mytestapi.scope 我正在取回一个令牌,用这个令牌我可以访问我们的API。我有一个带有外部库的Angular客户端,名为Angular oauth oidc客户端。当我使用(不推荐)隐式流和静默更新时,它一直工作到扩展 现在我已经设置了Ang
api://{clientid}/mytestapi.scope
我正在取回一个令牌,用这个令牌我可以访问我们的API。我有一个带有外部库的Angular客户端,名为Angular oauth oidc客户端。当我使用(不推荐)隐式流和静默更新时,它一直工作到扩展
现在我已经设置了Angular应用程序,所以我正在通过Azure广告连接到我们的私有API。但问题是,我也需要获取用户信息。这来自https://graph.microsoft.com/oidc/userinfo'. 所以我试着添加:openid,profile到scopes中,这样我就可以使用graphapi来获取基本的概要信息
scopes: 'openid profile api://{clientid}/mytestapi.scope'
当我解码生成的令牌时,我没有看到添加到“scp”部分的openid或概要文件。userinfo请求返回401:Unauthorized。似乎我需要在Azure Portal中配置一些东西来实现这一点
我可能的解决方案是以“mytestapi.scope”将授予访问graph API部分的权限的方式配置azure API
请随意询问任何必要的上下文或问题
问题:
- 甚至有可能向私有API授予图形权限吗?如果有,建议这样做还是有更好的解决方案?如何解决
这绝对是一个受支持的场景,使用起来非常安全。至于客户端,您也可以获得graph的作用域,我只是相信,当您在获取访问令牌时重新测试作用域时,一次只能请求一个API的作用域。您可以一次获得多个图形作用域,但不能在同一请求下获得一个图形作用域和一个私有api作用域 Alphaz18的答案是正确的,因此将其标记为已接受的答案:
- 自定义API中的调用图API
- 从用户界面调用的自定义API公开API端点