1.2. 身份验证
在进入 hammer 命令时,卫星用户必须证明其身份在红帽卫星上。Hammer 命令可以手动或自动运行。在这两种情况下,hammer 需要 Satellite 凭证进行身份验证。hammer 身份验证有三种方法:
- Hammer 验证会话
- 将凭证存储在 hammer 配置文件中
- 为每个 hammer 命令提供凭证
在自动运行命令时,建议使用 hammer 配置文件方法。例如,从 cron 任务运行 Satellite 维护命令。手动运行命令时,红帽建议使用 hammer 验证会话并为每个命令提供凭证。
1.2.1. Hammer 验证会话
hammer 的身份验证会话是保存您的凭证的缓存,且您必须在会话开始时提供一次。这个方法适用于运行几个 hammer 命令,例如包含 hammer 命令的脚本。在这种情况下,您输入 Satellite 凭证一次,脚本会如预期运行。通过使用 hammer 的身份验证会话,您可以避免将凭证存储在脚本本身中,并保存在 ~/.hammer/cli.d/foreman.yml
hammer 配置文件中。
有关如何使用会话的说明:
要启用会话,将
:use_sessions: true
添加到~/.hammer/cli.modules.d/foreman.yml
文件中::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 验证会话。