设置工作组 - Amazon Athena
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

设置工作组

设置工作组包括创建工作组并为其建立使用权限。首先确定您的组织需要哪些工作组,然后创建它们。然后,设置 IAM 工作组策略以控制 workgroup 资源的用户访问权限和操作。此时,可访问这些工作组的用户可以运行其中的查询。

注意

在第一次开始使用工作组时,使用这些任务设置它们。如果您的 Athena 账户已使用工作组,则每个账户的用户需要相应权限,才能运行该账户中一个或多个工作组中的查询。在运行查询之前,检查 IAM policy 以查看您可以访问的工作组,在需要时调整策略并切换到您要使用的工作组。

默认情况下,如果您尚未创建任何工作组,则账户中的所有查询在主工作组中运行。

Athena 将在控制台右上角显示 Workgroup(工作组)选项中的当前工作组。您可以使用此选项切换工作组。运行查询时,其会在该工作组中运行。您可以通过 API 操作、命令行界面或使用 JDBC 或 ODBC 驱动程序通过客户端应用程序在控制台中运行该工作组上下文中的查询。有权访问工作组时,可以查看工作组的设置、指标和数据使用控制限制。通过其他权限,您可以编辑设置和数据使用控制限制。

设置工作组
  1. 确定要创建的工作组。例如,您可以确定以下几点:

    • 哪些用户可以运行每个工作组中的查询,以及哪些用户拥有工作组配置。这决定了您创建的 IAM policy。有关更多信息,请参阅 用于访问工作组的 IAM policy

    • Amazon S3 中的哪些位置用于各个工作组中运行的查询的查询结果。Amazon S3 中必须存在对应位置,然后您才能为工作组查询结果指定它。使用工作组的所有用户必须能够访问此位置。有关更多信息,请参阅 工作组设置

    • Amazon S3 查询结果存储桶的拥有者对写入存储桶的新对象是否拥有完全控制权。例如,假设您的查询结果位置属于其他账户所有,则可以将所有权以及对查询结果的完全控制权授予该其他账户。有关更多信息,请参阅 AclConfiguration

    • 指定您希望其成为输出位置存储桶拥有者的 Amazon Web Services 账户 ID。这是可选的附加安全措施。如果存储桶拥有者的账户 ID 与您在此处指定的 ID 不匹配,则输出到存储桶的尝试将失败。有关更多信息,请参阅《Amazon S3 用户指南》中的使用存储桶拥有者条件验证存储桶所有权。此设置不适用于 CTAS、INSERT INTO 或 UNLOAD 语句。

    • 需要哪些加密设置,以及哪些工作组中包含必须加密的查询。我们建议您为加密查询和未加密查询创建单独的工作组。由此可以强制实施工作组加密,并应用于其中运行的所有查询。有关更多信息,请参阅 加密在 Amazon S3 中存储的 Athena 查询结果

  2. 根据需要创建工作组,并为它们添加标签。要查看步骤,请参阅 创建工作组

  3. 为您的用户、组或角色创建 IAM policy,使他们能够访问工作组。这些策略建立工作组成员资格,以及对workgroup资源相关操作的访问权限。有关详细步骤,请参阅 用于访问工作组的 IAM policy。有关示例 JSON 策略,请参阅对工作组和标签的访问

  4. 设置工作组设置。指定一个用于存储查询结果的 Amazon S3 位置,此外还可选择指定预期存储桶拥有者、加密设置以及对写入查询结果存储桶的对象的控制权。您可以强制实施工作组设置。有关更多信息,请参阅工作组设置

    重要

    如果您覆盖客户端设置,Athena 将使用工作组的设置。这会影响您在控制台中、使用驱动程序、命令行界面或 API 操作运行的查询。

    虽然查询会继续运行,但基于特定 Amazon S3 存储桶中结果的可用性构建的自动化可能中断。我们建议您先通知您的用户,然后再进行覆盖。在设置要覆盖工作组设置后,您可以省略在驱动程序或 API 中指定客户端设置的操作。

  5. 通知用户哪些工作组将用于运行查询。发送电子邮件。就您账户中用户可使用的工作组、需要的 IAM policy 和工作组设置通知对应用户。

  6. 配置查询和工作组的成本控制限制,也称为数据使用控制限制。如要在超出阈值时收到通知,请创建 Amazon SNS 主题并配置订阅。有关详细步骤,请参阅设置数据使用控制限制和《Amazon Simple Notification Service 开发人员指南》中的 Amazon SNS 入门

  7. 切换到工作组,以便您可以运行查询。要运行查询,请切换到相应的工作组。有关详细步骤,请参阅指定从中运行查询的工作组