論理レプリケーション接続の IAM 認証の設定 - Amazon Aurora

論理レプリケーション接続の 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 クラスターで IAM 認証と論理レプリケーションの両方を有効にする必要があります。どちらかが有効になっていない場合、レプリケーション接続に IAM 認証を使用することはできません。

レプリケーション接続の IAM 認証の有効化

レプリケーション接続の IAM 認証を有効にするには、次の手順を実行します。

  1. Aurora PostgreSQL DB クラスターが、レプリケーション接続による IAM 認証のすべての前提条件を満たしていることを確認します。詳細については、「前提条件」を参照してください。

  2. DB クラスターパラメータグループを変更して、rds.iam_auth_for_replication パラメータを設定します。

    • rds.iam_auth_for_replication パラメータを 1 に設定します。これは再起動を必要としない動的パラメータです。

  3. データベースに接続し、必要なロールをレプリケーションユーザーに付与します。

    次の 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 分後に期限切れになります。トークンの有効期限が切れる前に、長時間実行されるレプリケーション接続を更新する必要がある場合があります。