OpenID规范5.5解释RP可以使用声明请求参数请求声明。 http://openid.net/specs/openid-connect-core-1_0.html#ClaimsParameter
此功能的目的是什么?
此功能是否会因用户能够设置声明而产生安全漏洞?
例如,用户可以将浏览器上的URL修改为:
https://op.example.com/authorize?
response_type=code
&client_id=client
&redirect_uri=https://client.example.com
&scope=openid
&claims={“userinfo” : {“sub”: { “value” : “superuser”}} , “id_token” : {“sub”: { “value” : “superuser” }}}
如果OP实现此功能,则OP会将声明置于id令牌和用户信息中。
答案 0 :(得分:1)
此功能的目的是请求可能具有特定期望值的声明。这并不意味着RP能够设置索赔值。相反,OP应该验证哪些请求的声明和值与经过身份验证的用户匹配,并仅返回那些有效的声明。