12.3. 远程执行的权限
您可以控制哪些角色可在您的基础架构中运行哪些作业,包括它们可以目标的主机。远程执行功能提供了两个内置角色:
- 远程执行管理器 :可以访问所有远程执行功能。
- 远程执行用户 : 只能运行作业。
您可以克隆 Remote Execution User 角色,并自定义其过滤器以增加粒度。如果您使用自定义角色使用 view_job_templates
权限调整过滤器,您只能根据匹配的作业模板查看和触发作业。您可以使用 view_hosts
和 view_smart_proxies
权限来限制哪些主机或胶囊对角色可见。
execute_template_invocation
权限是一个特殊权限,在执行作业开始前立即检查。此权限定义您可以在特定主机上运行的作业模板。这在指定权限时具有更大的粒度。
您可以针对 Red Hat Satellite 运行远程执行作业,并在使用 execute_jobs_on_infrastructure_hosts
权限将主机注册为 Red Hat Satellite。默认情况下,标准的 Manager 和 Site Manager 角色已具有这个权限。如果使用 Manager 或 Site Manager 角色,或者使用 execute_jobs_on_infrastructure_hosts
权限的自定义角色,您可以根据注册的 Red Hat Satellite 和 Capsule 主机执行远程作业。
有关使用角色和权限的更多信息,请参阅管理 Red Hat Satellite 中的创建和管理角色。
以下示例显示了 execute_template_invocation
权限的过滤器:
name = Reboot and host.name = staging.example.com name = Reboot and host.name ~ *.staging.example.com name = "Restart service" and host_group.name = webservers
name = Reboot and host.name = staging.example.com
name = Reboot and host.name ~ *.staging.example.com
name = "Restart service" and host_group.name = webservers
使用本例中的第一行将 Reboot 模板应用到所选主机。使用第二行定义一个主机池,其名称以 .staging.example.com
结尾。使用第三行将模板与主机组绑定。
分配给具有这些角色的用户权限可能会随时间而变化。如果您已将一些作业调度到将来运行,并且权限更改,则可能会导致执行失败,因为在作业执行前会立即检查权限。