19 Star 149 Fork 75

monkeyk7 / MyOIDC

 / 详情

TOKEN 自定义信息怎么修改

待办的
创建于  
2021-04-07 16:32
{
  "alg": "RS256",
  "typ": "JWT",
  "kid": "myoidc-keyid"
}.{
  "sub": "admin",
  "user_name": "admin",
  "scope": [
    "server"
  ],
  "iss": "http://localhost:3000/",
  "exp": 1617805722,
  "iat": 1617762522,
  "authorities": [

这是生成的默认的 claim,我百度有个 enhance方法可以修改,但是不起作用、

/**
	 * 自定义token扩展链
	 *
	 * @return tokenEnhancerChain
	 */
	@Bean
	public TokenEnhancerChain tokenEnhancerChain() throws Exception {
		TokenEnhancerChain tokenEnhancerChain = new TokenEnhancerChain();
		tokenEnhancerChain.setTokenEnhancers(Arrays.asList(new CustomTokenEnhancer(), accessTokenConverter()));
		return tokenEnhancerChain;
	}


	@Override
	public void configure(AuthorizationServerEndpointsConfigurer endpoints) throws Exception {
		endpoints
				.allowedTokenEndpointRequestMethods(HttpMethod.GET, HttpMethod.POST)
				.tokenStore(tokenStore())
				.accessTokenConverter(accessTokenConverter())
				.tokenEnhancer(tokenEnhancerChain())  //这里执行上面的enhance方法

你的 MyOIDCJwtAccessTokenConverter 中的 这个方法是不是也可以啊

@Override
    public OAuth2AccessToken enhance(OAuth2AccessToken accessToken, OAuth2Authentication authentication) {
        OAuth2AccessToken enhanceToken = super.enhance(accessToken, authentication);

        //if have openid, add id_token
        if (authentication.getOAuth2Request().getScope().contains(OIDCUtils.SCOPE_OPENID)) {
            ImmutableMap<String, String> extHeader = ImmutableMap.of(
                    KEY_ID, publicJsonWebKey.getKeyId());
            String idToken = encodeWithHeader(accessToken, authentication, extHeader);
            enhanceToken.getAdditionalInformation().put(ID_TOKEN, idToken);
            if (LOG.isDebugEnabled()) {
                LOG.debug("{}|Added id_token: {} to accessToken: {}", WebUtils.getIp(), idToken, enhanceToken);
            }
        }

        return enhanceToken;
    }

评论 (1)

yang872546 创建了任务
yang872546 关联仓库设置为monkeyk7/MyOIDC
展开全部操作日志

可以扩展,提供的实现中是参考,可以根据自己需要修改claims里的内容 。

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(2)
7238 mkk 1578914473
Java
1
https://gitee.com/mkk/MyOIDC.git
git@gitee.com:mkk/MyOIDC.git
mkk
MyOIDC
MyOIDC

搜索帮助