文档

身份验证

生成个人访问令牌

与 AWX 和 Red Hat Ansible 自动化平台控制器进行身份验证的首选机制是生成和存储 OAuth2.0 令牌。令牌可以按读/写权限进行范围限制,易于撤销,并且比基于会话的身份验证更适合第三方工具集成。

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

CONTROLLER_HOST=https://awx.example.org \
    CONTROLLER_USERNAME=alice \
    CONTROLLER_PASSWORD=secret \
    awx login

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

export CONTROLLER_OAUTH_TOKEN=6E5SXhld7AMOhpRveZsLJQsfs9VS8U

通过接收此令牌,您可以运行后续的 CLI 命令,而无需每次都指定您的用户名和密码

export CONTROLLER_HOST=https://awx.example.org
$(CONTROLLER_USERNAME=alice CONTROLLER_PASSWORD=secret awx login -f human)
awx config

使用 OAuth2.0 应用程序

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

CONTROLLER_USERNAME=alice CONTROLLER_PASSWORD=secret awx login \
    --conf.client_id <value> --conf.client_secret <value>

OAuth2.0 令牌范围

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

CONTROLLER_USERNAME=alice CONTROLLER_PASSWORD=secret \
    awx login --conf.scope read

会话身份验证

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

CONTROLLER_USERNAME=alice CONTROLLER_PASSWORD=secret awx jobs list
awx --conf.username alice --conf.password secret jobs list