🏗️ OIDC 调整sub 为用户ID,preferred_username 为用户名,并新增 picture 字段

pull/37/head^2
smallbun 2023-08-29 20:36:46 +08:00
parent 0d1b731867
commit a2d03a1b62
1 changed files with 6 additions and 1 deletions

View File

@ -65,6 +65,8 @@ public class OAuth2TokenCustomizer implements
boolean hasCustomClaims=false; boolean hasCustomClaims=false;
OidcUserInfo.Builder userInfoBuilder = OidcUserInfo.builder(); OidcUserInfo.Builder userInfoBuilder = OidcUserInfo.builder();
// Customize headers/claims for id_token // Customize headers/claims for id_token
// 用户主体
userInfoBuilder.subject(user.getId().toString());
if (authorizedScopes.contains(EMAIL)) { if (authorizedScopes.contains(EMAIL)) {
hasCustomClaims=true; hasCustomClaims=true;
userInfoBuilder.email(StringUtils.defaultString(user.getEmail(), "")); userInfoBuilder.email(StringUtils.defaultString(user.getEmail(), ""));
@ -77,8 +79,11 @@ public class OAuth2TokenCustomizer implements
} }
if (authorizedScopes.contains(PROFILE)) { if (authorizedScopes.contains(PROFILE)) {
hasCustomClaims=true; hasCustomClaims=true;
userInfoBuilder.preferredUsername(StringUtils.defaultString(user.getFullName(), "")); //用户名
userInfoBuilder.preferredUsername(user.getUsername());
//昵称
userInfoBuilder.nickname(StringUtils.defaultString(user.getNickName(), "")); userInfoBuilder.nickname(StringUtils.defaultString(user.getNickName(), ""));
userInfoBuilder.picture(user.getAvatar());
userInfoBuilder.updatedAt(user.getUpdateTime().format(DEFAULT_DATE_TIME_FORMATTER)); userInfoBuilder.updatedAt(user.getUpdateTime().format(DEFAULT_DATE_TIME_FORMATTER));
} }
if (hasCustomClaims){ if (hasCustomClaims){