使用隔离的命名空间支持多租户 - Amazon QuickSight
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用隔离的命名空间支持多租户

Amazon QuickSight 企业版通过命名空间支持多租户。 QuickSight命名空间是一个逻辑容器,可用于组织客户、子公司、团队等。命名空间可以帮助您实现以下目标:

  • 您可以允许 QuickSight 订阅用户发现共享内容并与其他用户共享。同时,您可以确保一个命名空间中的用户无法看到另一个命名空间中的用户或与之交互。

  • 您可以安全地隔离数据并支持各种工作负载,而无需添加其他 Amazon 帐户。对数据的访问仍然受到 Amazon 安全功能的严格控制。只有当用户拥有正确的资源权限时,他们才能看到资产(如数据和控制面板)。此外,拥有权限的用户不能无意中向其命名空间之外的人公开内容。有关更多信息,请参阅 Amazon Amazon 的安全 QuickSight

  • 您可以监控按命名空间整齐划分的数据流和使用情况报告。按命名空间对数据和报告进行分类有助于简化成本和安全分析。

  • 将用户注册到命名空间后,就不会有额外的管理复杂性或开销。

  • 命名空间被设计为跨越命名空间 Amazon Web Services 区域,因此即使有人登录了不同的命名空间,其使用限制也不会改变。 Amazon Web Services 区域

命名空间当前具有以下限制:

  • 自定义命名空间(不是默认命名空间的命名空间)只有 IAM 联合身份验证单点登录用户可以访问。

  • 如果您需要支持以下内容,请使用默认命名空间而不是自定义命名空间:

  • 您不能将用户从一个命名空间直接转移到另一个命名空间。您可以选择以编程方式完成部分或全部工作。有关更多信息,请参阅 Amazon QuickSight API 参考。在每个 API 操作的页面底部,都有指向其他语言的 SDK 中相同操作的链接列表。要查看有哪些 SDK 可用,请参阅Amazon 入门资源中心的 SDK 和工具包

如果您没有现有, Amazon Web Services 账户 或者需要注册,请阅读以下指南 QuickSight,然后按照中的适用说明进行操作注册 QuickSight 订阅 Amazon

如果您已经注册了标准版,则可以轻松地将订阅升级到企业版。执行升级的人员必须是具有管理员权限的 QuickSight 用户。有关更多信息,请参阅 将您的 Amazon QuickSight 订阅从标准版升级到企业版

如果您已经使用了一段时间的企业版订阅,也可以将用户迁移到命名空间。当您注册 QuickSight 并添加用户时,所有用户都位于默认命名空间中。所有用户都可以直接交互,彼此共享数据和控制面板。要将用户彼此隔离,您可以创建一个或多个其他命名空间。

重要

QuickSight 资产和资源(包括数据集、数据源、仪表板、分析等)存在于任何命名空间之外。只有被授予资源权限的用户才能看到它们。

要实现命名空间,您可以使用以下 QuickSight API 操作:

下面列出的区域不支持命名空间:

  • af-south-1非洲(开普敦)

  • ap-southeast-3亚太地区(雅加达)

  • eu-south-1欧洲(米兰)

  • eu-central-2欧洲(苏黎世)

注意

如果需要安装 Amazon CLI,请参阅Amazon Command Line Interface 用户指南中的安装 Amazon CLI 版本 2

要向命名空间添加用户,可以使用 RegisterUserAPI 操作。每个命名空间都有一组完全独立的用户。用户 ARN 包含用于区分用户的命名空间限定符,如以下示例所示:

  • QuickSight 认为这两个实体是不同的人:

    • arn:aws:quicksight:us-east-1:111122223333:user/namespace-123/username123

    • arn:aws:quicksight:us-east-1:111122223333:user/namespace-456/username123

  • QuickSight 认为这两个实体是同一个人:

    • arn:aws:quicksight:us-east-1:111122223333:user/namespace-123/username123

    • arn:aws:quicksight:us-west-2:111122223333:user/namespace-123/username123

使用时 RegisterUser,您可以为每个用户选择访问级别。将某人的用户名分配给其中一个安全群组后,他们对控制台和 API 的访问权限就会受到限制。使用者 QuickSight 可以拥有单一访问级别,如下所示:

  • 读者访问权限,适用于控制面板的只读订阅用户

  • 作者访问权限,适用于分析师和控制面板设计师

  • 管理员权限,适用于 QuickSight 管理员

将一个命名空间中的现有用户迁移到其他命名空间
  1. 使用用户和群组 API 操作确定要转移到其他命名空间的 QuickSight 用户。有关更多信息,请参阅 Amazon API 参考中的用于控制访问 QuickSight 的 API 操作

  2. 使用 RegisterUserAPI 操作在新命名空间中创建用户。在一个命名空间中,用户名是唯一的。

    如果命名空间用户开始在新版本中使用 QuickSight 控制台或 API Amazon Web Services 区域,则该用户仍仅限于您向其添加的命名空间。每个命名空间代表身份提供者的用户目录。因此,它起源 QuickSight 于设置的主要 Amazon Web Services 区域 位置。但是,由于用户目录在您的 Amazon 账户中全球传播,因此用户可以从任何 Amazon Web Services 区域 地方访问该命名空间。 QuickSight

  3. 要确定新命名空间用户所需的资产和资源权限,请使用与每种类型的资产(仪表板、数据集等)关联的 QuickSight API 操作。有关更多信息,请参阅 Amazon QuickSight API 参考中的控制资产 QuickSight 的 API 操作

    例如,假设您专注于控制面板。您可以使用列ListDashboards出 Amazon 账户中的所有控制面板 ID。然后,要确定哪些用户或组可以访问这些控制面板,可以在 ListDashboards 生成的结果集中使用 DescribeDashboardPermissions。如果您需要识别控制面板的特定版本,则可以对其执行 ListDashboardVersions。您还可以通过数据来源和数据集 API 操作收集有关控制面板中使用的数据位置的信息。有关更多信息,请参阅 Amazon QuickSight API 参考中的控制数据资源 QuickSight 的 API 操作

    有关筛选 API 响应输出的更多信息,请参阅所用语言对应的 SDK 文档。有关 Amazon Command Line Interface (Amazon CLI) 的信息,请参阅《Amazon Command Line Interface 用户指南》中的 “控制来自 Amazon CLI 的命令输出”。

  4. 对于 QuickSight 资产和资源,复制源命名空间用户对每项资产的权限。然后,例如,UpdateDashboardPermissions 将相同的权限应用于目标命名空间用户。每种资产类型都有自己的一组单独的 API 操作,用于控制用户必须使用该资产的权限。有关更多信息,请参阅 Amazon QuickSight API 参考中的资产和资源权限 QuickSight 的 API 操作

  5. 添加完用户和权限后,最好留出一些时间进行用户验收测试。这样做可以确保每个人都能成功使用新的命名空间。还确保所有资产和资源都可以在新的命名空间中访问。

    确定不再需要原始用户名后,就可以开始在原始命名空间中弃用其权限。最后,当用户准备就绪时,您可以移除源命名空间中未使用的组和用户名。在用户之前活跃的每个 Amazon Web Services 区域 地方都执行此操作。