OIDC接口优化 #I4VFYD

This commit is contained in:
MaxKey
2022-02-27 21:32:36 +08:00
parent 933780d082
commit 545e2c1a96
10 changed files with 67 additions and 55 deletions

View File

@@ -17,6 +17,8 @@
package org.maxkey.util;
import javax.servlet.http.HttpServletRequest;
import org.maxkey.crypto.Base64Utils;
/**
@@ -25,7 +27,14 @@ import org.maxkey.crypto.Base64Utils;
*/
public class AuthorizationHeaderUtils {
public static final String AUTHORIZATION_HEADERNAME = "Authorization";
/**
* first UpperCase
*/
public static final String HEADER_Authorization = "Authorization";
/**
* first LowerCase
*/
public static final String HEADER_authorization = "authorization";
public static String createBasic(String username, String password) {
String authUserPass = username + ":" + password;
@@ -34,7 +43,7 @@ public class AuthorizationHeaderUtils {
}
public static AuthorizationHeaderCredential resolve(String authorization) {
if (isBasic(authorization)) {
if (StringUtils.isNotBlank(authorization) && isBasic(authorization)) {
String decodeUserPass = Base64Utils.decode(authorization.split(" ")[1]);
String []userPass =decodeUserPass.split(":");
return new AuthorizationHeaderCredential(userPass[0],userPass[1]);
@@ -56,10 +65,10 @@ public class AuthorizationHeaderUtils {
}
public static String resolveBearer(String bearer) {
if (isBearer(bearer)) {
if (StringUtils.isNotBlank(bearer) && isBearer(bearer)) {
return bearer.split(" ")[1];
} else {
return null;
return bearer;
}
}
@@ -70,5 +79,15 @@ public class AuthorizationHeaderUtils {
return false;
}
}
public static String resolveBearer(HttpServletRequest request) {
String authorization =
StringUtils.isNotBlank(request.getHeader(HEADER_Authorization)) ?
request.getHeader(HEADER_Authorization) : request.getHeader(HEADER_authorization);
if(StringUtils.isNotBlank(authorization)) {
return resolveBearer(authorization);
}
return null;
}
}