in src/main/java/org/apache/pulsar/manager/PulsarApplicationListener.java [96:128]
private void seedDefaultSuperuser() {
if(defaultSuperuserEnabled == false) {
log.info("Superuser seed via application.properties is disabled");
return;
}
UserInfoEntity userInfoEntity = new UserInfoEntity();
userInfoEntity.setName(defaultSuperuserName);
userInfoEntity.setEmail(defaultSuperuserEmail);
userInfoEntity.setPassword(defaultSuperuserPassword);
Map<String, String> userValidateResult = usersService.validateUserInfo(userInfoEntity);
if (userValidateResult.get("error") != null) {
log.error("Superuser seed failed.", userValidateResult.get("error"));
System.exit(-1);
}
if (StringUtils.isBlank(userInfoEntity.getPassword())) {
log.error("Superuser seed failed. Password is required.");
System.exit(-1);
}
Optional<UserInfoEntity> optionalUserEntity = usersRepository.findByUserName(userInfoEntity.getName());
if (optionalUserEntity.isPresent()) {
log.warn("Superuser already exists.");
return;
}
userInfoEntity.setPassword(DigestUtils.sha256Hex(userInfoEntity.getPassword()));
usersRepository.save(userInfoEntity);
log.info("Successfully added a default superuser: name = {}, email = {}, password = {}.",
defaultSuperuserName, defaultSuperuserEmail, defaultSuperuserPassword);
}