Azure AD不发送ID或访问令牌中的声明信息

7fyelxc5  于 2022-12-19  发布在  其他
关注(0)|答案(1)|浏览(127)

我正在尝试使用OpenID Connect v1.0协议将Azure ActiveDirectory与Keycloak连接。
我连接了Keycloak,我可以在Keycloak中使用azure帐户登录,但我无法向我的idaccess tokens传递任何可选声明。它们只有标准字段。在前端,我在登录后检查/token路径。
在我的清单中,我在两个令牌中都看到了可选声明。我在安全选项卡上给出了所有可能的声明访问权限,但都没有成功。
你能给予我一个提示吗,我怎么解决这个问题?我应该看/检查什么?我需要将角色/组从Azure帐户转移到我的Keycloak并Map它们。

3pmvbmvn

3pmvbmvn1#

对于ID令牌或访问令牌中存在的可选声明或属性,
检查Azure AD中为应用程序添加的可选声明。

在keycloak中,创建Map器以反映在Id令牌或访问令牌中。

  • 在keycloak的领域中,转到 Jmeter 板中的Clients并选择您的客户端。
  • 导航至“Map器”标签并点击“创建”。

例如,对于不同的身份提供者,Map器类型可以是“用户属性”或属性导入器。
如果选中该选项,则填写用户在进行身份验证时实际拥有的属性名称,并选择适当的选项(如果要将其包含在ID令牌、访问令牌和用户信息中)。

如果从另一IDPMap,即:此处为Azure AD

引用此sample for okta

例如,如果在AzureAD中为可选声明选择upn:

从**Identiy Providers刀片中,选择mappers并使用*attribute importer***作为Map器类型。


参考文献:

  1. Server Administration Guide -protocol mappers (keycloak.org)
  2. azure-ad-as-oidc-identity-provider-in-keycloak | | StackOverflow

相关问题