forked from github/dataease
Merge pull request #887 from dataease/pr@dev@fix_ldap_validate
fix: 修复ldap用户重复验证
This commit is contained in:
commit
49f8c0e335
@ -70,12 +70,12 @@ public class AuthServer implements AuthApi {
|
||||
DataEaseException.throwException(validateResult.getMsg());
|
||||
}
|
||||
XpackLdapUserEntity ldapUserEntity = validateResult.getData();
|
||||
SysUserEntity user = authUserService.getUserByName(username);
|
||||
SysUserEntity user = authUserService.getLdapUserByName(username);
|
||||
if(ObjectUtils.isEmpty(user) || ObjectUtils.isEmpty(user.getUserId())) {
|
||||
LdapAddRequest ldapAddRequest = new LdapAddRequest();
|
||||
ldapAddRequest.setUsers(new ArrayList<XpackLdapUserEntity>(){{add(ldapUserEntity);}});
|
||||
ldapAddRequest.setEnabled(1L);
|
||||
ldapAddRequest.setDeptId(1L);
|
||||
// ldapAddRequest.setDeptId(1L);
|
||||
ldapAddRequest.setRoleIds(new ArrayList<Long>(){{add(2L);}});
|
||||
sysUserService.validateExistUser(ldapUserEntity.getUserName(), ldapUserEntity.getEmail());
|
||||
sysUserService.saveLdapUsers(ldapAddRequest);
|
||||
|
@ -13,6 +13,8 @@ public interface AuthUserService {
|
||||
|
||||
SysUserEntity getUserByName(String username);
|
||||
|
||||
SysUserEntity getLdapUserByName(String username);
|
||||
|
||||
SysUserEntity getUserBySub(String sub);
|
||||
|
||||
List<String> roles(Long userId);
|
||||
|
@ -52,6 +52,12 @@ public class AuthUserServiceImpl implements AuthUserService {
|
||||
return authMapper.findUserByName(username);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public SysUserEntity getLdapUserByName(String username) {
|
||||
return authMapper.findLdapUserByName(username);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysUserEntity getUserBySub(String sub) {
|
||||
return authMapper.findUserBySub(sub);
|
||||
|
@ -25,6 +25,8 @@ public interface AuthMapper {
|
||||
|
||||
SysUserEntity findUserByName(@Param("username") String username);
|
||||
|
||||
SysUserEntity findLdapUserByName(@Param("username") String username);
|
||||
|
||||
SysUserEntity findUserBySub(@Param("sub") String sub);
|
||||
|
||||
|
||||
|
@ -28,6 +28,10 @@
|
||||
select user_id, username,nick_name, dept_id, password, enabled,email, phone, language ,is_admin from sys_user where username = #{username}
|
||||
</select>
|
||||
|
||||
<select id="findLdapUserByName" resultMap="baseMap">
|
||||
select user_id, username,nick_name, dept_id, password, enabled,email, phone, language ,is_admin from sys_user a where username = #{username} and a.from = 1
|
||||
</select>
|
||||
|
||||
<select id="findUserBySub" resultMap="baseMap">
|
||||
select user_id, username,nick_name, dept_id, password, enabled,email, phone, language ,is_admin from sys_user where sub = #{sub}
|
||||
</select>
|
||||
|
Loading…
Reference in New Issue
Block a user