

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

# Connect 连接到 AWS 服务
<a name="add-connector-services"></a>

**Topics**
+ [连接到 Amazon Redshift](connectors-redshift.md)
+ [连接亚马逊 DynamoDB](connectors-dynamodb.md)
+ [连接到 AWS Lambda](connectors-lambda.md)
+ [连接到亚马逊简单存储服务 (Amazon S3) Service](connectors-s3.md)
+ [连接亚马逊 Aurora](connectors-aurora.md)
+ [Connect 到 Amazon Bedrock](connectors-bedrock.md)
+ [Connect 到 Amazon 简单电子邮件服务](connectors-ses.md)
+ [使用 “其他 AWS 服务” 连接器连接到 AWS 服务](connectors-aws.md)
+ [将加密数据源与 CMKs](encrypted-data-cmk.md)

# 连接到 Amazon Redshift
<a name="connectors-redshift"></a>

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

1. [第 1 步：创建和配置 Amazon Redshift 资源](#connectors-redshift-create-resources)

1. [第 2 步：创建具有相应亚马逊 Redshift 权限的 IAM 策略和角色](#connectors-redshift-iam)

1. [第 3 步：创建亚马逊 Redshift 连接器](#connectors-redshift-create-connector)

## 第 1 步：创建和配置 Amazon Redshift 资源
<a name="connectors-redshift-create-resources"></a>

使用以下过程创建和配置要用于 App Studio 的 Amazon Redshift 资源。

**设置 Amazon Redshift 以与 App Studio 配合使用**

1. 登录 AWS 管理控制台 并打开亚马逊 Redshift 控制台，网址为。[https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/)

   我们建议使用中创建的管理用户[创建管理用户来管理 AWS 资源](setting-up-first-time-admin.md#setting-up-create-admin-user)。

1. 创建 Redshift 无服务器数据仓库或预配置集群。有关更多信息，请参阅《*亚马逊* Redshift 用户指南》中的 “[使用 Redshift Serverless 创建数据仓库](https://docs.aws.amazon.com/redshift/latest/gsg/new-user-serverless.html#serverless-console-resource-creation)[” 或 “创建集群](https://docs.aws.amazon.com/redshift/latest/mgmt/managing-clusters-console.html#create-cluster)”。

1. 配置完成后，选择 “**查询数据**” 以打开查询编辑器。连接到数据库。

1. 更改以下设置：

   1. 将 “**隔离会话**” 切换开关设置为`OFF`。这是必需的，这样您才能看到其他用户所做的数据更改，例如来自正在运行的 App Studio 应用程序所做的更改。

   1. 选择 “齿轮” 图标。选择 **Account settings (账户设置)**。将**最大并发连接数**增加到`10`。这是可以连接到 Amazon Redshift 数据库的查询编辑器会话数量的限制。它不适用于其他客户端，例如 App Studio 应用程序。

1. 在`public`架构下创建您的数据表。 `INSERT`这些表中的任何初始数据。

1. 在查询编辑器中运行以下命令：

   以下命令创建数据库用户并将其与 App Studio *AppBuilderDataAccessRole* 使用的名为 IAM 角色关联起来。您将在后面的步骤中创建 IAM 角色，此处的名称必须与为该角色指定的名称相匹配。

   ```
   CREATE USER "IAMR:AppBuilderDataAccessRole" WITH PASSWORD DISABLE;
   ```

   以下命令向 App Studio 授予所有表的所有权限。
**注意**  
为了获得最佳安全实践，您应将此处的权限范围缩小到相应表所需的最低权限。有关该`GRANT`命令的更多信息，请参阅 Amazon Redshift 数据库开发者指南中的[授权](https://docs.aws.amazon.com/redshift/latest/dg/r_GRANT.html)。

   ```
   GRANT ALL ON ALL TABLES IN SCHEMA public to "IAMR:AppBuilderDataAccessRole";
   ```

## 第 2 步：创建具有相应亚马逊 Redshift 权限的 IAM 策略和角色
<a name="connectors-redshift-iam"></a>

要在 App Studio 中使用 Amazon Redshift 资源，管理员必须创建 IAM 策略和角色来授予 App Studio 访问资源的权限。IAM 策略控制构建者可以使用的数据范围以及可以针对这些数据调用的操作，例如创建、读取、更新或删除。然后，IAM 策略将附加到 App Studio 使用的 IAM 角色。

我们建议为每项服务和策略至少创建一个 IAM 角色。例如，如果构建者在 Amazon Redshift 中创建两个由不同表支持的应用程序，则管理员应创建两个 IAM 策略和角色，分别为 Amazon Redshift 中的每个表创建一个。

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

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

**创建具有相应亚马逊 Redshift 权限的 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. 键入或粘贴 JSON 策略文档。以下选项卡包含预配置和无服务器 Amazon Redshift 的示例策略。
**注意**  
以下政策适用于所有使用通配符 () 的 Amazon Redshift 资源。`*`为了获得最佳安全实践，您应将通配符替换为要在 App Studio 中使用的资源的亚马逊资源名称 (ARN)。

------
#### [ Provisioned ]

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

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
         {
         "Sid": "ProvisionedRedshiftForAppStudio",
         "Effect": "Allow",
            "Action": [
               "redshift:DescribeClusters",
               "redshift:GetClusterCredentialsWithIAM",
               "redshift-data:ListDatabases",
               "redshift-data:ListTables",
               "redshift-data:DescribeTable",
               "redshift-data:DescribeStatement",
               "redshift-data:ExecuteStatement",
               "redshift-data:GetStatementResult"
            ],
            "Resource": "*"
         }
      ]
   }
   ```

------

------
#### [ Serverless ]

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

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
         {
         "Sid": "ServerlessRedshiftForAppStudio",
         "Effect": "Allow",
            "Action": [
               "redshift-serverless:ListNamespaces",
               "redshift-serverless:GetCredentials",
               "redshift-serverless:ListWorkgroups",
               "redshift-data:ListDatabases",
               "redshift-data:ListTables",
               "redshift-data:DescribeTable",
               "redshift-data:DescribeStatement",
               "redshift-data:ExecuteStatement",
               "redshift-data:GetStatementResult"
            ],
            "Resource": "*"
         }
      ]
   }
   ```

------

------

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

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

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

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

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

**创建 IAM 角色以授予 App Studio 访问亚马逊 Redshift 资源的权限**

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

1. **在左侧导航栏中，选择角色**

1. 选择**创建角色**。

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. 在**添加权限**中，搜索并选择您在上一步中创建的策略（**RedshiftServerlessForAppStudio**或**RedshiftProvisionedForAppStudio**）。选择策略旁边的 **\$1** 将展开策略以显示其授予的权限，选中该复选框将选择该策略。

   选择**下一步**。

1. 在 “**名称、查看和创建**” 页面上，提供**角色名称**和**描述**。
**重要**  
此处的角色名称必须与 [第 1 步：创建和配置 Amazon Redshift 资源](#connectors-redshift-create-resources) (*AppBuilderDataAccessRole*) 中`GRANT`命令中使用的角色名称相匹配。

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

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

## 第 3 步：创建亚马逊 Redshift 连接器
<a name="connectors-redshift-create-connector"></a>

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

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

**为亚马逊 Redshift 创建连接器**

1. 导航到 App Studio。

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

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

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

1. 通过填写以下字段来配置您的连接器：
   + **名称：**为您的连接器提供一个名称。
   + **描述：**为您的连接器提供描述。
   + **IAM 角色：**输入中创建的 IAM 角色的亚马逊资源名称 (ARN)。[步骤 2b：创建一个 IAM 角色以授予 App Studio 访问亚马逊 Redshift 资源的权限](#connectors-redshift-iam-role)有关 IAM 的更多信息，请参阅《IAM 用户指南》[https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html)。
   + **区域：**选择您的亚马逊 Redshift 资源所在的地 AWS 区。
   + **计算类型：**选择您使用的是 Amazon Redshift Serverless 还是预配置集群。
   + 选择@@ **集群或工作组：如果选择** “**已配置**”，请选择要连接到 App Studio 的集群。如果选择了**无服务器**，请选择工作组。
   + **数据库选择：**选择要连接到 App Studio 的数据库。
   + **可用表：**选择要连接到 App Studio 的表。

1. 选择**下一步**。查看连接信息，然后选择**创建**。

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

# 连接亚马逊 DynamoDB
<a name="connectors-dynamodb"></a>

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

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

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

1. [创建 DynamoDB 连接器](#connectors-dynamodb-create-connector)

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

使用以下过程创建和配置要用于 App Studio 的 DynamoDB 资源。

**设置 DynamoDB 以与 App Studio 配合使用**

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

   我们建议使用中创建的管理用户[创建管理用户来管理 AWS 资源](setting-up-first-time-admin.md#setting-up-create-admin-user)。

1. 在左侧导航窗格中，选择 **表**。

1. 选择**创建表**。

1. 输入桌子的名称和密钥。

1. 选择**创建表**。

1. 创建表格后，向其中添加一些项目，以便在表格连接到 App Studio 后它们就会出现。

   1. 选择您的表格，选择**操作**，然后选择**浏览项目**。

   1. 在**退回的商品**中，选择**创建商品**。

   1. （可选）：选择**添加新属性**可向表中添加更多属性。

   1. 为每个属性输入值，然后选择**创建项目**。

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

要在 App Studio 中使用 DynamoDB 资源，管理员必须创建 IAM 策略和角色来授予 App Studio 访问资源的权限。IAM 策略控制构建者可以使用的数据范围以及可以对这些数据调用的操作，例如创建、读取、更新或删除。然后，IAM 策略将附加到 App Studio 使用的 IAM 角色。

我们建议为每项服务和策略至少创建一个 IAM 角色。例如，如果构建者要在 DynamoDB 中创建两个由相同表支持的应用程序，一个只需要读取权限，另一个需要读取、创建、更新和删除；管理员应创建两个 IAM 角色，一个使用只读权限，另一个拥有对 DynamoDB 中适用表的完整 CRUD 权限。

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

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

**创建具有相应 DynamoDB 权限的 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. 键入或粘贴 JSON 策略文档。以下选项卡包含对 DynamoDB 表的只读和完全访问权限的策略示例，以及包含使用客户管理密钥 (CMK) 加密的 DynamoDB 表的 AWS KMS 权限的策略示例。 AWS KMS 
**注意**  
以下策略适用于使用通配符 () 的所有 DynamoDB 资源。`*`为了获得最佳安全实践，您应将通配符替换为要在 App Studio 中使用的资源的亚马逊资源名称 (ARN)。

------
#### [ Read only ]

   以下策略授予对已配置的 DynamoDB 资源的读取权限。

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

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
         {
         "Sid": "ReadOnlyDDBForAppStudio",
         "Effect": "Allow",
            "Action": [
               "dynamodb:ListTables",
               "dynamodb:DescribeTable",
               "dynamodb:PartiQLSelect"
            ],
            "Resource": "*"
         }
      ]
   }
   ```

------

------
#### [ Full access ]

   以下策略授予对已配置的 DynamoDB 资源的创建、读取、更新和删除权限。

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

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
         {
         "Sid": "FullAccessDDBForAppStudio",
         "Effect": "Allow",
            "Action": [
              "dynamodb:ListTables",
              "dynamodb:DescribeTable",
              "dynamodb:PartiQLSelect",
              "dynamodb:PartiQLInsert",
              "dynamodb:PartiQLUpdate",
              "dynamodb:PartiQLDelete"
            ],
            "Resource": "*"
         }
      ]
   }
   ```

------

------
#### [ Read only - KMS encrypted ]

   以下策略通过提供权限来授予对配置的加密 DynamoDB 资源的读取权限。 AWS KMS 您必须将 ARN 替换为密钥的 ARN。 AWS KMS 

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "ReadOnlyDDBForAppStudio",
               "Effect": "Allow",
               "Action": [
                   "dynamodb:ListTables",
                   "dynamodb:DescribeTable",
                   "dynamodb:PartiQLSelect"
               ],
               "Resource": "*"
           },
           {
               "Sid": "KMSPermissionsForEncryptedTable",
               "Effect": "Allow",
               "Action": [
                   "kms:Decrypt",
                   "kms:DescribeKey"
               ],
               "Resource": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
           }
       ]
   }
   ```

------

------
#### [ Full access - KMS encrypted ]

   以下策略通过提供权限来授予对配置的加密 DynamoDB 资源的读取权限。 AWS KMS 您必须将 ARN 替换为密钥的 ARN。 AWS KMS 

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "ReadOnlyDDBForAppStudio",
               "Effect": "Allow",
               "Action": [
                   "dynamodb:ListTables",
                   "dynamodb:DescribeTable",
                   "dynamodb:PartiQLSelect",
                   "dynamodb:PartiQLInsert",
                   "dynamodb:PartiQLUpdate",
                   "dynamodb:PartiQLDelete"
               ],
               "Resource": "*"
           },
           {
               "Sid": "KMSPermissionsForEncryptedTable",
               "Effect": "Allow",
               "Action": [
                   "kms:Decrypt",
                   "kms:DescribeKey"
               ],
               "Resource": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
           }
       ]
   }
   ```

------

------

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

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

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

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

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

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

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. 在**添加权限**中，搜索并选择您在上一步中创建的策略（**ReadOnlyDDBForAppStudio**或**FullAccessDDBForAppStudio**）。选择策略旁边的 **\$1** 将展开策略以显示其授予的权限，选中该复选框将选择该策略。

   选择**下一步**。

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

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

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

## 创建 DynamoDB 连接器
<a name="connectors-dynamodb-create-connector"></a>

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

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

**为 DynamoDB 创建连接器**

1. 导航到 App Studio。

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

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

1. 从连接**器类型列表中选择 Amazon** DynamoDB。

1. 通过填写以下字段来配置您的连接器：
   + **名称：**输入您的 DynamoDB 连接器的名称。
   + **描述：**输入您的 DynamoDB 连接器的描述。
   + **IAM 角色：**输入中创建的 IAM 角色的亚马逊资源名称 (ARN)。[步骤 2b：创建一个 IAM 角色以授予 App Studio 对 DynamoDB 资源的访问权限](#connectors-dynamodb-iam-role)有关 IAM 的更多信息，请参阅《IAM 用户指南》[https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html)。
   + **区域：**选择您的 DynamoDB 资源所在的 AWS 区域。
   + **可用表：**选择要连接到 App Studio 的表。

1. 选择**下一步**。查看连接信息，然后选择**创建**。

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

# 连接到 AWS Lambda
<a name="connectors-lambda"></a>

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

1. [步骤 1：创建和配置 Lambda 函数](#connectors-lambda-create-resources)

1. [第 2 步：创建一个 IAM 角色以授予 App Studio 访问 Lambda 资源的权限](#connectors-lambda-iam-role)

1. [步骤 3：创建 Lambda 连接器](#connectors-lambda-create-connector)

## 步骤 1：创建和配置 Lambda 函数
<a name="connectors-lambda-create-resources"></a>

如果您没有现有 Lambda 函数，则必须先创建它们。要了解有关创建 Lambda 函数的更多信息，请参阅[AWS Lambda 开发人员](https://docs.aws.amazon.com/lambda/latest/dg/)指南。

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

要在 App Studio 中使用 Lambda 资源，管理员必须创建一个 IAM 角色来授予 App Studio 访问资源的权限。IAM 角色控制应用程序可以从 Lambda 访问的资源或操作。

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

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

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. 在**添加权限**中，搜索并选择为角色授予相应权限的策略。选择策略旁边的 **\$1** 将展开策略以显示其授予的权限，选中该复选框将选择该策略。对于 Lambda，您可以考虑添加策略，该`AWSLambdaRole`策略授予调用 Lambda 函数的权限。

   有关在 Lambda 中使用 IAM 策略的更多信息，包括托管策略列表及其描述，请参阅*AWS Lambda 开发人员*指南 AWS Lambda中的[身份和访问管理](https://docs.aws.amazon.com/lambda/latest/dg/security-iam.html)。

   选择**下一步**。

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

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

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

## 步骤 3：创建 Lambda 连接器
<a name="connectors-lambda-create-connector"></a>

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

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

**为 Lambda 创建连接器**

1. 导航到 App Studio。

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

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

1. 从连接器类型列表中选择 “**其他 AWS 服务**”。

1. 通过填写以下字段来配置您的连接器：
   + **名称：**输入您的 Lambda 连接器的名称。
   + **描述：**输入您的 Lambda 连接器的描述。
   + **IAM 角色：**输入中创建的 IAM 角色的亚马逊资源名称 (ARN)。[第 2 步：创建一个 IAM 角色以授予 App Studio 访问 Lambda 资源的权限](#connectors-lambda-iam-role)有关 IAM 的更多信息，请参阅《IAM 用户指南》[https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html)。
   + **服务：**选择 **Lambda**。
   + **区域：**选择您的 Lambda 资源所在的 AWS 区域。

1. 选择**创建**。

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

# 连接到亚马逊简单存储服务 (Amazon S3) Service
<a name="connectors-s3"></a>

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

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

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

1. [步骤 3：创建 Amazon S3 连接器](#connectors-s3-create-connector)

在您完成步骤并使用适当权限创建连接器后，构建者可以使用连接器创建与 Amazon S3 资源交互的应用程序。有关在 App Studio 应用程序中与 Amazon S3 交互的更多信息，请参阅[使用组件和自动化与 Amazon 简单存储服务交互](automations-s3.md)。

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

根据应用程序的需求和现有资源，您可能需要创建一个 Amazon S3 存储桶，供应用程序写入和读取。有关创建 Amazon S3 资源（包括存储桶）的信息，请参阅《[亚马逊*简单存储服务用户指南》中的 Amazon* S3 入门](https://docs.aws.amazon.com/AmazonS3/latest/userguide/GetStartedWithS3.html)。

要在应用程序中使用该[S3 上传](components-reference.md#s3-upload-component)组件，您必须将跨源资源共享 (CORS) 配置添加到要上传到的任何 Amazon S3 存储桶。CORS 配置授予 App Studio 向存储桶推送对象的权限。以下过程详细介绍了如何使用控制台向 Amazon S3 存储桶添加 CORS 配置。有关 CORS 及其配置的更多信息，请参阅 A *mazon 简单存储服务*用户指南中的[使用跨源资源共享 (CORS)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/cors.html)。

**在控制台中向 Amazon S3 存储桶添加 CORS 配置**

1. 在中导航到您的存储桶[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。

1. 选择**权限**选项卡。

1. **在**跨源资源共享 (CORS)** 中，选择编辑。**

1. 添加以下片段：

   ```
   [
       {
           "AllowedHeaders": [
               "*"
           ],
           "AllowedMethods": [
               "PUT",
               "POST"
           ],
           "AllowedOrigins": [
               "*"
           ],
           "ExposeHeaders": []
       }
   ]
   ```

1. 选择**保存更改**。

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

要在 App Studio 中使用 Amazon S3 资源，管理员必须创建 IAM 策略和角色来授予 App Studio 访问资源的权限。IAM 策略控制构建者可以使用的数据范围以及可以针对这些数据调用的操作，例如创建、读取、更新或删除。然后，IAM 策略将附加到 App Studio 使用的 IAM 角色。

我们建议为每项服务和策略至少创建一个 IAM 角色。例如，如果构建者在 Amazon S3 中创建两个由不同存储桶支持的应用程序，则管理员应创建两个 IAM 策略和角色，每个策略和角色对应一个存储桶。

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

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

**创建具有相应 Amazon S3 权限的 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. 键入或粘贴 JSON 策略文档。以下选项卡包含针对 Amazon S3 资源的只读和完全访问权限的示例策略。
**注意**  
以下策略适用于所有使用通配符 (`*`) 的 Amazon S3 资源。为了获得最佳安全实践，您应将通配符替换为要用于 App Studio 的资源（例如存储桶或文件夹）的亚马逊资源名称 (ARN)。

------
#### [ Read only ]

   以下策略授予对已配置的 Amazon S3 存储桶或文件夹的只读访问权限（获取和列出）。

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

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
         {
            "Sid": "S3ReadOnlyForAppStudio",
            "Effect": "Allow",
            "Action": [
               "s3:GetObject",
               "s3:ListBucket"
            ],
            "Resource": "*"
         }
      ]
   }
   ```

------

------
#### [ Full access ]

   以下策略授予对已配置的 Amazon S3 存储桶或文件夹的完全访问权限（放置、获取、列出和删除）。

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

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
         {
            "Sid": "S3FullAccessForAppStudio",
            "Effect": "Allow",
            "Action": [
               "s3:PutObject",
               "s3:GetObject",
               "s3:ListBucket",
               "s3:DeleteObject"
            ],
            "Resource": "*"
         }
      ]
   }
   ```

------

------

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

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

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

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

要在 App Studio 中使用 Amazon S3 资源，管理员必须创建一个 IAM 角色来授予 App Studio 访问资源的权限。IAM 角色控制构建者可以使用的数据范围以及可以针对这些数据调用的操作，例如创建、读取、更新或删除。

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

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

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. 在**添加权限**中，搜索并选择您在上一步中创建的策略（**S3ReadOnlyForAppStudio**或**S3FullAccessForAppStudio**）。选择策略旁边的 **\$1** 将展开策略以显示其授予的权限，选中该复选框将选择该策略。

   选择**下一步**。

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

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

1. 选择**创建角色**并记下生成的亚马逊资源名称 (ARN)，下一步您将需要它来在 App Studio 中创建 Amazon S3 连接器。

## 步骤 3：创建 Amazon S3 连接器
<a name="connectors-s3-create-connector"></a>

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

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

**为 Amazon S3 创建连接器**

1. 导航到 App Studio。

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

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

1. 选择 **Amazon S3** 连接器。

1. 通过填写以下字段来配置您的连接器：
   + **名称：**输入您的 Amazon S3 连接器的名称。
   + **描述：**输入您的 Amazon S3 连接器的描述。
   + **IAM 角色：**输入中创建的 IAM 角色的亚马逊资源名称 (ARN)。[步骤 2b：创建一个 IAM 角色以授予 App Studio 访问亚马逊 S3 资源的权限](#connectors-s3-iam-role)有关 IAM 的更多信息，请参阅《IAM 用户指南》[https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html)。
   + **区域：**选择您的 Amazon S3 资源所在的 AWS 区域。

1. 选择**创建**。

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

# 连接亚马逊 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 连接器。新创建的连接器将出现在**连接**器列表中。

# Connect 到 Amazon Bedrock
<a name="connectors-bedrock"></a>

要将 App Studio 与 Amazon Bedrock 连接起来，以便构建者可以在应用程序中访问和使用 Amazon Bedrock，您必须执行以下步骤：

1. [第 1 步：启用 Amazon Bedrock 模型](#connectors-bedrock-model-access)

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

1. [第 3 步：创建 Amazon Bedrock 连接器](#connectors-bedrock-create-connector)

## 第 1 步：启用 Amazon Bedrock 模型
<a name="connectors-bedrock-model-access"></a>

使用以下步骤启用 Amazon Bedrock 模型。

**启用 Amazon Bedrock 模型**

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

1. 在左侧导航窗格中，选择**模型访问权限**。

1. 启用要使用的模型。有关更多信息，请参阅[管理对 Amazon Bedrock 基础模型的访问权限](https://docs.aws.amazon.com/bedrock/latest/userguide/model-access.html)。

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

要在 App Studio 中使用 Amazon Bedrock 资源，管理员必须创建 IAM 策略和角色来授予 App Studio 访问资源的权限。IAM 策略控制可以针对这些资源调用哪些资源以及哪些操作，例如`InvokeModel`。然后，IAM 策略将附加到 App Studio 使用的 IAM 角色。

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

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

**创建具有相应 Amazon Bedrock 权限的 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. 键入或粘贴 JSON 策略文档。以下示例策略使用通配符 () `InvokeModel` `*` 对所有 Amazon Bedrock 资源进行了规定。

   为了获得最佳安全实践，您应将通配符替换为要在 App Studio 中使用的资源的亚马逊资源名称 (ARN)。

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

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
         {
            "Sid": "BedrockAccessForAppStudio",
            "Effect": "Allow",
            "Action": [
               "bedrock:InvokeModel"
            ],
            "Resource": "*"
         }
      ]
   }
   ```

------

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

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

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

### 步骤 2b：创建一个 IAM 角色以授予 App Studio 访问亚马逊 Bedrock 的权限
<a name="connectors-bedrock-iam-role"></a>

要将 Amazon Bedrock 与 App Studio 配合使用，管理员必须创建一个 IAM 角色来授予 App Studio 访问资源的权限。IAM 角色控制 App Studio 应用程序使用的权限范围，并在创建连接器时使用。我们建议为每个服务和策略至少创建一个 IAM 角色。

**创建 IAM 角色以授予 App Studio 访问亚马逊 Bedrock 的权限**

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. 在**添加权限**中，搜索并选择您在上一步中创建的策略（**BedrockAccessForAppStudio**）。选择策略旁边的 **\$1** 将展开策略以显示其授予的权限，选中该复选框将选择该策略。

   选择**下一步**。

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

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

1. 选择**创建角色**并记下生成的亚马逊资源名称 (ARN)，下一步在 App Studio 中创建 Amazon Bedrock 连接器时将需要该名称。

## 第 3 步：创建 Amazon Bedrock 连接器
<a name="connectors-bedrock-create-connector"></a>

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

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

**为 Amazon Bedrock 创建连接器**

1. 导航到 App Studio。

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

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

1. 从连接器类型列表中选择**其他 AWS 服务**。

1. 通过填写以下字段来配置您的连接器：
   + **名称：**输入您的 Amazon Bedrock 连接器的名称。
   + **描述：**输入您的 Amazon Bedrock 连接器的描述。
   + **IAM 角色：**输入中创建的 IAM 角色的亚马逊资源名称 (ARN)。[步骤 2b：创建一个 IAM 角色以授予 App Studio 访问亚马逊 Bedrock 的权限](#connectors-bedrock-iam-role)有关 IAM 的更多信息，请参阅《IAM 用户指南》[https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html)。
   + **服务：**选择 B **edrock 运行时**。
**注意**  
**基岩运行时**用于对托管在 Amazon Bedrock 中的模型发出推理请求，而 B **edrock** 则用于管理、训练和部署模型。
   + **区域：**选择您的 AWS Amazon Bedrock 资源所在的地区。

1. 选择**创建**。

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

# Connect 到 Amazon 简单电子邮件服务
<a name="connectors-ses"></a>

要将 App Studio 与 Amazon SES 连接起来，使构建者能够使用它从其应用程序发送电子邮件通知，您必须执行以下步骤：

1. [步骤 1：配置 Amazon SES 资源](#connectors-ses-create-resources)

1. [第 2 步：创建具有相应的 Amazon SES 权限的 IAM 策略和角色](#connectors-ses-iam-policy-role)

1. [第 3 步：创建 Amazon SES 连接器](#connectors-ses-create-connector)

## 步骤 1：配置 Amazon SES 资源
<a name="connectors-ses-create-resources"></a>

如果没有，则必须先将 Amazon SES 配置为使用它来发送电子邮件。要了解有关设置 Amazon SES 的更多信息，请参阅《[亚马逊简单电子邮件服务*开发者指南》中的 “亚马逊简单电子邮件服务*入门](https://docs.aws.amazon.com/ses/latest/dg/getting-started.html)”。

## 第 2 步：创建具有相应的 Amazon SES 权限的 IAM 策略和角色
<a name="connectors-ses-iam-policy-role"></a>

要在 App Studio 中使用 Amazon SES 资源，管理员必须创建一个 IAM 角色来授予 App Studio 访问资源的权限。IAM 角色控制可以在 App Studio 应用程序中使用哪些 Amazon SES 功能或资源。

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

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

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

**创建具有相应 Amazon SES 权限的 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. 键入或粘贴以下 JSON 策略文档。
**注意**  
以下策略适用于所有使用通配符 (`*`) 的 Amazon SES 资源。为了获得最佳安全实践，您应将通配符替换为要在 App Studio 中使用的资源的亚马逊资源名称 (ARN)。

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "VisualEditor0",
               "Effect": "Allow",
               "Action": "ses:SendEmail",
               "Resource": "*"
           }
       ]
   }
   ```

------

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

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

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

### 步骤 2b：创建一个 IAM 角色以授予 App Studio 访问亚马逊 SES 的权限
<a name="connectors-ses-iam-role"></a>

现在，创建一个使用您之前创建的策略的 IAM 角色。App Studio 将使用此政策来访问亚马逊 SES。

**创建 IAM 角色以授予 App Studio 访问亚马逊 SES 的权限**

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

1. **在左侧导航栏中，选择角色**

1. 选择**创建角色**。

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. 在**添加权限**中，搜索并选择您在上一步中创建的策略（**SESForAppStudioPolicy**）。选择策略旁边的 **\$1** 将展开策略以显示其授予的权限，选中该复选框将选择该策略。

   选择**下一步**。

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

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

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

## 第 3 步：创建 Amazon SES 连接器
<a name="connectors-ses-create-connector"></a>

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

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

**为 Amazon SES 创建连接器**

1. 导航到 App Studio。

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

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

1. 从连接器类型列表中选择 “**其他 AWS 服务**”。

1. 通过填写以下字段来配置您的连接器：
   + **名称：**输入您的 Amazon SES 连接器的名称。
   + **描述：**输入您的 Amazon SES 连接器的描述。
   + **IAM 角色：**输入中创建的 IAM 角色的亚马逊资源名称 (ARN)。[步骤 2b：创建一个 IAM 角色以授予 App Studio 访问亚马逊 SES 的权限](#connectors-ses-iam-role)有关 IAM 的更多信息，请参阅《IAM 用户指南》[https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html)。
   + **服务：**选择 “**简单电子邮件服务**”。
   + **区域：**选择您的 AWS Amazon SES 资源所在的地区。

1. 选择**创建**。

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

# 使用 “其他 AWS 服务” 连接器连接到 AWS 服务
<a name="connectors-aws"></a>

虽然 App Studio 提供了一些特定于某些 AWS 服务的连接器，但您也可以使用其他 AWS 服务连接器连接到**其他 AWS 服务**。

**注意**  
如果 AWS 服务专用的连接器可用，建议使用该连接器。

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

1. [创建 IAM 角色以授予 App Studio 对 AWS 资源的访问权限](#connectors-aws-iam-role)

1. [创建**其他 AWS 服务**连接器](#connectors-aws-create-connector)

## 创建 IAM 角色以授予 App Studio 对 AWS 资源的访问权限
<a name="connectors-aws-iam-role"></a>

要在 App Studio 中使用 AWS 服务和资源，管理员必须创建一个 IAM 角色来授予 App Studio 访问资源的权限。IAM 角色控制构建者可以访问的资源范围以及可以对这些资源调用的操作。我们建议为每项服务和策略至少创建一个 IAM 角色。

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

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. 在**添加权限**中，搜索并选择为角色授予相应权限的策略。选择策略旁边的 **\$1** 将展开策略以显示其授予的权限，选中该复选框将选择该策略。有关 IAM 的更多信息，请参阅《IAM 用户指南》[https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html)。

   选择**下一步**。

1. 在**角色详细信息**中，提供名称和描述。

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

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

## 创建**其他 AWS 服务**连接器
<a name="connectors-aws-create-connector"></a>

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

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

**使用 “**其他 AWS 服务” 连接器连接到 AWS 服务****

1. 导航到 App Studio。

1. 在左侧导航栏的**管理**区域，选择**连接器**。

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

1. 在 “支持的** AWS 服务” 列表的 “**AWS 连接器**” 部分中选择 “其他**服务”。

1. 通过填写以下字段来配置您的 AWS 服务连接器：
   + **名称：**为您的连接器提供一个名称。
   + **描述：**为您的连接器提供描述。
   + **IAM 角色：**输入中创建的 IAM 角色的亚马逊资源名称 (ARN)。[创建 IAM 角色以授予 App Studio 对 AWS 资源的访问权限](#connectors-aws-iam-role)
   + **服务：**选择要连接到 App Studio 的 AWS 服务。
   + **区域：**选择 AWS 您的 AWS 资源所在的地区。

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

# 将加密数据源与 CMKs
<a name="encrypted-data-cmk"></a>

本主题包含有关设置 App Studio 并将其连接到使用[AWS KMS 客户托管密钥 (CMK)](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) 加密的数据源的信息。

**Contents**
+ [使用加密的托管数据存储表](#encrypted-data-cmk-managed-data)
+ [使用加密的 DynamoDB 表](#encrypted-data-cmk-ddb)

## 使用加密的托管数据存储表
<a name="encrypted-data-cmk-managed-data"></a>

使用以下过程对 App Studio 应用程序中的托管存储实体使用的 DynamoDB 表进行加密。有关托管数据实体的更多信息，请参阅[AWS App Studio 中的管理数据实体](managed-data-entities.md)。

**使用加密的托管数据存储表**

1. 如有必要，在 App Studio 的应用程序中创建托管数据实体。有关更多信息，请参阅 [使用 App Studio 托管数据源创建实体](data-entities-create.md#data-entities-create-managed-data-source)。

1. 通过执行以下步骤，向 `AppStudioManagedStorageDDBAccess` IAM 角色添加具有使用您的 CMK 加密和解密表数据的权限的策略声明：

   1. 使用 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 打开 IAM 控制台。
**重要**  
您必须使用用于创建 App Studio 实例的相同帐户。

   1. 在 IAM 控制台的导航窗格中，选择**角色**。

   1. 选择 `AppStudioManagedStorageDDBAccess`。

   1. 在 “**权限策略**” 中，选择 “**添加权限**”，然后选择 “**创建内联策略**”。

   1. 选择 **JSON** 并将内容替换为以下策略，替换以下内容：
      + *111122223333*替换为 AWS 用于设置 App Studio 实例的账户的账号，该**AWS 账号在 App Studio 实例的账户设置中作为账户 ID** 列出。
      + 替换*CMK\$1id*为 CMK ID。要找到它，请参阅[查找密钥 ID 和密钥 ARN](https://docs.aws.amazon.com/kms/latest/developerguide/find-cmk-id-arn.html)。

1. 通过执行以下步骤对您的 App Studio 托管数据实体使用的 DynamoDB 表进行加密：

   1. 打开亚马逊 DynamoDB 控制台，网址为。[https://console.aws.amazon.com/dynamodbv2/](https://console.aws.amazon.com/dynamodbv2/)

   1. 选择要加密的表。您可以在 App Studio 中相应实体的 “**连接**” 选项卡中找到表名。

   1. 选择**其他设置**。

   1. 在**加密**中，选择**管理加密**。

   1. 选择 “**存储在您的账户中，由您拥有和管理”，然后选择您**的 CMK。

1. 通过重新发布应用程序来测试您的更改，确保在测试和生产环境中都能读取和写入数据，并在其他实体中使用此表可以按预期工作。
**注意**  
默认情况下，任何新添加的托管数据实体都使用 DynamoDB 托管密钥，并且必须按照前面的步骤更新为使用 CMK。

## 使用加密的 DynamoDB 表
<a name="encrypted-data-cmk-ddb"></a>

使用以下步骤配置要在您的 App Studio 应用程序中使用的加密 DynamoDB 表。

**使用加密的 DynamoDB 表**

1. 按照中的说明[步骤 1：创建和配置 DynamoDB 资源](connectors-dynamodb.md#connectors-dynamodb-create-resources)进行以下更改：

   1. 将您的表配置为加密。有关更多信息，请参阅 *Amazon DynamoD* [B 开发者指南中的为新表指定加密密钥](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/encryption.tutorial.html#encryption.tutorial-creating)。

1. 按照中的说明进行操作[步骤 2：创建具有相应 DynamoDB 权限的 IAM 策略和角色](connectors-dynamodb.md#connectors-dynamodb-iam)，然后通过添加新的策略声明来更新新角色的权限策略，允许该角色使用您的 CMK 加密和解密表数据，方法是执行以下步骤：

   1. 如有必要，请在 IAM 控制台中导航到您的角色。

   1. 在 “**权限策略**” 中，选择 “**添加权限**”，然后选择 “**创建内联策略**”。

   1. 选择 **JSON** 并将内容替换为以下策略，替换以下内容：
      + *team\$1account\$1id*替换为您的 App Studio 团队标识，该ID可以在您的帐户设置中找到。
      + 替换*CMK\$1id*为 CMK ID。要找到它，请参阅[查找密钥 ID 和密钥 ARN](https://docs.aws.amazon.com/kms/latest/developerguide/find-cmk-id-arn.html)。

1. 按照中的说明创建连接器，[创建 DynamoDB 连接器](connectors-dynamodb.md#connectors-dynamodb-create-connector)并使用您之前创建的角色。

1. 通过将使用 DynamoDB 连接器和表格的应用程序发布到 “测试” 或 “生产” 来测试配置。确保读取和写入数据正常工作，并且使用此表创建另一个实体也能正常工作。
**注意**  
创建任何新的 DynamoDB 表时，必须按照前面的步骤将其配置为使用 CMK 进行加密。