第 9 章 管理用户和角色

用户使用系统定义一组个人的详细信息。用户可以与组织和环境关联,以便在创建新实体时自动使用默认设置。用户也可以附加 一个或多个角色,授予他们查看和管理组织和环境的权限。有关使用用户的更多信息,请参阅 第 9.1 节 “管理用户”

您可以通过将多个用户组织到用户组来管理一次的权限。用户组本身可以进一步分组以创建权限层次结构。有关创建用户组的更多信息,请参阅 第 9.4 节 “创建和管理用户组”

角色定义一组权限和访问级别。每个角色包含一个 权限过滤器,用于指定角色允许的操作。操作按照 资源类型分组。创建角色后,用户和组就可以与该角色关联。这样,您可以将相同的权限集分配给大型用户组。Satellite 提供了一组预定义的角色,还支持创建自定义角色和权限过滤器,如 第 9.5 节 “创建和管理角色” 所述。

9.1. 管理用户

作为管理员,您可以创建、修改和删除 Satellite 用户。您还可以通过分配不同的角色来为用户或一组用户配置访问权限

9.1.1. 创建用户

使用这个流程创建用户。要使用 CLI 而不是 Satellite Web UI,请参阅 CLI 过程

流程

  1. 在 Satellite Web UI 中,进入到 Administer > Users
  2. 单击 创建用户
  3. Login 字段中,输入用户的用户名。
  4. FirstnameLastname 字段中,输入用户的实际名字和姓氏。
  5. Mail 字段中,输入用户的电子邮件地址。
  6. Description 字段中,添加新用户的描述。
  7. Language 列表中选择用户的特定语言。
  8. Timezone 列表中选择用户的时区。

    默认情况下,卫星服务器使用用户浏览器的语言和时区设置。

  9. 为该用户设置密码:

    1. Authorized by 列表中,选择用户通过身份验证的源。

      • INTERNAL :用于在卫星服务器中管理用户。
      • EXTERNAL :配置外部身份验证,如 在连接 的网络环境中安装卫星服务器中的配置外部身份验证 中所述。
    2. Password 字段和 Verify 字段中输入用户 的初始密码
  10. 单击 Submit 以创建该用户。

CLI 过程

  • 运行以下命令来创建用户:

    # hammer user create \
    --auth-source-id My_Authentication_Source \
    --login My_User_Name \
    --mail My_User_Mail \
    --organization-ids My_Organization_ID_1,My_Organization_ID_2 \
    --password My_User_Password

    --auth-source-id 1 设置表示用户在内部进行身份验证,您可以将外部身份验证源指定为替代方案。添加 --admin 选项,为用户授予管理员权限。不需要指定机构 ID,您可以稍后使用 update 子命令修改用户详情。

有关用户相关子命令的更多信息,请输入 hammer user --help

9.1.2. 为用户分配角色

使用这个流程为用户分配角色。要使用 CLI 而不是 Satellite Web UI,请参阅 CLI 过程

流程

  1. 在 Satellite Web UI 中,进入到 Administer > Users
  2. 单击 要为其分配一个或多个角色的用户的用户名。

    注意

    如果没有列出用户帐户,请检查您当前是否查看正确的机构。要列出卫星中的所有用户,请单击 Default Organization,然后单击 Any Organization

  3. 单击 Locations 选项卡,然后在未分配任何位置时选择一个位置。
  4. 单击 Organizations 选项卡,再检查组织是否已分配。
  5. 单击 Roles 选项卡,以显示可用角色的列表。
  6. Roles 列表中选择要分配的角色。

    若要授予所有可用权限,请选中 Admin 复选框。

  7. Submit

若要查看分配给用户的角色,请单击 Roles 选项卡;分配的角色列在已 选项下。若要移除所分配角色,可单击 Selected items 中的角色名称。

CLI 过程

  • 要为用户分配角色,请输入以下命令:

    # hammer user add-role --id user_id --role role_name

9.1.3. 模拟不同的用户帐户

管理员可以以不同的用户身份临时登录到 Satellite Web UI 来模拟其他经过身份验证的用户进行测试和故障排除。在模拟另一个用户时,管理员有权精确访问系统中模拟用户可以访问的内容,包括同一菜单。

创建审计是为了记录管理员在模拟另一个用户时执行的操作。但是,管理员在模拟另一个用户时执行的所有操作都会记录为被模拟用户执行的。

前提条件

  • 确保您以具有 Satellite 管理员特权的用户身份登录到 Satellite Web UI。

流程

  1. 在 Satellite Web UI 中,进入到 Administer > Users
  2. 在您要模拟的用户右侧,从 Actions 列中的列表中,选择 Impersonate

当您想停止模拟会话时,在主菜单的右上角,单击模拟图标。

9.1.4. 创建仅限 API 的用户

您可以创建只能与 Satellite API 交互的用户。

前提条件

流程

  1. 以 admin 用户身份登录您的 Satellite。
  2. 导航到 Administer > Users 并选择用户。
  3. User 选项卡中,设置密码。不要保存或与其它密码保存或通信。您可以在控制台中创建伪随机字符串:

    # openssl rand -hex 32
  4. 为用户创建个人访问令牌。如需更多信息,请参阅 第 9.3.1 节 “创建一个个人访问令牌”