

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

# 连接亚马逊 Aurora
<a name="connectors-aurora"></a>

要将 App Studio 与 Aurora 连接以使构建者能够在应用程序中访问和使用 Aurora 资源，您必须执行以下步骤：

1. [步骤 1：创建和配置 Aurora 资源](#connectors-aurora-create-resources)

1. [步骤 2：创建具有相应 Aurora 权限的 IAM 策略和角色](#connectors-aurora-iam)

1. [步骤 3：在 App Studio 中创建 Aurora 连接器](#connectors-aurora-create-connector)

App Studio 支持以下 Aurora 版本：
+ Aurora MySQL 无服务器 V1：5.72
+ Aurora PostgreSQL Serverless V1：11.18、13.9
+ Aurora MySQL Serverless V2：13.11 或更高版本、14.8 或更高版本以及 15.3 或更高版本
+ Aurora PostgreSQL Serverless V2：13.11 或更高版本、14.8 或更高版本以及 15.3 或更高版本

## 步骤 1：创建和配置 Aurora 资源
<a name="connectors-aurora-create-resources"></a>

要在 App Studio 中使用 Aurora 数据库，必须先创建这些数据库并对其进行适当的配置。App Studio 支持两种 Aurora 数据库类型：Aurora PostgreSQL 和 Aurora MySQL。要比较这些类型，请参阅 [MySQL 和 PostgreSQL 有什么区别？](https://aws.amazon.com/compare/the-difference-between-mysql-vs-postgresql/) 。选择相应的选项卡，然后按照步骤设置 Aurora 以与 App Studio 应用程序配合使用。

------
#### [ Aurora PostgreSQL ]

使用以下过程创建和配置要与 App Studio 配合使用的 Aurora PostgreSQL 数据库集群。

**设置 Aurora 以便在 App Studio 中使用**

1. 登录 AWS 管理控制台 并打开 Amazon RDS 控制台，网址为[https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)。

1. 选择**创建数据库**。

1. 选择 **Aurora（兼容 PostgreSQL**）。

1. 在**可用版本**中，选择任何大于或等于版本的版本`13.11``14.8`、和`15.3`。

1. 在**设置**中，输入**数据库集群标识符**。

1. 在**实例配置**中，选择 **Serverless v2** 并选择适当的容量。

1. 在 “**连接**” 中，选择**启用 RDS 数据 API**。

1. 在**数据库身份验证**中，选择 **IAM 数据库身份验证**。

1. 在**其他配置**中，在**初始数据库名称**中，输入数据库的初始数据库名称。

------
#### [ Aurora MySQL ]

使用以下过程创建和配置要与 App Studio 配合使用的 Aurora MySQL 数据库集群。

对于支持数据 API 或无服务器 v1 的版本，Aurora MySQL 不支持通过用户界面创建。要创建支持数据 API 的 Aurora MySQL 集群，必须使用 AWS CLI。

**注意**  
要在 App Studio 中使用 Aurora MySQL 数据库，它们必须位于虚拟私有云 (VPC) 中。有关更多信息，请参阅 *Amazon Aurora 用户指南*[中的在 VPC 中使用数据库集群](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html)。

**设置 Aurora MySQL 以与 App Studio 配合使用**

1. 如有必要，请 AWS CLI 按照*AWS Command Line Interface 用户指南*中的[安装或更新到最新版本 AWS CLI中的](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)说明进行安装。

1. 登录 AWS 管理控制台 并打开 Amazon RDS 控制台，网址为[https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)。

1. 在左侧导航栏中，选择**子网组**。

1. 选择 **Create DB subnet group**（创建数据库子网组）。

1. 填写信息并创建子网组。有关子网组和使用的更多信息 VPCs，请参阅 *Amazon Aurora 用户指南*[中的在 VPC 中使用数据库集群](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html)。

1. 运行以下 AWS CLI 命令：

   ```
   aws rds create-db-cluster --database-name db_name \
       --db-cluster-identifier db_cluster_identifier \
       --engine aurora-mysql \
       --engine-version 5.7.mysql_aurora.2.08.3 \
       --engine-mode serverless \
       --scaling-configuration MinCapacity=4,MaxCapacity=32,SecondsUntilAutoPause=1000,AutoPause=true \
       --master-username userName \
       --master-user-password userPass \
       --availability-zones us-west-2b us-west-2c \
       --db-subnet-group-name subnet-group-name
   ```

   替换以下字段：
   + *db\$1name*替换为所需的数据库名称。
   + *db\$1cluster\$1identifier*替换为所需的数据库集群标识符。
   + （可选）根据需要替换`scaling-configuration`字段中的数字。
   + *userName*替换为所需的用户名。
   + *userPass*替换为所需的密码。
   + 在中`availability-zones`，添加您创建的子网组中的可用区。
   + *subnet-group-name*替换为您创建的子网组的名称。

------

## 步骤 2：创建具有相应 Aurora 权限的 IAM 策略和角色
<a name="connectors-aurora-iam"></a>

要在 App Studio 中使用 Aurora 资源，管理员必须创建一个 IAM 策略并将其关联到一个 IAM 角色，该角色用于授予 App Studio 访问已配置资源的权限。IAM 策略和角色控制构建者可以使用的数据范围以及可以针对这些数据调用的操作，例如创建、读取、更新或删除。

我们建议为每个服务和策略至少创建一个 IAM 角色。

### 步骤 2a：创建具有相应 Aurora 权限的 IAM 策略
<a name="connectors-aurora-iam-policy"></a>

您在 App Studio 中创建和使用的 IAM 策略应仅包含应用程序遵循最佳安全实践所需的相应资源的最低限度权限。

**创建具有相应 Aurora 权限的 IAM 策略**

1. 使用有权创建 [IAM 角色的用户登录 IAM 控制台](https://console.aws.amazon.com/iam)。我们建议使用中创建的管理用户[创建管理用户来管理 AWS 资源](setting-up-first-time-admin.md#setting-up-create-admin-user)。

1. 在左侧导航栏中，选择**策略**。

1. 选择**创建策略**。

1. 在**策略编辑器**部分，选择 **JSON** 选项。

1. 将现有代码段替换为以下代码段，*111122223333*替换为包含亚马逊 Redshift 和 Aurora 资源的 AWS 账号。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "BaselineAuroraForAppStudio",
               "Effect": "Allow",
               "Action": [
                   "rds-data:ExecuteStatement",
                   "secretsmanager:GetSecretValue"
               ],
               "Resource": [
                   "arn:aws:rds:*:111122223333:cluster:*",
                   "arn:aws:secretsmanager:*:111122223333:secret:rds*"
               ]
           }
       ]
   }
   ```

------

1. 选择**下一步**。

1. 在**查看并创建**页面上，提供**策略名称**，例如**Aurora\$1AppStudio**和**描述**（可选）。

1. 选择**创建策略**以创建策略。

### 步骤 2b：创建一个 IAM 角色以授予 App Studio 访问 Aurora 资源的权限
<a name="connectors-aurora-iam-role"></a>

现在，创建一个使用您之前创建的策略的 IAM 角色。App Studio 将使用此策略来访问已配置的 Aurora 资源。

**创建 IAM 角色以授予 App Studio 访问 Aurora 资源的权限**

1. 使用有权创建 [IAM 角色的用户登录 IAM 控制台](https://console.aws.amazon.com/iam)。我们建议使用中创建的管理用户[创建管理用户来管理 AWS 资源](setting-up-first-time-admin.md#setting-up-create-admin-user)。

1. 在控制台的导航窗格中，选择 **Roles**，然后选择 **Create role**。

1. 在**可信实体类型**中，选择**自定义信任策略**。

1. 将默认策略替换为以下策略，以允许 App Studio 应用程序在您的账户中扮演此角色。

   您必须替换策略中的以下占位符。要使用的值可以在 App Studio 的 **“帐户设置”** 页面中找到。
   + *111122223333*替换为 AWS 用于设置 App Studio 实例的账户的账号，该**AWS 账号在 App Studio 实例的账户设置中作为账户 ID** 列出。
   + *11111111-2222-3333-4444-555555555555*替换为您的 App Studio 实例 ID，该**实例在 App Studi** o 实例的账户设置中作为实例 ID 列出。

------
#### [ JSON ]

****  

   ```
   { 
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           { 
               "Effect": "Allow",
               "Principal": { 
                   "AWS": "arn:aws:iam::111122223333:root"
               }, 
               "Action": "sts:AssumeRole",
               "Condition": {
                   "StringEquals": {
                           "aws:PrincipalTag/IsAppStudioAccessRole": "true",
                           "sts:ExternalId": "11111111-2222-3333-4444-555555555555"
                   }
               }
           } 
       ]
   }
   ```

------

   选择**下一步**。

1. 在**添加权限**中，搜索并选择您之前创建的策略（**Aurora\$1AppStudio**）。选择策略旁边的 **\$1** 将展开策略以显示其授予的权限，选中该复选框将选择该策略。

   选择**下一步**。

1. 在 “**名称、查看和创建**” 页面上，提供**角色名称**和**描述**。

1. 在**步骤 3：添加标签**中，选择**添加新标签以添加以下标签**以提供 App Studio 访问权限：
   + **密钥：**`IsAppStudioDataAccessRole`
   + **值：**`true`

1. 选择**创建角色**并记下生成的亚马逊资源名称 (ARN)，在 A [pp Studio 中创建 Aurora 连接器](#connectors-aurora-create-connector)时将需要该名称。

## 步骤 3：在 App Studio 中创建 Aurora 连接器
<a name="connectors-aurora-create-connector"></a>

现在，您已经配置了 Aurora 资源以及 IAM 策略和角色，请使用这些信息在 App Studio 中创建连接器，构建者可以使用该连接器将其应用程序连接到 Aurora。

**注意**  
您必须在 App Studio 中拥有管理员角色才能创建连接器。

**为 Aurora 创建连接器**

1. 导航到 App Studio。

1. 在左侧导航栏的**管理**区域，选择**连接器**。您将进入一个页面，其中显示了现有连接器的列表，其中包含每个连接器的一些详细信息。

1. 选择 **\$1 创建连接器**。

1. 选择**亚马逊 Aurora** 连接器。

1. 通过填写以下字段来配置您的连接器：
   + **名称：**输入 Aurora 连接器的名称。
   + **描述：**输入您的 Aurora 连接器的描述。
   + **IAM 角色：**输入中创建的 IAM 角色的亚马逊资源名称 (ARN)。[步骤 2b：创建一个 IAM 角色以授予 App Studio 访问 Aurora 资源的权限](#connectors-aurora-iam-role)有关 IAM 的更多信息，请参阅《IAM 用户指南》[https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html)。
   + **密钥 ARN：**输入数据库集群的秘密 ARN。有关在何处可以找到密钥 ARN 的信息，请参阅 A *mazon* Aurora [用户指南中的查看有关数据库集群密钥的详细信息](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-secrets-manager.html#rds-secrets-manager-view-db-cluster)。
   + **区域：**选择您的 Aurora 资源所在的 AWS 区域。
   + **数据库 ARN：**输入数据库集群的 ARN。ARN 可以在数据库集群的 “**配置**” 选项卡中找到，类似于秘密 ARN。
   + **数据库类型：**选择与中创建的数据库类型相匹配的数据库类型 **M** yS **Q** L 或 PostgreSQL。[步骤 1：创建和配置 Aurora 资源](#connectors-aurora-create-resources)
   + **数据库名称：**输入数据库的名称，该名称也可以在数据库集群的 “**配置**” 选项卡中找到。
   + **可用表：**使用此连接器选择要在 App Studio 中使用的表。

1. 选择 “**下一步**” 以查看或定义实体映射。

1. 选择**创建以创**建 Aurora 连接器。新创建的连接器将出现在**连接**器列表中。