OpenID配置文件中始终询问且未返回的必填服务提供商声明 [英] Mandatory service provider claims always asked and not returned in openid profile

查看:5
本文介绍了OpenID配置文件中始终询问且未返回的必填服务提供商声明的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经向http://wso2.org/claims方言添加了一个名为http://wso2.org/claims/fg_imprenditore的本地自定义声明,并将其映射到一个自定义主用户存储属性(JDBC用户存储)上。 自定义声明显示在用户配置文件中,我可以正确设置/更新值。

我已经定义了一个新的服务提供者,并在声明配置->使用本地声明方言中添加了自定义声明。

此外,我还编辑了/_system/config/oidc,并修改了OpenID属性以包括新的声明,如下所示:Sub,...,Street,http://wso2.org/claims/fg_imprenditore

现在的问题是。 我通过以下请求从一个Java脚本客户端请求一个JWT令牌: Http://**********/?response_type=id_token&;client_id="+"f8SatEWpyi1qvPLVspsDfTbefm0a"+"&;Scope=OpenID&;重定向_URI=http://localhost:3000/oauth_callback.html&nonce="+随机数

登录后,WSO2is服务器会提示以下消息(即使该属性已经存在于配置文件中):您正在尝试登录到*应用程序,但它需要在用户配置文件中填写以下信息。您可以填写下面的选项,然后继续进行身份验证。但建议您在您的身份提供商配置文件中填写这些信息,以避免每次登录时执行此步骤。

如果我(正确地)填写了标签为"http://wso2.org/claims/fg_imprenditore"的字段,我就可以继续。在任何情况下,声明都不会在JWT令牌中返回。

此外,如果我进入用户配置文件,则属性设置正确(使用新值!)但如果我尝试再次进行身份验证,则需要再次填充该属性。

非常感谢您的支持。

推荐答案

发生这种情况是因为"http://wso2.org/claims/fg_imprenditore"声明没有映射到WSO2IS中的任何oidc声明。在解决问题中执行以下操作。

  1. 转到IS管理控制台主选项卡中的声明下的列表。
  2. 单击http://wso2.org/oidc/claim
  3. 使用oidc声明方言添加名为fg_imprenditore的新声明。您将看到一个下拉列表,以选择"Mated Local Claim"。将其映射到http://wso2.org/claims/fg_imprenditore。(请查看this中的"添加外部索赔"部分)
  4. 保存新的oidc声明,然后重试。

这篇关于OpenID配置文件中始终询问且未返回的必填服务提供商声明的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