Cloud SQL for PostgreSQL
KeeperでAWS PostgreSQLデータベースの管理者ユーザーおよび一般ユーザーをローテーション

概要
本ページでは、Keeperローテーションを使用して、Google Cloud環境におけるPostgreSQL (Cloud SQL for PostgreSQL) のデータベースユーザーおよび管理者アカウントのパスワードをローテーションする方法を取り扱います。Cloud SQL for PostgreSQLはGoogle Cloudのマネージドリソースであり、PostgreSQL管理者の認証情報はPAMデータベースレコードタイプで定義され、PostgreSQLユーザーの設定はPAMユーザーレコードタイプで定義されます。
一般のデータベースユーザーのパスワードをローテーションする際には、指定された管理者の認証情報を使用してデータベースインスタンスに接続し、パスワード変更に必要なSQL文を実行します。
要件
以下の作業がすでに完了していることを前提としています。
ロールに対してKeeperシークレットマネージャーが有効になっていること
ロールに対してKeeperローテーションが有効になっていること
Keeperシークレットマネージャーのアプリケーションが作成されていること
Keeperローテーションゲートウェイがインストールされ、稼働しており、Google Cloud SQL Serverデータベースと通信できる状態であること
Google Cloud環境が、当社ドキュメントに従って構成されていること
1. PAMデータベースレコードのセットアップ
PAMデータベースレコードには、Google Cloud上のPostgreSQL Cloud SQLインスタンスに接続するために必要な管理者の認証情報および各種設定を定義します。Keeperローテーションは、これらの設定情報を使用して、PostgreSQL Cloud SQLインスタンスに存在する一般データベースユーザーアカウントのパスワードをローテーションします。また、ここで指定する管理者の認証情報には、データベースユーザーアカウントの認証情報を正常に変更できる十分な権限が付与されている必要があります。
以下は、PAMデータベースレコードの必須フィールドとなります。
タイトル
Keeperのレコードタイトル
例: GCP PostgreSQL Admin
ホスト名またはIPアドレス
PostgreSQLのCloud SQLエンドポイント
ポート
PostgreSQLのポート番号デフォルトのポート番号については、ポートマッピングをご参照ください。
例: 5432
SSLを使用
データベースでSSLが構成されている場合は有効にします。接続前にSSL検証を実行します。
ログイン
ローテーションを実行する管理者アカウントのユーザー名
パスワード
管理者アカウントのパスワード
接続データベース
接続時に使用する任意のデータベースです。例: PostgreSQLではデータベースの指定が必要なため、既定では「template1」が使用されます。
データベースID
Cloud SQLのデータベースインスタンスID
データベースタイプ
postgresql
プロバイダーリージョン
Cloud SQLインスタンスで使用しているリージョン
例: us-central1
管理者の認証情報を含むこのPAMデータベースレコードは、要件で作成したKSMアプリケーションと共有されている共有フォルダに配置する必要があります。この特権アカウントへのアクセスはKSMアプリケーションのみに付与すれば十分であり、ユーザーと共有する必要はありません。
2. PAM構成の作成
(すでにこの環境用のPAM構成が設定されている場合は、この手順を省略できます。)
ボルトの左側メニューから [シークレットマネージャー] を選択し、[PAM構成] タブを開いて、[新しい構成] をクリックします。
以下は、PAM構成レコードの必須フィールドとなります。
タイトル
構成の名前
例: GCP Workspace Configuration
環境
「Google Cloud」を選択します。
ゲートウェイ
Keeperシークレットマネージャーのアプリケーションで構成済みのゲートウェイを選択します。
アプリケーションフォルダ
PAM構成を保存する共有フォルダを選択します。PAMユーザーレコードと同じ共有フォルダに配置することを推奨します。
GCP ID
このGoogle Cloudインスタンスを識別するための一意のIDです。任意の値を指定できますが、短い名称を推奨します。
例: GCP-DepartmentName
サービスアカウントキー
ゲートウェイのサービスアカウントキーに含まれるJSONテキストをコピーして貼り付けます。
Google Workspace管理者のメールアドレス
GCPプリンシパルのパスワード管理に使用できる、Google Workspace管理者アカウントのメールアドレスを指定します。
3. PAMユーザーレコードの設定
Keeperローテーションは、PAMデータベースレコードに含まれる認証情報を使用して、Google Cloud環境におけるPAMユーザーレコードのパスワードをローテーションします。PAMユーザーの認証情報は、要件で作成したKSMアプリケーションと共有されている共有フォルダに配置する必要があります。
以下は、PAMユーザーレコードの必須フィールドとなります。
タイトル
Keeperのレコードタイトル
例: GCP DB User 1
ログイン
ローテーション対象となるアカウントのユーザー名です。 データベースのユーザーテーブルでホストが「%」以外に設定されている場合は、「ユーザー名@ホスト」の形式で指定します。
パスワード
アカウントのパスワードです。 空欄の場合、ローテーション時に自動的に設定されます。
接続データベース
接続時に使用する任意のデータベースです。
例: PostgreSQLではデータベースの指定が必要なため、既定では template1 が使用されます。
4. PAMユーザーレコードでのローテーション設定
手順3で作成したPAMユーザーレコードを選択し、レコードを編集して [パスワードローテーション設定] を開きます。
希望するスケジュールとパスワードの複雑さを選択します。
[ローテーション設定] では、前の手順で設定したPAM構成を使用します。
[リソース認証情報] フィールドでは、手順1で設定したPAMデータベースの認証情報を選択します。
保存すると、ローテーションボタンが有効になり、手動実行または選択したスケジュールに基づいてローテーションを実行できるようになります。
最終更新

