9.5. 创建和管理角色


Satellite 中的用户可以分配一个或多个角色。这些角色与允许用户在 Satellite 中执行指定管理操作的权限关联。权限过滤器定义特定资源类型允许的操作。

Satellite 提供了一组可以满足标准任务权限的预定义角色。如需这些角色的列表,请参阅 第 9.6 节 “Satellite 中可用的预定义角色”。您还可以配置自定义角色。

注意

其中一个预定义的角色是 Default 角色。Satellite 为系统中的每个用户分配 Default 角色。默认情况下,Default 角色 只授予一组有限的权限。请注意,如果您为 Default 角色 添加权限,则每个 Satellite 用户都会获得该权限。为用户分配不同的角色不会从用户中删除 Default 角色

以下类型的角色通常在各种 Satellite 部署中定义:

与基础架构应用程序或部分相关的角色
例如,Red Hat Enterprise Linux 所有者的角色作为操作系统,而不是针对应用服务器和数据库服务器的所有者的角色。
与软件生命周期的特定阶段相关的角色
例如,角色划分到开发、测试和生产阶段,每个阶段都有一个或多个所有者。
与特定任务相关的角色
例如,您可以根据用户在机构中执行的特定任务,为安全管理器创建角色以及许可证管理器的角色。

9.5.1. 创建角色

使用这个流程创建角色。

流程

  1. 在 Satellite Web UI 中,进入到 Administer > Roles
  2. 单击 Create Role
  3. 为角色提供 Name
  4. Submit 以保存您的新角色。

CLI 过程

  • 运行以下命令来创建角色:

    $ hammer role create --name My_Role_Name
    Copy to Clipboard Toggle word wrap

为了服务其目的,角色必须包含权限。创建角色后,继续 第 9.5.3 节 “为角色添加权限”

9.5.2. 克隆角色

使用 Satellite Web UI 克隆角色。

流程

  1. 在 Satellite Web UI 中,进入到 Administer > Roles,然后从所需角色右侧的下拉菜单中选择 Clone
  2. 为角色提供 Name
  3. 单击 Submit 以克隆角色。
  4. 单击克隆角色的名称,再导航到 Filters
  5. 根据需要编辑权限。
  6. Submit 以保存您的新角色。

9.5.3. 为角色添加权限

使用这个流程为角色添加权限。要使用 CLI 而不是 Satellite Web UI,请参阅 CLI 过程

流程

  1. 在 Satellite Web UI 中,进入到 Administer > Roles
  2. 从所需角色右侧的下拉列表中,选择 Add Filter
  3. 从下拉列表中选择 资源类型(其它) 组收集没有与任何资源组关联的权限。
  4. 单击您要从 Permission 列表中选择的权限。
  5. 根据所选的 资源类型,您可以选择或取消选择 Tasks 和 Override 复选框。默认情况下会选中 Unlimited 复选框,这意味着权限将应用到所选类型的所有资源上。当您禁用 无限 复选框时,Search 字段会激活。在此字段中,您可以使用 Satellite 搜索语法指定进一步过滤。更多信息请参阅 第 9.7 节 “细粒度权限过滤”。启用 覆盖 复选框时,您可以添加额外的位置和机构,以允许角色访问额外位置和机构中的资源类型;您还可以从资源类型中删除已关联的位置和机构以限制访问。
  6. 点击 Next
  7. Submit 以保存更改。

CLI 过程

  1. 列出所有可用权限:

    $ hammer filter available-permissions
    Copy to Clipboard Toggle word wrap
  2. 为角色添加权限:

    $ hammer filter create \
    --permission-ids My_Permission_ID_1,My_Permission_ID_2 \
    --role My_Role_Name
    Copy to Clipboard Toggle word wrap

如需有关角色和权限参数的更多信息,请输入 hammer role --helphammer filter --help 命令。

9.5.4. 查看角色的权限

使用 Satellite Web UI 查看角色的权限。

流程

  1. 在 Satellite Web UI 中,进入到 Administer > Roles
  2. 单击所需角色右侧的 Filters,以进入 Filters 页面。

Filters 页面包含分配给按资源类型分组的角色的权限表。也可以生成可在 Satellite 系统上使用的完整权限和操作表。如需更多信息,请参阅 第 9.5.5 节 “创建完整权限表”

9.5.5. 创建完整权限表

使用 Satellite CLI 创建权限表。

流程

  1. 使用以下命令启动 Satellite 控制台:

    # foreman-rake console
    Copy to Clipboard Toggle word wrap
  2. 在控制台中插入以下代码:

    f = File.open('/tmp/table.html', 'w')
    
    result = Foreman::AccessControl.permissions {|a,b| a.security_block <=> b.security_block}.collect do |p|
          actions = p.actions.collect { |a| "<li>#{a}</li>" }
          "<tr><td>#{p.name}</td><td><ul>#{actions.join('')}</ul></td><td>#{p.resource_type}</td></tr>"
    end.join("\n")
    
    f.write(result)
    Copy to Clipboard Toggle word wrap

    以上语法会创建一个权限表,并将其保存到 /tmp/table.html 文件中。

  3. Ctrl + D 退出 Satellite 控制台。
  4. 将以下文本插入到 /tmp/table.html 的第一行:

    <table border="1"><tr><td>Permission name</td><td>Actions</td><td>Resource type</td></tr>
    Copy to Clipboard Toggle word wrap
  5. 将以下文本附加到 /tmp/table.html 的末尾:

    </table>
    Copy to Clipboard Toggle word wrap
  6. 在 Web 浏览器中打开 /tmp/table.html 以查看表。

9.5.6. 删除角色

使用以下步骤从 Satellite 中删除角色。

流程

  1. 在 Satellite Web UI 中,进入到 Administer > Roles
  2. 从要删除的角色右侧的下拉列表中,选择 Delete
  3. 单击 Confirm 以删除该角色。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat