【发布时间】:2014-12-23 14:55:01
【问题描述】:
我有一个在 WSO2 Identity Server 5.0.0 中运行的自定义 UserStoreManager 作为辅助用户存储。
它非常适合验证用户。
当将其与 OpenID Connect 身份验证一起使用时,预期的声明不会在 /userinfo?schema=openid 请求的响应中返回给客户端。
登录自定义 UserStoreManager 显示方法 getUserPropertyValues() 使用以下声明名称调用:
["postalcode", "mail", "localityName", "sn", "cn", "nickName", "telephoneNumber", "gender", "givenName", "url", "country"]
对/userinfo 请求的响应实际上只返回该列表中的声明。无法退回其他索赔。
我不明白这个列表的来源。为“http://wso2.org/oidc/claim”配置的声明映射将例如“邮政编码”定义为“默认支持=false”和“必需=false”。 所以我不希望它出现在列表中。另一方面声称“sub”(或它映射到的名称:“uid”)不在列表中,但它在方言“http://wso2.org/oidc/claim”中的定义是
- 声明 Uri: sub
- 映射属性:uid
- 默认支持:true
- 必填:真
此外,“sub”是 OIDC 规范定义的必需声明(请参阅 http://openid.net/specs/openid-connect-core-1_0.html#UserInfoResponse)。
对于成功通过身份验证的用户,/userinfo?schema=openid 请求应返回的声明列表可以定义在哪里?
【问题讨论】:
标签: wso2is