fix(gateway): 空 email 按用户名合成 casdoor.local 占位(email 列 NOT NULL UNIQUE)
CodeQL Advanced / Analyze (actions) (push) Canceled after 0s
CodeQL Advanced / Analyze (java-kotlin) (push) Canceled after 0s
CodeQL Advanced / Analyze (javascript-typescript) (push) Canceled after 0s
CodeQL Advanced / Analyze (python) (push) Canceled after 0s
Docker Image Build & Push / manifest (push) Canceled after 0s
Docker Image Build & Push / build-and-push-arm (push) Canceled after 0s
Docker Image Build & Push / build-and-push-amd (push) Canceled after 0s
Gateway Docker Image CI / Build and Push Gateway Docker Image (push) Canceled after 0s
CodeQL Advanced / Analyze (actions) (push) Canceled after 0s
CodeQL Advanced / Analyze (java-kotlin) (push) Canceled after 0s
CodeQL Advanced / Analyze (javascript-typescript) (push) Canceled after 0s
CodeQL Advanced / Analyze (python) (push) Canceled after 0s
Docker Image Build & Push / manifest (push) Canceled after 0s
Docker Image Build & Push / build-and-push-arm (push) Canceled after 0s
Docker Image Build & Push / build-and-push-amd (push) Canceled after 0s
Gateway Docker Image CI / Build and Push Gateway Docker Image (push) Canceled after 0s
This commit is contained in:
+2
-2
@@ -116,9 +116,9 @@ public class CasdoorUserService {
|
||||
private User createUser(IdTokenClaims claims, String username, LocalDateTime now) {
|
||||
User user = new User();
|
||||
user.setUsername(username);
|
||||
// email 列有唯一约束:空串会互相冲突,空值统一落 NULL(NULL 不参与唯一约束)
|
||||
// email 列 NOT NULL UNIQUE:空串会互相冲突,缺省按用户名合成占位 email
|
||||
String email = claims.email();
|
||||
user.setEmail(email == null || email.isBlank() ? null : email.trim());
|
||||
user.setEmail(email == null || email.isBlank() ? username + "@casdoor.local" : email.trim());
|
||||
user.setFullName(claims.name());
|
||||
// 本地密码不可用:随机占位(登录统一走 Casdoor,本地 BCrypt 仅迁移期兜底)
|
||||
user.setPasswordHash(new BCryptPasswordEncoder(10).encode(UUID.randomUUID().toString()));
|
||||
|
||||
Reference in New Issue
Block a user