新增 mode4ReturnAccessToken 配置,指定模式4是否返回 AccessToken 字段

This commit is contained in:
click33
2024-08-24 04:27:29 +08:00
parent 06b06cdb5e
commit 760805f78c
3 changed files with 50 additions and 1 deletions

View File

@@ -72,6 +72,9 @@ public class SaOAuth2ServerConfig implements Serializable {
/** 指定低级权限,多个用逗号隔开 */
public String lowerScope;
/** 模式4是否返回 AccessToken 字段 */
public Boolean mode4ReturnAccessToken = false;
/**
* oidc 相关配置
*/
@@ -292,6 +295,21 @@ public class SaOAuth2ServerConfig implements Serializable {
return this;
}
/**
* @return mode4ReturnAccessToken
*/
public Boolean getMode4ReturnAccessToken() {
return mode4ReturnAccessToken;
}
/**
* @param mode4ReturnAccessToken 要设置的 mode4ReturnAccessToken
*/
public SaOAuth2ServerConfig setMode4ReturnAccessToken(Boolean mode4ReturnAccessToken) {
this.mode4ReturnAccessToken = mode4ReturnAccessToken;
return this;
}
/**
* 获取 oidc 相关配置
*
@@ -346,6 +364,7 @@ public class SaOAuth2ServerConfig implements Serializable {
", openidDigestPrefix='" + openidDigestPrefix +
", higherScope='" + higherScope +
", lowerScope='" + lowerScope +
", mode4ReturnAccessToken='" + mode4ReturnAccessToken +
", oidc='" + oidc +
'}';
}

View File

@@ -141,7 +141,10 @@ public class SaOAuth2DataResolverDefaultImpl implements SaOAuth2DataResolver {
Map<String, Object> map = new LinkedHashMap<>();
map.put("token_type", ct.tokenType);
map.put("client_token", ct.clientToken);
// map.put("access_token", ct.clientToken); // 兼容 OAuth2 协议
// 兼容 OAuth2 协议
if(SaOAuth2Manager.getServerConfig().mode4ReturnAccessToken) {
map.put("access_token", ct.clientToken);
}
map.put("expires_in", ct.getExpiresIn());
map.put("client_id", ct.clientId);
map.put("scope", SaOAuth2Manager.getDataConverter().convertScopeListToString(ct.scopes));