ansible tower 凭证

2019-01-14  本文已影响0人  天天向上_ac78

凭证

启动作业,同步playbook脚本,导入项目内容时,需要使用凭证进行身份验证。
可以授予用户和团队使用这些凭据的权限,而无需将凭据公开给用户。
添加到团队的凭据可供团队的所有成员使用,而添加到用户的凭据默认情况下仅对该特定用户可用。

原理

Ansible Tower使用SSH连接到远程主机(或Windows等效主机)。为了将密钥从Tower传递到SSH,必须先解密密钥,然后才能写入命名管道。然后tower使用该管道将密钥发送到SSH(因此它永远不会写入磁盘)。

如果使用密码,Ansible Tower会通过直接响应提示密码并在将密码写入的提示之前解密密码来处理这些密码。

添加新的凭证

2019-01-11-17-28-02

凭证类型

2019-01-11-17-44-24
  1. Machine
    计算机凭据使Tower能够在您管理的主机上调用Ansible。就像在命令行上使用Ansible一样,您可以指定SSH用户名,可选的提供密码,SSH密钥,密钥密码,甚至让Tower在部署时提示用户输入密码。它们为playbooks定义ssh和用户级权限升级访问,并在提交作业以在远程主机上运行playbooks时使用。网络连接(httpapi,netconf和network_cli)使用Machine作为凭证类型。

计算机/ SSH凭据不使用环境变量。相反,它们通过Ansible -u标志传递用户名,并在底层SSH客户端提示输入时交互地写入SSH密码。

2019-01-11-18-07-28

Sudo密码必须与SSH密码或SSH私钥结合使用,因为在调用sudo以更改为sudo用户之前,Tower必须首先与主机建立经过身份验证的SSH连接。

  1. Amazon Web Services 选择此凭据类型可实现云主机列表与Amazon Web Services的同步。
  2. Ansible Tower 选择此凭据可以访问另一个Tower实例
  3. Google Compute Engine 选择此凭据类型可以将云主机列表与Google Compute Engine(GCE)同步。
  4. Insights 选择此凭据类型可以使云主机列表与Red Hat Insights同步。
  5. Microsoft Azure Resource Manager选择此凭据类型可以使云主机列表与Microsoft Azure资源管理器同步
  6. Network
    仅当您使用与提供商的本地连接时才选择网络凭据类型,以使用Ansible网络模块连接和管理网络设备。连接到网络设备时,凭据类型必须与连接类型匹配:
    对于local使用的连接provider,凭证类型应为网络
    对于所有其他网络连接(httpapi,netconf和network_cli),凭证类型应为Machine
  7. OpenStack 选择此凭据类型可以使云主机清单与OpenStack同步。
  8. Red Hat CloudForms选择此凭据类型可实现云主机清单与Red Hat CloudForms的同步。
  9. Red Hat Satellite 6选择此凭据类型可以使云存储与Red Hat Satellite 6同步。
  10. Red Hat Virtualization此凭证允许Tower访问Ansible的oVirt4.py动态库存插件,该插件由Red Hat Virtualization(RHV)管理。
  11. Source ControlSCM(源代码管理)凭据与Projects一起使用,以从远程修订控制系统(如Git,Subversion或Mercurial)克隆和更新本地源代码存储库。
  12. Vault选择此凭据类型可以使库存与Ansible Vault同步。
  13. VMware vCenter选择此凭据类型可以使库存与VMware vCenter同步。

自定义凭证类型

作为具有超级用户访问权限的Tower管理员,您可以使用类似YAML / JSON的定义以标准格式定义自定义凭据类型,从而允许为作业和库存更新分配新凭据类型。
自定义凭据支持以下注入其身份验证信息的方法:

  1. 环境变量
  2. Ansible额外变量
  3. 基于文件的模板(即生成.ini或.conf包含凭证值的文件)
    您可以将一个SSH和多个云凭据附加到作业模板。每个云凭证必须是不同的类型。换句话说,只允许一个AWS凭证,一个GCE凭证等。在Ansible Tower 3.2及更高版本中,value凭证和machine凭证是单独的实体。

注意:当创建一个新的证书类型,您有责任避免碰撞extra_vars,env以及文件的命名空间。此外,请避免使用环境变量或额外的变量名称,ANSIBLE_因为它们是保留的。您必须具有超级用户权限才能创建和编辑凭据类型(CredentialType)并能够查看该CredentialType.injection字段。

上一篇 下一篇

猜你喜欢

热点阅读