我可以通过点击https://localhost:9443/oauth2/token从WSO2 5.2获得id_token

可以通过将本地声明映射到开放ID中的OIDC声明来自定义id_token .

例如,我可以在WSO2的JWT令牌中添加角色 . 但是,我无法让WSO2用户在令牌中显示出来 .

{
  "at_hash": "VFjcb6kEgMrXIemmg7AAMQ",
  "sub": "kramercecret",
  "iss": "https://a2d92f278368:9443/oauth2/token",
  "preferred_username": "Pikachu Jigglpuff",
  "given_name": "Pikachu Jigglpuff",
  "aud": [
    "3j8Bf3bx_mdLagZgTjaZUeDHjAoa"
  ],
  "azp": "3j8Bf3bx_mdLagZgTjaZUeDHjAoa",
  "auth_time": 1467078553,
  "scope": [
    "Internal/everyone",
    "Approver"
  ],
  "name": "Pikachu Jigglpuff",
  "exp": 1467082172,
  "iat": 1467078572,
  "email": "pikachu.jigglypuff@yahoo.com"
}

有没有人这样做过?

这样做的目的是访问ID_Token中的用户名,让spring安全性解码JWT令牌,然后将用户名存储在数据库中 .

非常感谢你 .