

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

# 設定邏輯複寫連線的 IAM 身分驗證
<a name="AuroraPostgreSQL.Replication.Logical.IAM-auth"></a>

從 Aurora PostgreSQL 第 11 版及更高版本開始，您可以使用 AWS Identity and Access Management (IAM) 身分驗證進行複寫連線。此功能可讓您使用 IAM 角色而非密碼來管理資料庫存取，以增強安全性。它可在叢集層級運作，並遵循與標準 IAM 身分驗證相同的安全模型。

複寫連線的 IAM 身分驗證是一項選擇加入功能。若要啟用它，請在資料庫叢集`rds.iam_auth_for_replication`參數群組`1`中將 參數設定為 。由於這是動態參數，因此您的資料庫叢集不需要重新啟動，可讓您利用 IAM 身分驗證與現有的工作負載，而無需停機。啟用此功能之前，您必須符合下列[先決條件](#AuroraPostgreSQL.Replication.Logical.IAM-auth-prerequisites)各項。

## 先決條件
<a name="AuroraPostgreSQL.Replication.Logical.IAM-auth-prerequisites"></a>

若要針對複寫連線使用 IAM 身分驗證，您需要符合下列所有要求：
+ 您的 Aurora PostgreSQL 資料庫叢集必須是 11 版或更新版本。
+ 在您的發佈者 Aurora PostgreSQL 資料庫叢集上：
  + 啟用 IAM 資料庫身分驗證。

    如需詳細資訊，請參閱[啟用和停用 IAM 資料庫身分驗證](UsingWithRDS.IAMDBAuth.Enabling.md)。
  + 將 `rds.logical_replication` 參數設定為 以啟用邏輯複寫`1`。

    如需詳細資訊，請參閱[針對 Aurora PostgreSQL 資料庫叢集設定邏輯複寫](AuroraPostgreSQL.Replication.Logical.Configure.md)。

  在邏輯複寫中，發佈者是將資料傳送至訂閱者叢集的來源 Aurora PostgreSQL 資料庫叢集。如需詳細資訊，請參閱[使用 Aurora 進行 PostgreSQL 邏輯複寫的概觀](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Replication.Logical.html)。

**注意**  
您的發佈者 Aurora PostgreSQL 資料庫叢集上必須同時啟用 IAM 身分驗證和邏輯複寫。如果其中一個未啟用，則您無法針對複寫連線使用 IAM 身分驗證。

## 啟用複寫連線的 IAM 身分驗證
<a name="AuroraPostgreSQL.Replication.Logical.IAM-auth-enabling"></a>

完成下列步驟，以啟用複寫連線的 IAM 身分驗證。

1. 確認您的 Aurora PostgreSQL 資料庫叢集符合具有複寫連線的 IAM 身分驗證的所有先決條件。如需詳細資訊，請參閱[先決條件](#AuroraPostgreSQL.Replication.Logical.IAM-auth-prerequisites)。

1. 透過修改資料庫叢集`rds.iam_auth_for_replication`參數群組來設定 參數：
   + 將 `rds.iam_auth_for_replication` 參數設為 `1`。此動態參數不需要重新啟動。

1. 連線至您的資料庫，並將必要的角色授予您的複寫使用者：

   下列 SQL 命令會授予必要角色，以啟用複寫連線的 IAM 身分驗證：

   ```
   -- Grant IAM authentication role
   GRANT rds_iam TO replication_user_name;
   -- Grant replication privileges
   ALTER USER replication_user_name WITH REPLICATION;
   ```

完成這些步驟後，指定的使用者必須使用 IAM 身分驗證進行複寫連線。

**重要**  
當您啟用此功能時，同時具有 `rds_iam`和 `rds_replication`角色的使用者必須使用 IAM 身分驗證進行複寫連線。無論角色是直接指派給使用者或透過其他角色繼承，這都會套用。

## 停用複寫連線的 IAM 身分驗證
<a name="AuroraPostgreSQL.Replication.Logical.IAM-auth-disabling"></a>

您可以使用下列任一方法停用複寫連線的 IAM 身分驗證：
+ 將資料庫叢集`rds.iam_auth_for_replication`參數群組`0`中的 參數設定為
+ 或者，您可以在 Aurora PostgreSQL 資料庫叢集上停用下列其中一項功能：
  + 將 `rds.logical_replication` 參數設定為 以停用邏輯複寫 `0`
  + 停用 IAM 身分驗證

當您停用此功能時，複寫連線可以使用資料庫密碼進行身分驗證，如果已設定。

**注意**  
即使啟用 功能，沒有 `rds_iam`角色的使用者複寫連線也可以使用密碼身分驗證。

## 限制及考量
<a name="AuroraPostgreSQL.Replication.Logical.IAM-auth-limitations"></a>

將 IAM 身分驗證用於複寫連線時，適用下列限制和考量。
+ 複寫連線的 IAM 身分驗證僅適用於 Aurora PostgreSQL 第 11 版及更新版本。
+ 發佈者必須支援複寫連線的 IAM 身分驗證。
+ IAM 身分驗證字符預設會在 15 分鐘後過期。您可能需要在字符過期之前重新整理長時間執行的複寫連線。