我是新来的ansible。我写了一个Ansible剧本来安装vnc。我想确保有人在运行剧本时提示他们输入密码。我可以通过一些代码来运行剧本,并提示输入密码,但可以接受任何密码。
---
- hosts : test-server
vars_prompt:
- name: password
prompt: "What is your password?"
private: yes
tasks :
- name : install tightvncserver
package : pkg=tightvncserver state=installed
notify:
- start tightvncserver
handlers :
- name : start tightvncserver
service : name=tightvncserver state=started
请原谅缩进。任何帮助将不胜感激
答案 0 :(得分:0)
现在,这是ansible Vault出现的地方。任何密码或其他机密信息都必须存储在ansVault中。如果您不担心安全性,则可以简单地添加一个when
模块来检查密码是否与特定字符串匹配,否则解决此问题的最佳方法是提示输入安全的库密码并从那里获取机密信息。
另外,您也可以将密码作为键值存储在yml变量文件中,并将include
存储在剧本中,并添加when
条件,以检查提供的密码是否等于该变量文件中提到的密码。