[SCB-1343]minor code condition check improvements
diff --git a/api/authentication-server/endpoint/src/main/java/org/apache/servicecomb/authentication/server/PasswordTokenGranter.java b/api/authentication-server/endpoint/src/main/java/org/apache/servicecomb/authentication/server/PasswordTokenGranter.java
index 45c8ca2..bb32d48 100644
--- a/api/authentication-server/endpoint/src/main/java/org/apache/servicecomb/authentication/server/PasswordTokenGranter.java
+++ b/api/authentication-server/endpoint/src/main/java/org/apache/servicecomb/authentication/server/PasswordTokenGranter.java
@@ -19,6 +19,7 @@
import java.util.Map;
+import org.apache.commons.lang3.StringUtils;
import org.apache.servicecomb.authentication.token.AbstractOpenIDTokenStore;
import org.apache.servicecomb.authentication.token.OpenIDToken;
import org.apache.servicecomb.authentication.util.CommonConstants;
@@ -26,6 +27,7 @@
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UserDetailsService;
+import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Component;
@@ -50,12 +52,20 @@
String username = parameters.get(AuthenticationServerConstants.PARAM_USERNAME);
String password = parameters.get(AuthenticationServerConstants.PARAM_PASSWORD);
- UserDetails userDetails = userDetailsService.loadUserByUsername(username);
- if (passwordEncoder.matches(password, userDetails.getPassword())) {
- OpenIDToken openIDToken = openIDTokenStore.createToken(userDetails);
- openIDTokenStore.saveToken(openIDToken);
- return TokenResponse.fromOpenIDToken(openIDToken);
- } else {
+ if (StringUtils.isEmpty(username) || StringUtils.isEmpty(password)) {
+ return null;
+ }
+
+ try {
+ UserDetails userDetails = userDetailsService.loadUserByUsername(username);
+ if (passwordEncoder.matches(password, userDetails.getPassword())) {
+ OpenIDToken openIDToken = openIDTokenStore.createToken(userDetails);
+ openIDTokenStore.saveToken(openIDToken);
+ return TokenResponse.fromOpenIDToken(openIDToken);
+ } else {
+ return null;
+ }
+ } catch (UsernameNotFoundException e) {
return null;
}
}
diff --git a/api/authentication-server/endpoint/src/main/java/org/apache/servicecomb/authentication/server/RefreshTokenTokenGranter.java b/api/authentication-server/endpoint/src/main/java/org/apache/servicecomb/authentication/server/RefreshTokenTokenGranter.java
index 77a9f98..a18bd2d 100644
--- a/api/authentication-server/endpoint/src/main/java/org/apache/servicecomb/authentication/server/RefreshTokenTokenGranter.java
+++ b/api/authentication-server/endpoint/src/main/java/org/apache/servicecomb/authentication/server/RefreshTokenTokenGranter.java
@@ -19,6 +19,7 @@
import java.util.Map;
+import org.apache.commons.lang3.StringUtils;
import org.apache.servicecomb.authentication.token.AbstractOpenIDTokenStore;
import org.apache.servicecomb.authentication.token.OpenIDToken;
import org.apache.servicecomb.authentication.token.Token;
@@ -57,6 +58,10 @@
public TokenResponse grant(Map<String, String> parameters) {
String refreshTokenValue = parameters.get(AuthenticationServerConstants.PARAM_REFRESH_TOKEN);
+ if (StringUtils.isEmpty(refreshTokenValue)) {
+ return null;
+ }
+
Token refreshToken = openIDTokenStore.readTokenByRefreshTokenValue(refreshTokenValue);
if (refreshToken != null && !refreshToken.isExpired()) {
diff --git a/api/edge-service/endpoint/src/main/java/org/apache/servicecomb/authentication/edge/TokenEndpoint.java b/api/edge-service/endpoint/src/main/java/org/apache/servicecomb/authentication/edge/TokenEndpoint.java
index 8718a0c..578f71a 100644
--- a/api/edge-service/endpoint/src/main/java/org/apache/servicecomb/authentication/edge/TokenEndpoint.java
+++ b/api/edge-service/endpoint/src/main/java/org/apache/servicecomb/authentication/edge/TokenEndpoint.java
@@ -26,7 +26,6 @@
import org.apache.servicecomb.provider.rest.common.RestSchema;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -47,9 +46,6 @@
public CompletableFuture<TokenResponse> getToken(@RequestBody Map<String, String> parameters) {
CompletableFuture<TokenResponse> result = new CompletableFuture<>();
- HttpHeaders headers = new HttpHeaders();
- headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
-
CompletableFuture<TokenResponse> response =
authenticationSererTokenEndpoint.getToken(parameters);
response.whenComplete((tokenResonse, ex) -> {