了解存储在 Amazon S3 中的配置 - AWS AppConfig

了解存储在 Amazon S3 中的配置

您可以将配置存储在 Amazon Simple Storage Service (Amazon S3) 存储桶中。在创建配置文件时,将指定存储桶中单个 S3 对象的 URI。您还将指定 AWS Identity and Access Management (IAM) 角色的 Amazon 资源名称 (ARN),该角色向 AWS AppConfig 授予获取对象的权限。在为 Amazon S3 对象创建配置文件之前,请注意以下限制。

限制 详细信息

大小

存储为 S3 对象的配置的最大大小可以为 1 MB。

Object encryption

配置文件可以 SSE-S3 和 SSE-KMS 加密对象为目标。

存储类

AWS AppConfig 支持以下 S3 存储类别:STANDARDINTELLIGENT_TIERINGREDUCED_REDUNDANCYSTANDARD_IAONEZONE_IA。不支持以下类别:所有 S3 Glacier 类别(GLACIERDEEP_ARCHIVE)。

版本控制

AWS AppConfig 要求 S3 对象使用版本控制。

配置存储为 Amazon S3 对象的配置的权限

在为存储为 S3 对象的配置创建配置文件时,您必须为 IAM 角色指定 ARN,该角色向 AWS AppConfig 授予获取对象的权限。该角色必须包括以下权限。

对 S3 对象的访问权限

  • s3:GetObject

  • s3:GetObjectVersion

列出 S3 存储桶的权限

s3:ListAllMyBuckets

对用于存储对象的 S3 存储桶的访问权限

  • s3:GetBucketLocation

  • s3:GetBucketVersioning

  • s3:ListBucket

  • s3:ListBucketVersions

完成以下过程可创建一个角色,该角色使 AWS AppConfig 能够获取存储在 S3 对象中的配置。

创建用于访问 S3 对象的 IAM 策略

使用以下过程可创建一个 IAM 策略,该策略使 AWS AppConfig 能够获取存储在 S3 对象中的配置。

创建用于访问 S3 对象的 IAM 策略
  1. 访问:https://console.aws.amazon.com/iam/,打开 IAM 控制台。

  2. 在导航窗格中,选择 Policies (策略),然后选择 Create policy (创建策略)

  3. 创建策略页面上,选择 JSON 选项卡。

  4. 使用有关 S3 存储桶和配置对象的信息更新以下示例策略。然后将策略粘贴到 JSON 选项卡上的文本字段中。将占位符值 替换为您自己的信息。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/my-configurations/my-configuration.json" }, { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetBucketVersioning", "s3:ListBucketVersions", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket" ] }, { "Effect": "Allow", "Action": "s3:ListAllMyBuckets", "Resource": "*" } ] }
  5. 选择查看策略

  6. Review policy (查看策略) 页面上,在 Name (名称) 框中键入名称,然后键入描述。

  7. 选择创建策略。系统将让您返回到 角色 页面。

创建用于访问 S3 对象的 IAM 角色

使用以下过程可创建一个 IAM 角色,该角色使 AWS AppConfig 能够获取存储在 S3 对象中的配置。

创建一个用于访问 Amazon S3 的 IAM 角色
  1. 通过 https://console.aws.amazon.com/iam/ 打开 IAM 控制台。

  2. 在导航窗格中,选择角色,然后选择创建角色

  3. 选择受信任实体的类型 部分中,选择 AWS服务

  4. Choose a use case (选择使用案例) 部分中,在 Common use cases (常见使用案例) 下,选择 EC2,然后选择 Next: Permissions (下一步: 权限)

  5. Attach permissions policy (附加权限策略) 页面上的搜索框中,输入您在上一过程中创建的策略的名称。

  6. 选择该策略,然后选择 Next: Tags (下一步: 标签)

  7. 添加标签(可选) 页面上,输入密钥和可选值,然后选择 下一步: 审核

  8. Review (审核) 页面上,在 Role name (角色名称) 字段中键入名称,然后键入描述。

  9. 选择 Create role (创建角色)。系统将让您返回到 角色 页面。

  10. 角色页面中,选择刚刚创建的角色以打开摘要页面。记下角色名称角色 ARN。在本主题的后面部分中创建配置文件时,您将指定角色 ARN。

创建信任关系

使用以下过程将您刚刚创建的角色配置为信任 AWS AppConfig。

添加信任关系
  1. 在刚刚创建的角色的摘要页面上,选择信任关系选项卡,然后选择编辑信任关系

  2. 删除 "ec2.amazonaws.com" 并添加 "appconfig.amazonaws.com",如以下示例所示。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "appconfig.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  3. 选择更新信任策略