TDH 环境中 TDDMS-Webserver 修改 shiva 密码

  其他常见问题
内容纲要

概要描述


TDDMS Webserver 安装后默认密码是 shiva,过于简单,后续版本提供了修改 shiva 密码的办法。
本文介绍修改 shiva 密码以及修改后依赖服务的密码。

详细说明


大体的思路如下:

  1. 使用 TDDMS 镜像中 shiva_tool,新增加一个 shiva2 用户,并设置一个复杂密码。
  2. 然后禁掉 shiva 用户的登录。

适用版本:

2.3(argodb6.0.,argodb5.2.): tddms版本时间在2024年8月9日后
2.5(argodb6.1): tddms版本时间在2024年8月10日后

1. TDDMS 新增用户并设置密码

TDDMS 修改密码的办法,实际原理就是使用镜像中 shiva_tool,新增加一个 shiva2 用户,并设置一个复杂密码。

docker run -e GRPC_DNS_RESOLVER=native \
--network host $image /usr/shiva/bin/shiva_tool \
--cmd=create_role \
--master_group=172.22.37.181:9630,172.22.37.182:9630,172.22.37.183:9630 \
--rolename=shiva2 \
--rolepasswd=shiva2 \
--create_super_role=true \
--user=shiva \
--passwd=shiva

file

其中:

  • $image 为 TDDMS 镜像id,docker images |grep tddms 的输出
  • –cmd=create_role表示新建用户
  • –master_group=${master_group}表示master_group(和webui上看到的一样),需要带上端口号。
  • –rolename=$newUserName 表示新建用户的用户名
  • –rolepasswd=$newPassword 表示新建用户的密码,复杂密码建议用引号进行修饰,例如–rolepasswd=’Pas@S#or$d’
  • –create_super_role=true表示新建的用户为超级用户
  • –user=shiva 表示当前用户名
  • –passwd=shiva表示当前用户密码

2. 禁止 shiva 用户登录 WebServer

a. Argodb6.x版本直接修改参数 restful.login.blacklist

file

配置服务重启即可。

b. Argodb5.x版本需要修改模板文件

修改启动脚本 shiva-restful.sh

vim /var/lib/transwarp-manager/master/content/meta/services/TDDMS/tddms-x-x-x/templates/shiva-restful.sh

用下面内容替换原JAVA_OPTS所在行;

EXTRA_OPTS="-DwebuiEnable=true -DloginBlacklist=shiva"
JAVA_OPTS="$JAVA_OPTS -Dmaster_group=$MASTER_GROUP -Dhttp_port=${service['http.port']} -Dconf=/etc/${service.sid}/conf/webserver_master_group -Dlog4j2.configurationFile=file:///etc/${service.sid}/conf/log4j2.xml $EXTRA_OPTS $USE_CONTAINER_SUPPORT_OPTS"

新增加一个 EXTRA_OPTS="-DwebuiEnable=true -DloginBlacklist=shiva"
并将 EXTRA_OPTS 加到 JAVA_OPTS 中,如下图

file

然后执行 systemctl reload transwarp-manager,重新加载模版文件,最后在 manager 页面,TDDMS 服务,点击配置服务,重启 TDDMSWebServer 角色即可。

FAQ


1. 低版本 shiva_tool不支持 create_super_role 、rolepasswd

file

tddms版本较低导致的,比如v2.3-202408010952,建议打上最新argodb patch,再执行操作。

2. 新用户忘记密码

shiva-tool 不支持直接修改密码,即使用同样的 create 语句重跑一次,也不会对同名的用户产生影响。正确的做法是,先删除,再重新创建

删除语句参考

docker run -e GRPC_DNS_RESOLVER=native \
--network host $image /usr/shiva/bin/shiva_tool \
--cmd=drop_role \
--master_group=172.22.37.181:9630,172.22.37.182:9630,172.22.37.183:9630 \
--rolename=shiva2 \  (这里填新用户的用户名,禁止填写初始的shiva)
--user=shiva \
--passwd=shiva

不可撤销的危险操作,禁止对初始的 shiva 用户执行删除!

这篇文章对您有帮助吗?

平均评分 0 / 5. 次数: 0

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。