我在wso2身份服务器中设置了SP,并且能够使用playground在auth2中获取access_token。 参考:https://docs.wso2.com/display/IS510/OAuth+2.0+with+WSO2+Playground
然后我访问了userinfo端点,如:
curl -k -H "Authorization: Bearer 603b0a91-0354-3b64-90e9-0eb1fdd8f162" https://localhost:9443/oauth2/userinfo?schema=openid
我总是得到JSON:
{"sub":"admin@carbon.super"}
但默认情况下还应该有其他属性,如名字,姓氏,电子邮件等。如何配置服务器以返回所有这些信息?
P.S尝试IS 5.1和5.2
答案 0 :(得分:7)
对于范围openid,UserInfo Endpoint返回声明的逻辑似乎只是在OIDC文件中配置的声明和在SP级别中配置的声明的交集。基于这种逻辑,我能够通过以下步骤解决这个问题。
查看http://wso2.org/oidc/claim方言电子邮件声明的声明Uri 和映射属性的值
现在请求
curl -k -H "Authorization: Bearer 8b2805a7-5b74-33ee-84df-2a8c53a16f6c" https://localhost:9443/oauth2/userinfo?schema=openid
你会得到回应
{"sub":"admin@carbon.super","email":"admin@wso2.com"}
答案 1 :(得分:1)
您所面临的问题似乎在[1]中有所报道。问题最初是针对IS 5.1.0报告的,5.2.0版本中存在一些不一致之处。根据jira,这将在5.3.0版本中修复,该版本计划很快发布。