3.3. 为身份管理用户登录 Satellite 配置基于主机的访问控制
您可以使用基于主机的访问控制(HBAC)规则来管理身份管理域中的访问控制。在身份管理中,HBAC 规则定义了哪些用户可以访问哪些主机和哪些服务来获取访问权限。
例如,您可以在身份管理服务器上配置 HBAC,将 Satellite 服务器的访问权限限制为仅限选定的用户或用户组。通过在 Identity Management 域中配置 HBAC 规则,您可以确保 Satellite 不会为不应具有访问权限的用户创建数据库条目。
先决条件
- 具有权限配置 HBAC 规则的身份管理用户帐户
流程
在身份管理服务器上,配置 HBAC 控制。如需更多信息,请参阅 Red Hat Enterprise Linux 9 管理 IdM 用户、组、主机和访问控制规则。
- 为 Satellite 服务器创建一个 HBAC 服务。
创建新的 HBAC 规则以定义所需的访问控制。将以下身份管理实体添加到 HBAC 规则中:
- Satellite 服务器的 HBAC 服务
- Satellite 服务器主机
- 要授予访问权限的用户或用户组
-
确保默认身份管理
allow_all规则已被禁用。有关如何在不破坏其他服务的情况下禁用allow_all的详情,请参考红帽客户门户网站中的 如何在 IdM 中配置 HBAC 规则。
在 Satellite 服务器上,从身份管理中加载基于主机的访问控制规则:
# satellite-installer --foreman-pam-service foreman-prod
验证
以身份管理中定义的用户身份登录卫星 Web UI。
- 如果用户包含在 HBAC 规则中,Satellite Web UI 将授予访问权限。
- 如果用户没有包含在 HBAC 规则中,Satellite Web UI 将无法授予访问权限。
例 3.2. 使用命令行配置基于主机的访问控制,仅允许所选身份管理用户访问 Satellite
在身份管理服务器上,具有管理特权的用户配置 HBAC 规则,以允许所选用户访问 Satellite 服务器:
以具有配置 HBAC 规则所需的权限的用户身份进行身份验证:
$ kinit admin可选:验证您是否已成功验证:
$ klist创建一个新的 HBAC 服务,名为
satellite-prod:$ ipa hbacsvc-add satellite-prod创建新的 HBAC 规则:
$ ipa hbacrule-add allow-satellite-prod将以下身份管理实体添加到 HBAC 规则中:
satellite-prodHBAC 服务:$ ipa hbacrule-add-service allow-satellite-prod --hbacsvcs=satellite-prodSatellite 服务器主机:
$ ipa hbacrule-add-host allow-satellite-prod --hosts=satellite.example.com要授予访问权限的用户或用户组:
$ ipa hbacrule-add-user allow-satellite-prod --user=ipa-user
可选:验证规则的状态:
$ ipa hbacrule-find satellite-prod $ ipa hbactest --user=ipa-user --host=satellite.example.com --service=satellite-prod-
禁用默认的
allow_all规则:
$ ipa hbacrule-disable allow_all
在 Satellite 服务器上,Satellite 管理员重新运行 satellite-installer 来从身份管理加载基于主机的访问控制规则:
# satellite-installer --foreman-pam-service satellite-prod