diff --git a/apps/accounts/automations/change_secret/custom/ssh/manifest.yml b/apps/accounts/automations/change_secret/custom/ssh/manifest.yml
index 2796c32c4..465cfa1e2 100644
--- a/apps/accounts/automations/change_secret/custom/ssh/manifest.yml
+++ b/apps/accounts/automations/change_secret/custom/ssh/manifest.yml
@@ -11,4 +11,4 @@ params:
type: list
label: '自定义命令'
default: ['']
- help_text: '自定义命令中如需包含账号的 username 和 password 字段,请使用 {username}、{password}格式,执行任务时会进行替换 。
比如针对 Linux 主机进行改密,一般需要配置三条命令:
1.passwd {username}
2.{password}
3.{password}'
+ help_text: '自定义命令中如需包含账号的 账号、密码、SSH 连接的用户密码 字段,
请使用 {username}、{password}、{login_password}格式,执行任务时会进行替换 。
比如针对 Cisco 主机进行改密,一般需要配置五条命令:
1. enable
2. {login_password}
3. configure terminal
4. username {username} privilege 0 password {password}
5. end'
diff --git a/apps/ops/ansible/modules/custom_command.py b/apps/ops/ansible/modules/custom_command.py
index 4205e7088..4edff4324 100644
--- a/apps/ops/ansible/modules/custom_command.py
+++ b/apps/ops/ansible/modules/custom_command.py
@@ -72,9 +72,10 @@ def get_commands(module):
username = module.params['name']
password = module.params['password']
commands = module.params['commands'] or []
+ login_password = module.params['login_password']
for index, command in enumerate(commands):
commands[index] = command.format(
- username=username, password=password
+ username=username, password=password, login_password=login_password
)
return commands