このページでは、AlloyDB for PostgreSQL インスタンスに対する組み込み認証の仕組みと、データベース管理者がローカル データベース ユーザーのパスワード ポリシーを設定する方法について説明します。
認証とは、データベースのデータにアクセスしようとするユーザーの ID を確認するプロセスです。AlloyDB では、データベース ユーザーに対して次の種類の認証が使用されます。
PostgreSQL のネイティブ組み込み認証では、ローカル データベース ユーザーを認証するためにユーザー名とパスワードが使用されます。このページでは、このタイプの認証について説明します。
IAM データベース認証では、IAM を使用してユーザーを認証します。詳細については、AlloyDB IAM データベース認証をご覧ください。
IAM データベース認証は安全性と信頼性に優れていますが、組み込みの認証モデルか、両方の認証タイプを含むハイブリッド認証モデルを使用することをおすすめします。
データベース内に局所的にローカル データベース ユーザーを作成して管理することで、特定のユーザーまたはアプリケーションにデータベースへのアクセスを許可することが可能になります。このようなデータベース ユーザーは、データベースで作成したオブジェクトを所有します。AlloyDB では、強力な組み込みパスワード ルールが適用されます。パスワード ポリシーを使用してそのようなルールを定義し、有効にできます。
パスワード ポリシー
クラスタのプライマリ インスタンスにパスワード ポリシーを設定できます。これはインスタンス レベルの設定ですが、ユーザーはクラスタ全体に対して定義され、ユーザー作成などの書き込みオペレーションはプライマリ インスタンスでのみ処理できるため、クラスタレベルのポリシーと考えるのが最適です。
パスワード ポリシーは、プライマリ インスタンスの作成時に設定できます。または、インスタンスを更新して、後でポリシーを追加または変更することもできます。このポリシーはインスタンス内のすべてのデータベースに適用されます。次のオプションを含めることができます。
最小文字数: パスワードの最小文字数を指定します。
パスワードの複雑さ: パスワードが小文字、大文字、数字、英数字以外の文字の組み合わせになっているかどうかを確認します。
パスワードにユーザー名を許可しない: パスワードにユーザー名を使用できないようにします。
パスワードの有効期限: パスワードが定期的にローテーションされるようにします。
リードレプリカ用の AlloyDB 組み込み認証
リードレプリカのパスワード ポリシーはプライマリ インスタンスから継承され、個別に変更することはできません。これは、ユーザー管理と認証がプライマリ インスタンスでのみ実行できる書き込みオペレーションであるためです。
リードレプリカをプライマリ インスタンスに昇格させても、パスワード ポリシーは自動的に引き継がれません。適用する特定のポリシー オプションをすべて含め、新しく昇格したインスタンスでパスワード ポリシーを明示的に有効にする必要があります。