このページでは、Cloud SQL インスタンスに対する組み込み認証の仕組みと、データベース管理者がローカル データベース ユーザーのパスワード ポリシーを設定する方法について説明します。
はじめに
認証とは、インスタンスにアクセスを試みるユーザーの身元を確認するプロセスです。Cloud SQL は、データベース ユーザーに対して次の種類の認証が使用されます。
- データベースの組み込み認証では、ローカル データベース ユーザーを認証するためにユーザー名とパスワードが使用されます。このページでは、このタイプの認証について説明します。
- IAM データベース認証では、IAM を使用してユーザーを認証します。詳細については、Cloud SQL IAM データベース認証の概要をご覧ください。
IAM データベース認証は安全性と信頼性に優れていますが、組み込みの認証モデルか、両方の認証タイプを含むハイブリッド認証モデルを使用することをおすすめします。
データベース内に局所的にローカル データベース ユーザーを作成して管理することで、特定のユーザーまたはアプリケーションにデータベースへのアクセスを許可することが可能になります。このようなデータベース ユーザーは、データベースで作成したオブジェクトを所有します。Cloud SQL では、強力な組み込みパスワード ルールが適用されます。パスワード ポリシーを使用してそのようなルールを定義し、有効にできます。
インスタンス パスワード ポリシー
インスタンスを作成するときに、インスタンス レベルでパスワード ポリシーを設定できます。
インスタンスのパスワード ポリシーには、次のオプションを含めることができます。
- 最小文字数: パスワードの最小文字数を指定します。
- パスワードの複雑さ: パスワードが小文字、大文字、数字、英数字以外の文字の組み合わせになっているかどうかを確認します。
- パスワードの再利用の制限: 再利用できない以前のパスワードの数を指定します。
Cloud SQL for MySQL 8.0 以降でのみサポートされています。
- パスワードにユーザー名を許可しない: パスワードにユーザー名を使用できないようにします。
パスワード ポリシーはインスタンス レベルで明示的に有効にする必要があります。後でインスタンスを編集して変更できます。
ユーザー パスワード ポリシー
ユーザーを作成する際に、パスワードの使用制限を設定できます。
- パスワードの有効期限を設定する: パスワードが期限切れになるまでの日数を指定します。この日数が経過すると、新しいパスワードを作成する必要があります。
- 失敗した試行後にロックする: アカウントがロックされるまでにパスワードの入力を試行できる回数を指定します。
- パスワード変更時に現在のパスワードの入力を求める: パスワードを変更するときに既存のパスワードの入力を求めます。
ユーザー パスワード ポリシーも変更できます。
インスタンスのユーザーを一覧表示すると、ユーザーのステータスにパスワードの状態(期限切れどうか、ロックされているかどうか)が示されます。[ユーザー] ページでユーザーのロックを解除したり、パスワードを変更できます。
リードレプリカ用の Cloud SQL 組み込み認証
プライマリ インスタンスのレプリカのパスワード ポリシーを管理します。リードレプリカのパスワード ポリシーを個別に変更することはできません。
インスタンスを昇格させる場合は、ポリシー オプションとともにインスタンスのパスワード ポリシーを再度有効にする必要があります。