在 Private Automation Hub 中管理用户访问

Red Hat Ansible Automation Platform 2.4

为私有自动化中心定义用户访问

Red Hat Customer Content Services

摘要

本指南提供了为您的自动化中心用户创建组的说明,为他们提供适当的系统权限,或者仅允许对未授权用户进行查看访问。

前言

在 Automation Hub 中配置用户访问权限,为您的机构中的组提供适当级别的系统权限,或仅允许未授权用户具有查看权限。

使开源包含更多

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。有关更多详情,请参阅我们的首席技术官 Chris Wright 提供的消息

对红帽文档提供反馈

我们非常感谢您对我们的技术内容提供反馈,并鼓励您告诉我们您的想法。如果您想添加评论,提供见解、纠正拼写错误甚至询问问题,您可以在文档中直接这样做。

注意

您必须有一个红帽帐户并登录到客户门户网站。

要从客户门户网站提交文档反馈,请执行以下操作:

  1. 选择 Multi-page HTML 格式。
  2. 点文档右上角的 反馈 按钮。
  3. 突出显示您要提供反馈的文本部分。
  4. 点高亮文本旁的 添加反馈 对话框。
  5. 在页面右侧的文本框中输入您的反馈,然后单击 Submit

每次提交反馈时,我们都会自动创建跟踪问题。打开在点 Submit 后显示的链接,并开始监视问题或添加更多注释。

第 1 章 为本地 Automation Hub 配置用户访问权限

1.1. 关于用户访问

您可以通过创建具有特定权限的用户组来管理用户对 Automation Hub 中的内容和功能的访问。

1.1.1. 如何实现用户访问权限

用户访问权限基于管理系统对象(用户、组、命名空间)的权限,而不是单独为特定用户分配权限。

您可以为您创建的组分配权限。然后,您可以为这些组分配用户。这意味着,组中的每个用户都有分配给该组的权限。

在 Automation Hub 中创建的组,其范围可以包括系统管理员所需进行的任务,包括负责管理内部集合、配置用户访问和存储库管理。这些组可具有组织并上传内部开发的内容至 Automation Hub 的权限。

1.1.2. 默认用户访问

安装 Automation hub 时,默认的 admin 用户会在 Admin 组中创建。这个组被分配了系统中的所有权限。

1.1.3. 开始使用

使用在安装过程中配置的 admin 用户的凭证登录到本地 Automation Hub。

以下小节介绍了与指导将访问 Automation Hub 的用户相关的工作流,并为其提供达到其目标所需的权限。有关所有可用权限的完整列表和描述,请查看权限参考表。

1.2. 创建新组

您可以创建并为自动化中心中的组分配权限,该组可让用户访问系统中指定的功能。默认情况下,Automation Hub 中有一个 admins 组,它分配了所有权限,并在使用安装 Automation Hub 时创建的凭证进行初始登录时可用。

先决条件

  • 您有权限,可以在 Automation Hub 中创建和管理组配置和访问权限。

流程

  1. 登录到您的本地自动化中心。
  2. 进入 User AccessGroups
  3. Create
  4. 提供 Name 并点 Create

现在,您可以分配权限并在组编辑页面中添加用户。

1.3. 为组分配权限

您可以为 Automation Hub 中的组分配权限,以便用户访问系统中的特定功能。默认情况下,新组没有任何分配的权限。您可以在初始组创建时添加权限,或编辑现有组以添加或删除权限

先决条件

  • 您有 Change group 权限并可以在 Automation Hub 中编辑组权限。

流程

  1. 登录到您的本地自动化中心。
  2. 导航到 User AccessRoles
  3. Add roles
  4. 单击 name 字段,再填写角色名称。
  5. 单击描述字段,再填写描述。
  6. 完成 Permissions 部分。
  7. 点每个权限类型的项,然后选择列表中显示的权限。
  8. 完成后点 Save 来分配权限。
  9. 进入 User AccessGroups
  10. 点击组名称。
  11. Access 选项卡。
  12. Add roles
  13. 选择在第 8 步中创建的角色。
  14. Next 确认所选角色。
  15. 单击 Add 以完成添加角色。

组现在可以访问自动化 hub 中的功能,与其分配的权限相关联。

1.4. 创建新用户

您可以在 Automation Hub 中创建用户,并将其添加到可访问与分配权限级别关联的系统中的功能的组中。

先决条件

  • 您有用户权限,可以在 Automation Hub 中创建用户。

流程

  1. 登录到您的本地 Automation Hub。
  2. 进入 User Access
  3. Create user
  4. 在每个字段中提供信息。UsernamePassword 是必需的。
  5. [可选] 点 Groups 字段,并从组列表中选择将用户以分配给组。
  6. 点击 Save

新用户现在将显示在 Users 页面的列表中。

1.5. 创建一个超级用户

您可以在自动化 hub 中创建超级用户,并将管理工作分散到您的团队中。

先决条件

  • 您有 超级 (Super) 用户权限,可以在自动化 hub 中创建用户。

流程

  1. 登录到您的本地自动化中心。
  2. 进入 User Access
  3. Users
  4. 选择您要成为超级用户的用户,以查看 User details 页面。
  5. 在用户类型下选择 Super User

用户现在具有 Super 用户权限。

1.6. 将用户添加到组中

您可以在创建组时将用户添加到组中,或者手动将用户添加到现有组中。本节论述了如何在现有组中添加用户。

先决条件

  • 您有权限,可以在 Automation Hub 中创建和管理组配置和访问权限。

流程

  1. 登录到自动化中心。
  2. 进入 User AccessGroups
  3. 点一个组名称。
  4. 进入 Users 选项卡,然后单击 Add
  5. 从列表中选择要添加的用户,然后点 Add

