1.2. 身份验证
在输入 hammer 命令时,Satellite 用户必须通过 Red Hat Satellite 证明其身份。Hammer 命令可以手动运行或自动运行。在这两种情况下,hammer 需要 Satellite 凭证进行身份验证。hammer 身份验证有三种方法:
- Hammer 身份验证会话
- 在 hammer 配置文件中存储凭证
- 使用每个 hammer 命令提供凭证
建议在自动运行命令时使用 hammer 配置文件方法。例如,从 cron 作业运行 Satellite 维护命令。手动运行命令时,红帽建议使用 hammer 身份验证会话,并使用每个命令提供凭证。
1.2.1. Hammer 身份验证会话
hammer 身份验证会话是一个存储凭证的缓存,您必须在会话开始时提供一次。这个方法适用于连续运行多个 hammer 命令,例如包含 hammer 命令的脚本。在这种情况下,您将输入一次您的 Satellite 凭证,脚本会如预期运行。通过使用 hammer 身份验证会话,您可以避免将凭据存储在脚本本身以及 ~/.hammer/cli.modules.d/foreman.yml
hammer 配置文件中。
请参阅有关如何使用会话的说明:
要启用会话,请在
~/.hammer/cli.modules.d/foreman.yml
文件中添加:use_sessions: true
::foreman: :use_sessions: true
请注意,如果您启用会话,则配置文件中存储的凭证将被忽略。
要启动会话,请输入以下命令:
# hammer auth login
会提示您输入 Satellite 凭据并登录。在会话过期前,不会再次提示您输入凭证。
会话的默认长度为 60 分钟。您可以更改适合您喜欢的时间。例如,要将其改为 30 分钟,请输入以下命令:
# hammer settings set --name idle_timeout --value 30 Setting [idle_timeout] updated to [30]
要查看会话的当前状态,请输入以下命令:
# hammer auth status
要结束会话,请输入以下命令:
# hammer auth logout
1.2.2. hammer 配置文件
如果您使用 --foreman-initial-admin-username
和 --foreman-initial-admin-password
选项运行 Satellite 安装,则您输入的凭证会存储在 ~/.hammer/cli.modules.d/foreman.yml
配置文件中,hammer 不会提示输入您的凭证。
您还可以手动将凭证添加到 ~/.hammer/cli.modules.d/foreman.yml
配置文件中:
:foreman: :username: 'username' :password: 'password'
仅在 hammer 配置文件中使用空格进行缩进。不要在 hammer 配置文件中使用制表符缩进。
1.2.3. 命令行
如果您没有保存在 ~/.hammer/cli.modules.d/foreman.yml
配置文件中的 Satellite 凭证,hammer 每次输入命令时都会提示您输入它们。您可以在执行命令时指定凭证,如下所示:
$ hammer -u username -p password subcommands
本指南中的示例假定您已在配置文件中保存了凭证,或使用 hammer 身份验证会话。