論理レプリケーション接続の IAM 認証の設定
Aurora PostgreSQL バージョン 11 以降では、レプリケーション接続に AWS Identity and Access Management (IAM) 認証を使用できます。この機能は、パスワードの代わりに IAM ロールを使用してデータベースアクセスを管理できるようにすることで、セキュリティを強化します。クラスターレベルで動作し、標準の IAM 認証と同じセキュリティモデルに従います。
レプリケーション接続の IAM 認証はオプトイン機能です。有効にするには、DB クラスターパラメータグループの rds.iam_auth_for_replication パラメータを 1 に設定します。これは動的パラメータであるため、DB クラスターを再起動する必要がなく、ダウンタイムなしで既存のワークロードで IAM 認証を活用できます。この機能を有効にする前に、以下の 前提条件 を満たす必要があります。
前提条件
レプリケーション接続に IAM 認証を使用するには、以下のすべての要件を満たす必要があります。
-
Aurora PostgreSQL DB クラスターはバージョン 11 以降である必要があります。
-
パブリッシャーとしての Aurora PostgreSQL DB クラスター
-
IAM データベース認証を有効にする。
詳細については、「IAM データベース認証の有効化と無効化」を参照してください。
-
rds.logical_replicationパラメータを1に設定して、論理レプリケーションを有効にします。詳細については、「Aurora PostgreSQL DB クラスターの論理レプリケーションの設定」を参照してください。
論理レプリケーションでは、パブリッシャーはサブスクライバークラスターにデータを送信するソース Aurora PostgreSQL DB クラスターです。詳細については、「Aurora での PostgreSQL 論理レプリケーションの概要」を参照してください。
-
注記
パブリッシャー Aurora PostgreSQL DB クラスターで IAM 認証と論理レプリケーションの両方を有効にする必要があります。どちらかが有効になっていない場合、レプリケーション接続に IAM 認証を使用することはできません。
レプリケーション接続の IAM 認証の有効化
レプリケーション接続の IAM 認証を有効にするには、次の手順を実行します。
-
Aurora PostgreSQL DB クラスターが、レプリケーション接続による IAM 認証のすべての前提条件を満たしていることを確認します。詳細については、「前提条件」を参照してください。
-
DB クラスターパラメータグループを変更して、
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 認証を無効にするには、次のいずれかの方法を使用します。
-
DB クラスターパラメータグループの
rds.iam_auth_for_replicationパラメータを0に設定します。 -
または、Aurora PostgreSQL DB クラスターで次のいずれかの機能を無効にすることもできます。
-
rds.logical_replicationパラメータを0に設定して論理レプリケーションを無効にする -
IAM 認証の無効化
-
この機能を無効にすると、レプリケーション接続が設定されている場合、認証にデータベースパスワードを使用できます。
注記
rds_iam ロールを持たないユーザーのレプリケーション接続は、この機能が有効になっている場合でもパスワード認証を使用できます。
制約事項と考慮事項
レプリケーション接続に IAM 認証を使用する場合、以下の制限と考慮事項が適用されます。
-
レプリケーション接続の IAM 認証は、Aurora PostgreSQL バージョン 11 以降でのみ使用できます。
-
パブリッシャーは、レプリケーション接続の IAM 認証をサポートする必要があります。
-
IAM 認証トークンは、デフォルトで 15 分後に期限切れになります。トークンの有効期限が切れる前に、長時間実行されるレプリケーション接続を更新する必要がある場合があります。