Amazon Relational Database Service
用户指南 (API Version 2014-10-31)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

允许 Amazon Aurora 访问 Amazon S3 资源

Aurora 可以访问 Amazon S3 资源来加载数据或者保存来自 Aurora 数据库群集的数据。但是,您必须先创建 IAM 策略,提供允许 Aurora 访问 Amazon S3 的存储桶和对象权限。

下表列出了可代表您访问 Amazon S3 存储桶的 Aurora 功能,以及各个功能所需的最低存储桶和对象权限。

功能 存储桶权限 对象权限

LOAD DATA FROM S3

ListBucket

GetObject

GetObjectVersion

LOAD XML FROM S3

ListBucket

GetObject

GetObjectVersion

SELECT INTO OUTFILE S3

ListBucket

AbortMultipartUpload

DeleteObject

GetObject

ListMultipartUploadParts

PutObject

您可以按照以下步骤创建一个 IAM 策略,以便为 Aurora 提供必需的最少权限来代表您访问 Amazon S3 存储桶。要允许 Aurora 访问您的所有 Amazon S3 存储桶,可以跳过这些步骤并使用 AmazonS3ReadOnlyAccessAmazonS3FullAccess 预定义的 IAM 策略而不是创建自己的策略。

创建 IAM 策略来授予对您的 Amazon S3 资源的访问权限

  1. 打开 IAM 控制台

  2. 在导航窗格中,选择 Policies

  3. 选择 Create Policy

  4. 对于 Policy Generator,选择 Select

  5. Edit Permissions 中,设置以下值以授予存储桶权限:

    • EffectAllow

    • AWS ServiceAmazon S3

    • Actions - 指定 IAM 策略所需的存储桶权限。

      存储桶权限是 Amazon S3 存储桶操作权限,需要对通配符 (*) 或存储桶进行授权。有关 Amazon S3 中存储桶操作权限的更多信息,请参阅在策略中指定权限

    • Amazon Resource Name (ARN) 设置为允许访问的 Amazon S3 存储桶的 ARN。例如,如果您希望允许 Aurora 访问名为 example-bucket 的 Amazon S3 存储桶,请将 ARN 值设置为 arn:aws-cn:s3:::example-bucket

  6. 选择 Add Statement

    注意

    您可以重复此操作和之前的步骤为 Aurora 要访问的每个 Amazon S3 存储桶的策略添加相应的存储桶权限语句。您也可以根据需要授予访问 Amazon S3 中所有存储桶和对象的权限。

  7. Edit Permissions 中,设置以下值授予对象权限:

    • EffectAllow

    • AWS ServiceAmazon S3

    • Actions - 指定 IAM 策略所需的对象权限。

      对象权限是 Amazon S3 对象操作的权限,需要针对存储桶中的对象而不是存储桶本身进行授权。有关 Amazon S3 中对象操作权限的更多信息,请参阅在策略中指定权限

    • Amazon Resource Name (ARN) 设置为允许访问的 Amazon S3 存储桶的 ARN。例如,如果您希望允许 Aurora 访问名为 example-bucket 的 Amazon S3 存储桶中的所有文件,请将 ARN 值设置为 arn:aws-cn:s3:::example-bucket/*

    注意

    您可以将 Amazon Resource Name (ARN) 设置为更具体的 ARN 值,以允许 Aurora 只访问 Amazon S3 存储桶中的特定文件或文件夹。有关如何为 Amazon S3 定义访问策略的更多信息,请参阅管理您的 Amazon S3 资源的访问权限

  8. 选择 Add Statement

    注意

    您可以重复此操作和之前的步骤为 Aurora 要访问的每个 Amazon S3 存储桶的策略添加相应的对象权限语句。您也可以根据需要授予访问 Amazon S3 中所有存储桶和对象的权限。

  9. 选择 Next Step

  10. Policy Name 设置为适合您的 IAM 策略的名称,例如 AllowAuroraToExampleBucket。在创建 IAM 角色与 Aurora 数据库群集关联时,需要使用此名称。您也可以添加可选的 Description 值。

  11. 选择 Create Policy