

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 連線至 Amazon 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 Serverless 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 管理主控台 ，並在 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)：// 開啟 Amazon 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 資料庫叢集。

Aurora MySQL 不支援從支援資料 API 或無伺服器 v1 的 UI 建立版本。若要建立支援資料 API 的 Aurora MySQL 叢集，您必須使用 AWS CLI。

**注意**  
若要將 Aurora MySQL 資料庫與 App Studio 搭配使用，它們必須位於虛擬私有雲端 (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 管理主控台 並開啟位於 https：//[https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/) 的 Amazon 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. 將現有的程式碼片段取代為下列程式碼片段，將 AWS *111122223333* 取代為包含 Amazon Redshift 和 Aurora 資源的帳號。

------
#### [ 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* 取代為用於設定 App Studio 執行個體的帳戶 AWS 帳號，在 App Studio 執行個體的帳戶設定中列為帳戶 **AWS ID**。
   + 將 *111111111-2222-3333-4444-555555555 *取代為您的 App Studio 執行個體 ID，在 App Studio 執行個體的帳戶設定中列為執行個體 **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. 選擇**建立角色**，並記下產生的 Amazon Resource Name (ARN)，您會[在 App 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. 選擇 **Amazon Aurora** 連接器。

1. 填寫下列欄位來設定您的連接器：
   + **名稱：**輸入 Aurora 連接器的名稱。
   + **描述：**輸入 Aurora 連接器的描述。
   + **IAM 角色：**從在 中建立的 IAM 角色輸入 Amazon Resource Name (ARN)[步驟 2b：建立 IAM 角色，讓 App Studio 存取 Aurora 資源](#connectors-aurora-iam-role)。如需 IAM 的詳細資訊，請參閱《[IAM 使用者指南](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html)》。
   + **秘密 ARN：**輸入資料庫叢集的秘密 ARN。如需有關在何處尋找秘密 ARN 的資訊，請參閱《*Amazon Aurora 使用者指南*》中的[檢視資料庫 cluser 秘密的詳細資訊](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-secrets-manager.html#rds-secrets-manager-view-db-cluster)。
   + **區域：**選擇 Aurora 資源所在的 AWS 區域。
   + **資料庫 ARN：**輸入資料庫叢集的 ARN。您可以在資料庫叢集的**組態**索引標籤中找到 ARN，類似於秘密 ARN。
   + **資料庫類型：**選擇與在 中建立的資料庫類型相符的資料庫類型 **MySQL** 或 **PostgreSQL**[步驟 1：建立和設定 Aurora 資源](#connectors-aurora-create-resources)。
   + **資料庫名稱：**輸入資料庫的名稱，也可以在資料庫叢集的**組態**索引標籤中找到。
   + **可用的資料表：**使用此連接器選取要搭配 App Studio 使用的資料表。

1. 選擇**下一步**以檢閱或定義實體映射。

1. 選擇**建立**以建立 Aurora 連接器。新建立的連接器會出現在**連接器**清單中。