文档

身份验证

生成个人访问令牌

使用 AWX 和 Red Hat Ansible Tower 进行身份验证的首选机制是生成并存储 OAuth2.0 令牌。令牌可以针对读/写权限进行范围限定,可以轻松撤销,并且比基于会话的身份验证更适合于第三方工具集成。

awx 提供一个简单的登录命令,用于从您的用户名和密码生成个人访问令牌。

TOWER_HOST=https://awx.example.org \
    TOWER_USERNAME=alice \
    TOWER_PASSWORD=secret \
    awx login

为了方便起见,awx login -f human 命令会打印一个 shell 格式的令牌值

export TOWER_OAUTH_TOKEN=6E5SXhld7AMOhpRveZsLJQsfs9VS8U

通过获取此令牌,您可以在运行后续 CLI 命令时无需每次都指定用户名和密码

export TOWER_HOST=https://awx.example.org
$(TOWER_USERNAME=alice TOWER_PASSWORD=secret awx login -f human)
awx config

使用 OAuth2.0 应用程序

AWX 和 Red Hat Ansible Tower 允许您配置范围限定到特定组织的 OAuth2.0 应用程序。要生成应用程序令牌(而不是个人访问令牌),请指定在创建应用程序时生成的**客户端 ID** 和**客户端密钥**。

TOWER_USERNAME=alice TOWER_PASSWORD=secret awx login \
    --conf.client_id <value> --conf.client_secret <value>

OAuth2.0 令牌范围

默认情况下,使用 awx login 创建的令牌具有写权限。要生成一个只读令牌,请指定 --scope read

TOWER_USERNAME=alice TOWER_PASSWORD=secret \
    awx login --conf.scope read

会话身份验证

如果您不想或不需要生成长期有效的令牌,awx 允许您在每次调用时指定您的用户名和密码

TOWER_USERNAME=alice TOWER_PASSWORD=secret awx jobs list
awx --conf.username alice --conf.password secret jobs list