【发布时间】:2020-06-15 22:07:51
【问题描述】:
我在 Azure AD 中有 2 个已注册的应用程序 - 一个是 webapi,它从 SendGrid 接收带有访问令牌的 webhook。另一个是 SendGrid 应用程序的注册,以便它可以使用客户端凭据授予请求令牌。已向 SendGrid 应用注册公开的 API 授予管理员许可。
在其服务器上的 SendGrid 的 webhook 配置中(该服务处于测试阶段),我们被要求提供 client_id、client_secret 和令牌端点。我们还配置了最终会发送令牌及其 webhook 数据的 web api 资源 url。
在 Azure 标识平台中,范围是必需的,但在 RFC 中是可选的。 SendGrid 不配置也不发送范围。所以这些实现似乎不能一起工作。
2 个问题:
- 如果您不向其他符合 RFC 的令牌端点发送范围,假设这意味着请求者可以被授权,但 jwt 对受众没有任何内容?
- 如果根据 RFC 范围不需要,资源服务器可以检查“这是为我设计的”吗?
我知道我们可以验证颁发者和任何额外的声明,但在 Azure AD、Auth0 文档等中最强调的验证之一是“受众”似乎很奇怪,但 RFC 允许令牌中缺少范围要求。 here 的答案之一再次强调了这一要求。
我想知道如果请求中缺少范围,是否可以在客户端应用程序注册清单中配置范围,但找不到任何类似的内容。
提前感谢您的见解。
【问题讨论】:
标签: oauth-2.0 azure-active-directory sendgrid sendgrid-api-v3