我有:
因此,我在/ userinfo端点中完成了此逻辑,当客户端收到访问令牌时(从客户端,重定向到UAA,从UAA重定向到OIDC进行AUTH,然后再次返回该令牌,然后将此令牌发送到客户端,现在客户可以获取令牌并要求/ userinfo,然后将具有用户角色)
这是不好的逻辑吗?是否应该以某种方式在访问令牌中添加LDAP实现(步骤4)?
答案 0 :(得分:0)
真的,这取决于设计问题,通常要视情况而定。
要记住的关键是OIDC及其关联的id_token
用于身份验证。 /userinfo
响应通常会声明有关用户身份的声明。用户身份的一部分可能是他们的角色。
OAuth及其关联的access_token
用于授权。访问令牌通常会声明有关授权客户端执行操作的声明。客户端可能执行的操作可能与用户的角色不同。
考虑此客户将需要做出哪些决定。它可以根据从/userinfo
响应中推断出的角色来做出选择,例如可以显示其页面。
考虑此客户端将与之通信的内容。也许它将与资源服务器通信。如果客户端通过了登录期间获得的access_token
,则该令牌应指示客户端有权执行的操作。