AWS RDS for PostgreSQL
Keeperローテーションを使用したAWS PostgreSQLデータベースの管理者および通常ユーザーアカウントのローテーション

概要
本ページでは、Keeperローテーションを使用してAWS環境のPostgreSQLユーザーおよび管理者アカウントをローテーションする方法を取り扱います。RDS for PostgreSQLはAWSのマネージドリソースで、PostgreSQLの管理者認証情報はPAMデータベースレコードタイプで定義され、PostgreSQLユーザーの構成はPAMユーザーレコードタイプで定義されます。
Amazon RDSでは、AWS SDKを使用してデータベース管理者アカウントのパスワードがローテーションされます。通常のデータベースユーザーのパスワードがローテーションされる場合、指定された管理者認証情報を使用してDBインスタンスに接続し、パスワード変更に必要なSQLステートメントが実行されます。
要件
以下がすでに完了していることを前提としています。
ロールでKeeperシークレットマネージャーが有効になっていること
ロールでKeeperローテーションが有効になっていること
Keeperシークレットマネージャーアプリケーションが作成済みであること
Keeperローテーションゲートウェイがインストール済みで稼働しており、AWS PostgreSQLデータベースと通信できること
AWS環境がKeeperのドキュメントに従って設定されていること
1. PAMデータベースレコードの設定
PAMデータベースレコードには、AWS上のPostgreSQL RDSインスタンスに接続するための管理者認証情報と必要な構成が含まれます。Keeperローテーションでは、これらの構成を使用して、PostgreSQL RDSインスタンス内の通常データベースユーザーアカウントのパスワードがローテーションされます。管理者認証情報には、データベースユーザーアカウントの認証情報を正常に変更するための十分なデータベース権限が必要です。
PAMデータベースレコードの必須フィールドは以下のとおりです。
タイトル
Keeperレコードのタイトル。例: AWS PostgreSQL Admin
ホスト名またはIPアドレス
RDSエンドポイント。例: rdsdb.ckivswes.us-east-2.rds.amazonaws.com
ポート
RDSポート。デフォルトポートは[ポートマッピング](../../../../references/port-mapping.md)をご参照。
例: 5432
SSLの使用
データベースにSSLが設定されている場合、接続前にSSL検証を行うには有効にしてください
ログイン
ローテーションを実行する管理者アカウントのユーザー名
パスワード
管理者アカウントのパスワード
接続データベース
データベースサーバーへの接続時に使用するオプションのデータベース。
例: PostgreSQLではデータベースが必要なため、デフォルトは template1
データベースID
AWS DBインスタンスID
データベースタイプ
postgresql
プロバイダリージョン
Amazon RDSインスタンスのリージョン。例: us-east-2
プロバイダリージョンとデータベースIDを追加すると、SDKを使用してPAMデータベースレコードを管理できるようになります。
管理者認証情報を含むこのPAMデータベースレコードは、要件で作成したKSMアプリケーションに共有されている共有フォルダ内に配置する必要があります。この特権アカウントへのアクセスはKSMアプリケーションのみに必要であり、ユーザーと共有する必要はありません。
2. PAM構成の設定
環境にPAM構成がすでにある場合は、この手順を省略できます。
新しいPAM構成を作成する場合は、Keeperボルトにログインし、左メニューから [シークレットマネージャー] を選択し、[PAM構成] タブで [新規構成] をクリックします。
PAM構成レコードの必須フィールドは以下のとおりです。
タイトル
構成名。例: AWS RDS Configuration
環境
AWS を選択
ゲートウェイ
Keeperシークレットマネージャーアプリケーションに設定され、PostgreSQL RDSインスタンスへネットワークアクセスできるゲートウェイを選択
アプリケーションフォルダ
PAM構成を格納する共有フォルダを選択。データベースリソースではなく、PAMユーザーレコードと同じ共有フォルダへの配置を推奨
AWS ID
このAWSインスタンスの固有ID。参考用のため任意の値を指定可能。短くすることを推奨。
例: AWS-1
アクセスキーID
EC2ロールポリシーを使用する場合 (デフォルト) は USE_INSTANCE_ROLE を設定。それ以外の場合は特定のアクセスキーIDを使用
シークレットアクセスキー
EC2ロールポリシーを使用する場合 (デフォルト) は USE_INSTANCE_ROLE を設定。それ以外の場合は特定のシークレットアクセスキーを使用
PAM構成レコードで設定可能なすべてのフィールドの詳細については、こちらのページをご参照ください。
3. PAMユーザーレコードの設定
Keeperローテーションでは、PAMデータベースレコードの認証情報を使用して、AWS環境のPAMユーザーレコードがローテーションされます。PAMユーザー認証情報は、要件で作成したKSMアプリケーションに共有されている共有フォルダ内に配置する必要があります。
PAMユーザーレコードの必須フィールドは以下のとおりです。
タイトル
Keeperレコードのタイトル。例: AWS DB User 1
ログイン
ローテーション対象アカウントのユーザー名(大文字と小文字を区別)。DBユーザーテーブルのホストが % 以外の場合は、ユーザー名にホスト値を USERNAME@HOST 形式で追加
パスワード
アカウントパスワードはオプション。空白の場合はローテーション時に設定されます
接続データベース
データベースサーバーへの接続時に使用するオプションのデータベース。
例: PostgreSQLではデータベースが必要なため、デフォルトは template1
4. PAMユーザーレコードでローテーションを構成
手順3のPAMユーザーレコードを選択し、編集して [パスワードローテーション設定] を開きます。
希望するスケジュールとパスワードの複雑さを選択
[ローテーション設定] では、以前に設定したPAM構成を使用
[リソースクレデンシャル] フィールドでは、手順1で設定したPAMデータベース認証情報を選択
保存すると、ローテーションボタンが有効になり、オンデマンドまたは選択したスケジュールでローテーション可能
PAMユーザーレコードに edit 権限を持つユーザーは、そのレコードのローテーションを設定できます。
最終更新

