This is an automated email from the ASF dual-hosted git repository.

qiaojialin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/master by this push:
     new 1c78fa2  fix nullpointer exception if no password is set when login 
(#1975)
1c78fa2 is described below

commit 1c78fa2b16c57d1d2291248494f307a85c0694f9
Author: Xiangdong Huang <[email protected]>
AuthorDate: Sat Nov 7 15:45:20 2020 +0800

    fix nullpointer exception if no password is set when login (#1975)
---
 .../org/apache/iotdb/db/auth/authorizer/BasicAuthorizer.java   |  2 +-
 .../main/java/org/apache/iotdb/db/service/TSServiceImpl.java   | 10 +++++-----
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git 
a/server/src/main/java/org/apache/iotdb/db/auth/authorizer/BasicAuthorizer.java 
b/server/src/main/java/org/apache/iotdb/db/auth/authorizer/BasicAuthorizer.java
index fa28241..d162a04 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/auth/authorizer/BasicAuthorizer.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/auth/authorizer/BasicAuthorizer.java
@@ -102,7 +102,7 @@ public abstract class BasicAuthorizer implements 
IAuthorizer, IService {
   @Override
   public boolean login(String username, String password) throws AuthException {
     User user = userManager.getUser(username);
-    return user != null && 
user.getPassword().equals(AuthUtils.encryptPassword(password));
+    return user != null && password != null && 
user.getPassword().equals(AuthUtils.encryptPassword(password));
   }
 
   @Override
diff --git 
a/server/src/main/java/org/apache/iotdb/db/service/TSServiceImpl.java 
b/server/src/main/java/org/apache/iotdb/db/service/TSServiceImpl.java
index 595f59e..8c8aca9 100644
--- a/server/src/main/java/org/apache/iotdb/db/service/TSServiceImpl.java
+++ b/server/src/main/java/org/apache/iotdb/db/service/TSServiceImpl.java
@@ -245,18 +245,18 @@ public class TSServiceImpl implements TSIService.Iface, 
ServerContext {
       sessionIdUsernameMap.put(sessionId, req.getUsername());
       sessionIdZoneIdMap.put(sessionId, ZoneId.of(req.getZoneId()));
       currSessionId.set(sessionId);
+      auditLogger.info("User {} opens Session-{}", req.getUsername(), 
sessionId);
+      logger.info(
+          "{}: Login status: {}. User : {}", IoTDBConstant.GLOBAL_DB_NAME, 
tsStatus.message,
+          req.getUsername());
     } else {
       tsStatus = RpcUtils.getStatus(TSStatusCode.WRONG_LOGIN_PASSWORD_ERROR,
           loginMessage != null ? loginMessage : "Authentication failed.");
+      auditLogger.info("User {} opens Session failed with an incorrect 
password", req.getUsername());
     }
-    auditLogger.info("User {} opens Session-{}", req.getUsername(), sessionId);
     TSOpenSessionResp resp = new TSOpenSessionResp(tsStatus,
         CURRENT_RPC_VERSION);
     resp.setSessionId(sessionId);
-    logger.info(
-        "{}: Login status: {}. User : {}", IoTDBConstant.GLOBAL_DB_NAME, 
tsStatus.message,
-        req.getUsername());
-
     return resp;
   }
 

Reply via email to