重构:移除环境变量管理员初始化

This commit is contained in:
yml2213
2026-08-13 14:21:22 +08:00
parent 538be52636
commit a637101ca8
7 changed files with 0 additions and 87 deletions
-46
View File
@@ -153,49 +153,3 @@ func (s *AuthService) UpdateCurrentAccount(userID uint, in UpdateCurrentAccountI
}
return updated, nil
}
// EnsureAdmin creates the first platform administrator for an empty database.
// Existing administrator accounts are never changed by environment variables.
func (s *AuthService) EnsureAdmin(username, password string) error {
var count int64
s.db.Model(&model.User{}).Where("role = ?", model.RoleAdmin).Count(&count)
if count > 0 {
if s.tenant != nil {
var admins []model.User
if err := s.db.Where("role = ?", model.RoleAdmin).Find(&admins).Error; err != nil {
return err
}
for _, admin := range admins {
if err := s.tenant.EnsureSelfMember(admin.ID, model.MemberRoleOwner, admin.Status); err != nil {
return err
}
}
}
return nil
}
username = strings.TrimSpace(username)
if len(username) < 3 {
return errors.New("空数据库首次启动必须设置 INITIAL_ADMIN_USERNAME(至少 3 位)")
}
if len(password) < 8 {
return errors.New("空数据库首次启动必须设置 INITIAL_ADMIN_PASSWORD(至少 8 位)")
}
hash, err := bcrypt.GenerateFromPassword([]byte(password), bcrypt.DefaultCost)
if err != nil {
return err
}
admin := &model.User{
Username: username,
PasswordHash: string(hash),
Nickname: username,
Role: model.RoleAdmin,
Status: 1,
}
if err := s.db.Create(admin).Error; err != nil {
return err
}
if s.tenant != nil {
return s.tenant.EnsureSelfMember(admin.ID, model.MemberRoleOwner, admin.Status)
}
return nil
}