From 3b0c208eff8c7cbaaf883d04d77748fbc9ec2565 Mon Sep 17 00:00:00 2001 From: zengqiao Date: Tue, 18 Jan 2022 15:48:05 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=85=85v2.6.0=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E8=AF=B4=E6=98=8E=E5=8F=8A=E4=BF=AE=E5=A4=8D=E6=96=B0=E5=A2=9E?= =?UTF-8?q?account=E6=8F=90=E7=A4=BAmysql=E9=94=99=E8=AF=AF=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- distribution/conf/create_mysql_table.sql | 6 ++--- distribution/upgrade_config.md | 10 +++++++ .../upgrade_manual/logi-km-v2.2.0.md | 27 ------------------- .../upgrade_manual/logi-km-v2.3.0.md | 17 ------------ .../src/main/resources/mapper/AccountDao.xml | 6 ++--- .../component/sso/BaseSessionSignOn.java | 7 ++--- .../web/converters/AccountConverter.java | 11 +++++--- 7 files changed, 28 insertions(+), 56 deletions(-) delete mode 100644 docs/dev_guide/upgrade_manual/logi-km-v2.2.0.md delete mode 100644 docs/dev_guide/upgrade_manual/logi-km-v2.3.0.md diff --git a/distribution/conf/create_mysql_table.sql b/distribution/conf/create_mysql_table.sql index 05a99278..f859d752 100644 --- a/distribution/conf/create_mysql_table.sql +++ b/distribution/conf/create_mysql_table.sql @@ -13,12 +13,12 @@ CREATE TABLE `account` ( `username` varchar(128) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '' COMMENT '用户名', `password` varchar(128) NOT NULL DEFAULT '' COMMENT '密码', `role` tinyint(8) NOT NULL DEFAULT '0' COMMENT '角色类型, 0:普通用户 1:研发 2:运维', + `department` varchar(256) DEFAULT '' COMMENT '部门名', + `display_name` varchar(256) DEFAULT '' COMMENT '用户姓名', + `mail` varchar(256) DEFAULT '' COMMENT '邮箱', `status` int(16) NOT NULL DEFAULT '0' COMMENT '0标识使用中,-1标识已废弃', `gmt_create` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `gmt_modify` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', - `department` varchar(128) DEFAULT '' COMMENT '部门名', - `display_name` varchar(128) DEFAULT '' COMMENT '用户姓名', - `mail` varchar(128) DEFAULT '' COMMENT '邮箱', PRIMARY KEY (`id`), UNIQUE KEY `uniq_username` (`username`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='账号表'; diff --git a/distribution/upgrade_config.md b/distribution/upgrade_config.md index 5f976042..06eb01b1 100644 --- a/distribution/upgrade_config.md +++ b/distribution/upgrade_config.md @@ -39,4 +39,14 @@ ALTER TABLE `gateway_config` ADD COLUMN `description` TEXT NULL COMMENT '描述信息' AFTER `version`; ``` +### 升级至`2.6.0`版本 +#### 1.mysql变更 +`2.6.0`版本在`account`表增加用户姓名,部门名,邮箱三个字段,因此需要执行下面的sql进行字段的增加。 + +```sql +ALTER TABLE `account` +ADD COLUMN `display_name` VARCHAR(256) NOT NULL DEFAULT '' COMMENT '用户名' AFTER `role`, +ADD COLUMN `department` VARCHAR(256) NOT NULL DEFAULT '' COMMENT '部门名' AFTER `display_name`, +ADD COLUMN `mail` VARCHAR(256) NOT NULL DEFAULT '' COMMENT '邮箱' AFTER `department`; +``` diff --git a/docs/dev_guide/upgrade_manual/logi-km-v2.2.0.md b/docs/dev_guide/upgrade_manual/logi-km-v2.2.0.md deleted file mode 100644 index 96622080..00000000 --- a/docs/dev_guide/upgrade_manual/logi-km-v2.2.0.md +++ /dev/null @@ -1,27 +0,0 @@ - ---- - -![kafka-manager-logo](../../assets/images/common/logo_name.png) - -**一站式`Apache Kafka`集群指标监控与运维管控平台** - ---- - -# 升级至`2.2.0`版本 - -`2.2.0`版本在`cluster`表及`logical_cluster`各增加了一个字段,因此需要执行下面的sql进行字段的增加。 - -```sql -# 往cluster表中增加jmx_properties字段, 这个字段会用于存储jmx相关的认证以及配置信息 -ALTER TABLE `cluster` ADD COLUMN `jmx_properties` TEXT NULL COMMENT 'JMX配置' AFTER `security_properties`; - -# 往logical_cluster中增加identification字段, 同时数据和原先name数据相同, 最后增加一个唯一键. -# 此后, name字段还是表示集群名称, 而identification字段表示的是集群标识, 只能是字母数字及下划线组成, -# 数据上报到监控系统时, 集群这个标识采用的字段就是identification字段, 之前使用的是name字段. -ALTER TABLE `logical_cluster` ADD COLUMN `identification` VARCHAR(192) NOT NULL DEFAULT '' COMMENT '逻辑集群标识' AFTER `name`; - -UPDATE `logical_cluster` SET `identification`=`name` WHERE id>=0; - -ALTER TABLE `logical_cluster` ADD INDEX `uniq_identification` (`identification` ASC); -``` - diff --git a/docs/dev_guide/upgrade_manual/logi-km-v2.3.0.md b/docs/dev_guide/upgrade_manual/logi-km-v2.3.0.md deleted file mode 100644 index 3a4196f8..00000000 --- a/docs/dev_guide/upgrade_manual/logi-km-v2.3.0.md +++ /dev/null @@ -1,17 +0,0 @@ - ---- - -![kafka-manager-logo](../../assets/images/common/logo_name.png) - -**一站式`Apache Kafka`集群指标监控与运维管控平台** - ---- - -# 升级至`2.3.0`版本 - -`2.3.0`版本在`gateway_config`表增加了一个描述说明的字段,因此需要执行下面的sql进行字段的增加。 - -```sql -ALTER TABLE `gateway_config` -ADD COLUMN `description` TEXT NULL COMMENT '描述信息' AFTER `version`; -``` diff --git a/kafka-manager-dao/src/main/resources/mapper/AccountDao.xml b/kafka-manager-dao/src/main/resources/mapper/AccountDao.xml index 3401ae75..299d120b 100644 --- a/kafka-manager-dao/src/main/resources/mapper/AccountDao.xml +++ b/kafka-manager-dao/src/main/resources/mapper/AccountDao.xml @@ -8,11 +8,11 @@ + + + - - - diff --git a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/sso/BaseSessionSignOn.java b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/sso/BaseSessionSignOn.java index 3683b193..a0309cb6 100644 --- a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/sso/BaseSessionSignOn.java +++ b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/sso/BaseSessionSignOn.java @@ -58,6 +58,7 @@ public class BaseSessionSignOn extends AbstractSingleSignOn { if(ValidateUtils.isNull(ldapAttrsInfo)){ return Result.buildFrom(ResultStatus.LDAP_AUTHENTICATION_FAILED); } + //LDAP验证通过,拿LDAP的sAMAccountName替换dto对象的值,便于第一次自动注册采用LDAP值,并且第二次也避免REPLACE dto.setUsername(ldapAttrsInfo.get("sAMAccountName").toString()); accountResult = accountService.getAccountDO(dto.getUsername()); @@ -68,9 +69,9 @@ public class BaseSessionSignOn extends AbstractSingleSignOn { accountDO.setUsername(dto.getUsername()); accountDO.setRole(AccountRoleEnum.getUserRoleEnum(authUserRegistrationRole).getRole()); accountDO.setPassword(dto.getPassword()); - accountDO.setDisplayName(ldapAttrsInfo.get("displayName").toString()); - accountDO.setDepartment(ldapAttrsInfo.get("department").toString()); - accountDO.setMail(ldapAttrsInfo.get("mail").toString()); + accountDO.setDisplayName(ldapAttrsInfo.getOrDefault("displayName", "").toString()); + accountDO.setDepartment(ldapAttrsInfo.getOrDefault("department", "").toString()); + accountDO.setMail(ldapAttrsInfo.getOrDefault("mail", "").toString()); accountService.createAccount(accountDO); } diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/converters/AccountConverter.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/converters/AccountConverter.java index b774a718..d1ce32c2 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/converters/AccountConverter.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/converters/AccountConverter.java @@ -13,14 +13,19 @@ import java.util.List; * @date 19/5/3 */ public class AccountConverter { + private AccountConverter() { + } + public static AccountDO convert2AccountDO(AccountDTO dto) { AccountDO accountDO = new AccountDO(); accountDO.setUsername(dto.getUsername()); accountDO.setPassword(dto.getPassword()); accountDO.setRole(dto.getRole()); - accountDO.setDepartment(dto.getDepartment()); - accountDO.setMail(dto.getMail()); - accountDO.setDisplayName(dto.getDisplayName()); + + // 兼容前端未传这些信息的情况 + accountDO.setDepartment(dto.getDepartment() == null? "": dto.getDepartment()); + accountDO.setMail(dto.getMail() == null? "": dto.getMail()); + accountDO.setDisplayName(dto.getDisplayName() == null? "": dto.getDisplayName()); return accountDO; }