IAM对接调试
This commit is contained in:
@@ -161,7 +161,7 @@ public class IamSsoTokenGranter extends AuthorizationCodeGranter {
|
|||||||
.header(HttpHeaders.AUTHORIZATION, authorizationHeader())
|
.header(HttpHeaders.AUTHORIZATION, authorizationHeader())
|
||||||
.POST(HttpRequest.BodyPublishers.ofString(tokenBody, StandardCharsets.UTF_8))
|
.POST(HttpRequest.BodyPublishers.ofString(tokenBody, StandardCharsets.UTF_8))
|
||||||
.build();
|
.build();
|
||||||
log.info("IAM统一身份认证换取Token请求,method={}, headers={}, body={}", httpRequest.method(), maskHeaders(httpRequest.headers().map()), buildMaskTokenBody(tokenParams));
|
log.info("IAM统一身份认证换取Token请求,method={}, headers={}, body={}", httpRequest.method(), httpRequest.headers().map(), tokenBody);
|
||||||
HttpResponse<String> response = httpClient.send(
|
HttpResponse<String> response = httpClient.send(
|
||||||
httpRequest,
|
httpRequest,
|
||||||
HttpResponse.BodyHandlers.ofString(StandardCharsets.UTF_8)
|
HttpResponse.BodyHandlers.ofString(StandardCharsets.UTF_8)
|
||||||
@@ -188,7 +188,7 @@ public class IamSsoTokenGranter extends AuthorizationCodeGranter {
|
|||||||
.header(HttpHeaders.AUTHORIZATION, profileAuthorizationHeader(accessToken))
|
.header(HttpHeaders.AUTHORIZATION, profileAuthorizationHeader(accessToken))
|
||||||
.GET()
|
.GET()
|
||||||
.build();
|
.build();
|
||||||
log.info("IAM统一身份认证获取用户信息请求,headers={}, body={}", maskHeaders(httpRequest.headers().map()), "无");
|
log.info("IAM统一身份认证获取用户信息请求,headers={}, body={}", httpRequest.headers().map(), "无");
|
||||||
HttpResponse<String> response = httpClient.send(
|
HttpResponse<String> response = httpClient.send(
|
||||||
httpRequest,
|
httpRequest,
|
||||||
HttpResponse.BodyHandlers.ofString(StandardCharsets.UTF_8)
|
HttpResponse.BodyHandlers.ofString(StandardCharsets.UTF_8)
|
||||||
@@ -224,13 +224,6 @@ public class IamSsoTokenGranter extends AuthorizationCodeGranter {
|
|||||||
.collect(Collectors.joining("&"));
|
.collect(Collectors.joining("&"));
|
||||||
}
|
}
|
||||||
|
|
||||||
private String buildMaskTokenBody(Map<String, String> params) {
|
|
||||||
Map<String, String> maskParams = new LinkedHashMap<>(params);
|
|
||||||
maskParams.put("client_secret", "******");
|
|
||||||
maskParams.put("code", "******");
|
|
||||||
return buildTokenBody(maskParams);
|
|
||||||
}
|
|
||||||
|
|
||||||
private String buildProfileUrl(String accessToken) {
|
private String buildProfileUrl(String accessToken) {
|
||||||
String separator = properties.getProfileUrl().contains("?") ? "&" : "?";
|
String separator = properties.getProfileUrl().contains("?") ? "&" : "?";
|
||||||
return properties.getProfileUrl() + separator + "access_token=" + encode(accessToken);
|
return properties.getProfileUrl() + separator + "access_token=" + encode(accessToken);
|
||||||
@@ -253,12 +246,6 @@ public class IamSsoTokenGranter extends AuthorizationCodeGranter {
|
|||||||
return BEARER_PREFIX + accessToken;
|
return BEARER_PREFIX + accessToken;
|
||||||
}
|
}
|
||||||
|
|
||||||
private Map<String, java.util.List<String>> maskHeaders(Map<String, java.util.List<String>> headers) {
|
|
||||||
Map<String, java.util.List<String>> maskHeaders = new LinkedHashMap<>(headers);
|
|
||||||
maskHeaders.replaceAll((key, value) -> HttpHeaders.AUTHORIZATION.equalsIgnoreCase(key) ? java.util.List.of("******") : value);
|
|
||||||
return maskHeaders;
|
|
||||||
}
|
|
||||||
|
|
||||||
private String encode(String value) {
|
private String encode(String value) {
|
||||||
return URLEncoder.encode(value, StandardCharsets.UTF_8);
|
return URLEncoder.encode(value, StandardCharsets.UTF_8);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user