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

zhongjiajie pushed a commit to branch 3.2.0-release
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git

commit 6c1d14dcfe4a44c3edc99404c270a3096254f96d
Author: gaopeng <[email protected]>
AuthorDate: Thu Sep 7 19:56:38 2023 +0800

    [Fix-14811][fix] Fix when using Casdoor SSO, ldap, OAuth2 to log in, the 
tenant problem of not specifying the currently logged in user (#14812)
    
    (cherry picked from commit 5062aa12dae1c725d415205e360a9b59a23f9a6e)
---
 .../org/apache/dolphinscheduler/api/controller/LoginController.java    | 3 ++-
 .../org/apache/dolphinscheduler/api/service/impl/UsersServiceImpl.java | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git 
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/LoginController.java
 
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/LoginController.java
index e03cafe0dc..f3d6b15087 100644
--- 
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/LoginController.java
+++ 
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/LoginController.java
@@ -32,6 +32,7 @@ import org.apache.dolphinscheduler.api.service.SessionService;
 import org.apache.dolphinscheduler.api.service.UsersService;
 import org.apache.dolphinscheduler.api.utils.Result;
 import org.apache.dolphinscheduler.common.constants.Constants;
+import org.apache.dolphinscheduler.common.enums.UserType;
 import org.apache.dolphinscheduler.common.utils.JSONUtils;
 import org.apache.dolphinscheduler.common.utils.OkHttpUtils;
 import org.apache.dolphinscheduler.dao.entity.User;
@@ -244,7 +245,7 @@ public class LoginController extends BaseController {
             String username = JSONUtils.getNodeString(userInfoJsonStr, 
"login");
             User user = usersService.getUserByUserName(username);
             if (user == null) {
-                user = usersService.createUser(username, null, null, 0, null, 
null, 1);
+                user = usersService.createUser(UserType.GENERAL_USER, 
username, null);
             }
             String sessionId = sessionService.createSession(user, null);
             if (sessionId == null) {
diff --git 
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/UsersServiceImpl.java
 
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/UsersServiceImpl.java
index 27f8e5f8ef..f75a8ab8db 100644
--- 
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/UsersServiceImpl.java
+++ 
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/UsersServiceImpl.java
@@ -224,7 +224,7 @@ public class UsersServiceImpl extends BaseServiceImpl 
implements UsersService {
     }
 
     /***
-     * create User for ldap and sso login
+     * create User for ldap、Casdoor SSO and OAuth2.0 login
      */
     @Override
     @Transactional
@@ -238,6 +238,7 @@ public class UsersServiceImpl extends BaseServiceImpl 
implements UsersService {
         user.setUserType(userType);
         user.setCreateTime(now);
         user.setUpdateTime(now);
+        user.setTenantId(-1);
         user.setQueue("");
         user.setState(Flag.YES.getCode());
 

Reply via email to