azure-active-directory - azure 中的自定义 OAuth 范围
问题描述
通读:https ://www.rfc-editor.org/rfc/rfc6749#section-3.3试图了解范围。根据规范,范围是在身份验证服务器中定义的,但不需要绑定到单个应用程序(我在推断)。当我使用 Azure 时,自定义范围似乎与应用注册(我的 API)相关联。是这种情况还是我错过了什么?有没有办法定义不绑定到应用程序(或多个应用程序)的范围。
例如,Directory.Read.All 范围,我可以想象在资源服务器后面托管的多个 API 实现图形中的所有目录服务(不是一个?)
范围对我来说是一个模糊的概念,所以如果我的问题没有意义,我深表歉意。
解决方案
当我使用 Azure 时,自定义范围似乎与应用注册(我的 API)相关联。是这种情况还是我错过了什么?有没有办法定义不绑定到应用程序(或多个应用程序)的范围。
获取令牌时,必须指定scope
值。正如您所想的,您的自定义范围实际上就是您公开受 Azure 保护的应用程序。通常它被用作后端应用程序。当您使用前端应用程序访问它时,您必须指定后端应用程序的范围。通常是:api://{back-end app client api}/scope name
Directory.Read.All 范围,我可以想象在资源服务器后面托管的多个 API 在图中实现所有目录服务(不是一个?)
不,这不像你想的那样。您应该将要访问的api放在范围内。例如,如果你想访问 MS graph api,你可以把https://graph.microsoft.com/.default
. 如果要访问自定义 api,可以输入api://{back-end app client api}/scope name
.
访问令牌是根据你要访问的api受众发放的,是唯一的!见:这里。
推荐阅读
- visual-studio-2019 - Visual Studio 2019 中缺少 Net Standard 2.1 定位
- ios - 我如何将两个 branch.io 深层链接与单个应用程序集成
- java - 如何避免 JSONObject Null 检查
- windows - 从 Windows 上的文件路径打开文件
- python - 如何读取格式为 [[xxx],[yyy]] 的行的 .txt 文件,以便直接访问 [xxx] 和 [yyy]?
- resize - 在codeigniter 3中调整图像大小不起作用
- api - 从控制器外部访问属性
- powershell - 无法使用 continue 语句跳过 foreach-object 中的第一次迭代。请建议
- python - 如何合并动态数据框
- flutter - 如何在更改 ListView 或 ListWheelScrollView 的项目时实现轻微的声音