首页 > 解决方案 > 来自 SPA 的 Azure AD 代码授权?

问题描述

Azure AD 是否支持来自 SPA 应用的代码授权?我已经构建了使用针对 AAD 的隐式流的 SPA 应用程序,它们工作得很好。需要注意的是,如果我们尝试在 jwt 令牌中获得组成员资格,您最多只能获得“组”声明中列出的 5 个组,否则 jwt 包含“hasGroups”声明(几乎没有价值)。

我遇到了一些在线文章(目前我似乎无法找到),其中指出组声明的上限为 5,以防止超过 url 最大值,因为在 url 中放置了超大的访问权限或 id 令牌,并且代码授权将允许 jwt 中的无限组,因为该请求通过 http 帖子进行。

两个问题:

  1. 看来我无法从 SPA 进行代码授权,因为 AAD 令牌端点不支持 CORS。真的吗?这是为什么?微软似乎承认 JS/SPA 应用程序不是一等公民。我还尝试从客户端应用程序从 AAD 获取公钥,并发现该端点上也缺少 CORS。
  2. 代码授权是否可以让超过 5 个组重新嵌入到 jwt 中?

标签: azureazure-active-directory

解决方案


推荐阅读