您已添加了您选择的用户。这些用户现在有使用分配给组的自动化中心的权限。

1.7. 为内容 Curator 创建新组

您可以在 Automation Hub 中创建一个新组,旨在支持您机构中的内容策展,这些策展将提供内部开发的集合以便在 Automation Hub 中发布。

在本小节中,您将创建新组,并分配所需的权限来帮助内容开发人员创建命名空间并将其集合上传到 Automation Hub。

先决条件

  • 在 Automation Hub 中具有管理权限并创建组。

流程

  1. 登录到您的本地自动化中心。
  2. 进入 User AccessGroups,再点 Create
  3. 在界面中输入 Content Engineering 作为组的 Name,再点 Create。您已创建新组,并且显示 Groups 页面。
  4. Permissions 选项卡中,点 Edit
  5. Namespaces 下,为 Add NamespaceUpload to NamespaceChange Namespace 添加权限。
  6. 点击 Save

    使用您分配的权限创建新组。然后您可以将用户添加到组中。

  7. Groups 页面中的 Users 选项卡。
  8. 点击 Add
  9. 从界面中选择用户并点 Add

总结

现在,您有一个可以使用自动化中心的新组:

  • 创建命名空间。
  • 编辑命名空间详情和资源页面。
  • 将内部开发的集合上传到命名空间。

1.8. Automation Hub 权限

权限为每个组提供了在给定对象上执行的一组定义的操作的权利。根据以下权限确定您的组所需的访问权限级别:

表 1.1. 权限参考表

对象权限描述

集合命名空间

添加命名空间

Upload to namespace(上传到命名空间)

更改命名空间

删除命名空间

具有这些权限的组可以创建、上传集合或删除命名空间。

collections

修改 Ansible repo 内容

删除集合

具有此权限的组可以使用 Approval 功能在存储库间移动内容,认证或拒绝功能,将内容从 staging 移到 publishedrejected 存储库,abd 删除集合。

users

查看用户

Delete user(删除用户)

Add user(添加用户)

更改用户

具有这些权限的组群可以在 Automation Hub 中管理用户配置和访问。

groups

View group(查看组)

Delete group(删除组)

Add group(添加组)

更改组

使用这些权限的组可以在 Automation Hub 中管理组配置和访问。

collection remotes

更改集合远程

查看集合远程

具有这些权限的组可以通过进入到 CollectionsRepo Management 来配置远程存储库。

containers

更改容器命名空间权限

更改容器

更改镜像标签

创建新容器

推送到现有容器

删除容器仓库

具有这些权限的组可以在 automation hub 中管理容器存储库。

remote registries

添加远程 registry

更改远程 registry

删除远程 registry

具有这些权限的组可以添加、更改或删除添加到 automation hub(自动化中心)的远程 registry。

task management

更改任务

删除任务

查看所有任务

带有这些权限的组可以管理加入到 automation hub 中的 Task Management 中的任务。

1.9. 从自动化中心删除用户

当您删除用户帐户时,用户的名称和电子邮件将从自动化中心永久删除。

先决条件

  • 在自动化中心中具有 user 权限。

流程

  1. 登录到自动化中心。
  2. 进入 User Access
  3. 单击 Users 以显示当前用户列表。
  4. 点您要删除的用户旁边的 More Actions 图标 HBAC 图标,然后点 Delete
  5. 在警告消息中点 Delete 以永久删除用户。

第 2 章 为私有自动化中心启用只查看访问权限

通过启用只查看访问权限,您可以授予用户查看私有自动化 hub 上的集合或命名空间的访问权限,而无需进行登录。View-only 访问权限允许您与未授权用户共享内容,同时限制他们只能查看或下载源代码的权限,而无需编辑私有自动化中心上的任何内容。

编辑 Red Hat Ansible Automation Platform 安装程序中的清单文件,为您的私有自动化中心启用只查看访问。

  • 如果您要安装 Ansible Automation Platform 的新实例,请按照以下步骤将 automationhub_enable_unauthenticated_collection_accessautomationhub_enable_unauthenticated_collection_download 参数添加到您的 inventory 文件中,以及其他安装配置:
  • 如果您要更新现有的 Ansible Automation Platform 安装使其包含 view-only 访问权限,请将 automationhub_enable_unauthenticated_collection_accessautomationhub_enable_unauthenticated_collection_download 参数添加到 inventory 文件中,然后运行 setup.sh 脚本以应用更新:

流程

  1. 导航到安装程序。

    捆绑的安装程序
    $ cd ansible-automation-platform-setup-bundle-<latest-version>
    在线安装程序
    $ cd ansible-automation-platform-setup-<latest-version>
  2. 使用文本编辑器打开清单文件。
  3. automationhub_enable_unauthenticated_collection_accessautomationhub_enable_unauthenticated_collection_download 参数添加到清单文件,并把它设置为 True,如下例所示:

    [all:vars]
    
    automationhub_enable_unauthenticated_collection_access = True 1
    automationhub_enable_unauthenticated_collection_download = True 2
    1
    允许未授权用户查看集合
    2
    允许未经过授权的用户下载集合
  4. 运行 setup.sh 脚本。现在,安装程序将启用对自动化中心的只查看访问。

验证

安装完成后,您可以通过尝试在不登录的情况下查看自动化中心的内容,来验证您的私有自动化中心是否有只查看访问权限。

  1. 进入您的私有自动化中心。
  2. 在登录屏幕中,单击 View only mode

验证您是否能够在自动化 hub 上查看内容,如命名空间或集合,而无需登录。

法律通告

Copyright © 2023 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.