本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
設定邏輯複寫連線的 IAM 身分驗證
從 Aurora PostgreSQL 第 11 版及更新版本開始,您可以使用 AWS Identity and Access Management (IAM) 身分驗證進行複寫連線。此功能可讓您使用 IAM 角色而非密碼來管理資料庫存取,以增強安全性。它可在叢集層級運作,並遵循與標準 IAM 身分驗證相同的安全模型。
複寫連線的 IAM 身分驗證是一項選擇加入功能。若要啟用它,請在資料庫叢集rds.iam_auth_for_replication參數群組1中將 參數設定為 。由於這是動態參數,因此您的資料庫叢集不需要重新啟動,可讓您利用 IAM 身分驗證與現有的工作負載,而無需停機。啟用此功能之前,您必須符合下列先決條件各項。
先決條件
若要針對複寫連線使用 IAM 身分驗證,您需要符合下列所有要求:
-
您的 Aurora PostgreSQL 資料庫叢集必須是 11 版或更新版本。
-
在您的發佈者 Aurora PostgreSQL 資料庫叢集上:
-
啟用 IAM 資料庫身分驗證。
如需詳細資訊,請參閱啟用和停用 IAM 資料庫身分驗證。
-
將
rds.logical_replication參數設定為 以啟用邏輯複寫1。如需詳細資訊,請參閱針對 Aurora PostgreSQL 資料庫叢集設定邏輯複寫。
在邏輯複寫中,發佈者是將資料傳送至訂閱者叢集的來源 Aurora PostgreSQL 資料庫叢集。如需詳細資訊,請參閱使用 Aurora 進行 PostgreSQL 邏輯複寫的概觀。
-
注意
您的發佈者 Aurora PostgreSQL 資料庫叢集上必須同時啟用 IAM 身分驗證和邏輯複寫。如果其中一個未啟用,您就無法使用 IAM 身分驗證進行複寫連線。
啟用複寫連線的 IAM 身分驗證
完成下列步驟,以啟用複寫連線的 IAM 身分驗證。
-
確認您的 Aurora PostgreSQL 資料庫叢集符合具有複寫連線的 IAM 身分驗證的所有先決條件。如需詳細資訊,請參閱先決條件。
-
透過修改資料庫叢集
rds.iam_auth_for_replication參數群組來設定 參數:-
將
rds.iam_auth_for_replication參數設為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 身分驗證
您可以使用下列任一方法停用複寫連線的 IAM 身分驗證:
-
將資料庫叢集
rds.iam_auth_for_replication參數群組0中的 參數設定為 -
或者,您可以在 Aurora PostgreSQL 資料庫叢集上停用下列其中一項功能:
-
將
rds.logical_replication參數設定為 以停用邏輯複寫0 -
停用 IAM 身分驗證
-
當您停用此功能時,複寫連線可以使用資料庫密碼進行身分驗證,如果已設定。
注意
即使啟用 功能,沒有 rds_iam角色的使用者複寫連線也可以使用密碼身分驗證。
限制及考量
將 IAM 身分驗證用於複寫連線時,適用下列限制和考量。
-
複寫連線的 IAM 身分驗證僅適用於 Aurora PostgreSQL 第 11 版及更新版本。
-
發佈者必須支援複寫連線的 IAM 身分驗證。
-
IAM 身分驗證字符預設會在 15 分鐘後過期。您可能需要在字符過期之前重新整理長時間執行的複寫連線。