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 配置文件中存储您的凭证。
请参阅有关如何使用会话的说明:
要启用会话,将
: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. 命令行
如果您没有将 Satellite 凭证保存在 ~/.hammer/cli.modules.d/foreman.yml
配置文件中,则 hammer 每次输入命令时都会提示您输入它们。您可以在执行命令时指定凭证,如下所示:
$ hammer -u username -p password subcommands
本指南中的示例假设您已在配置文件中保存了凭证,或者使用 hammer 身份验证会话。