インスタンスのアクセス制御

このページでは、Cloud SQL インスタンスの 2 つのレベルのアクセス制御について説明します。インスタンスを管理する前に、両方のレベルのアクセス制御を構成する必要があります。

アクセス制御のレベル

アクセス制御の構成とは、誰がまたは何がインスタンスにアクセスできるかを制御することです。アクセス制御には 2 つのレベルがあります。

インスタンスレベル アクセス
インスタンス レベルのアクセスにより、App Engine または外部で実行中のアプリケーションまたはクライアントから、あるいは Compute Engine など別の Google Cloud サービスから、Cloud SQL インスタンスへのアクセスが承認されます。
データベース アクセス
データベース アクセスは、MySQL アクセス権限システムを使用して、どの MySQL ユーザーがインスタンス内のデータへのアクセス権を持つかを制御します。

インスタンスレベル アクセス

インスタンスレベルのアクセスの構成は、接続ソースによって異なります。

接続元 構成方法 詳細
Compute Engine
  • Cloud SQL Proxy
  • 静的 IP アドレスを承認
App Engine 標準環境
  • 同じプロジェクト: 事前構成
  • プロジェクト間: IAM の構成
App Engine フレキシブル環境
  • 同じプロジェクト: 事前構成
  • プロジェクト間: IAM の構成
mysql クライアント
  • Cloud SQL Proxy
  • クライアント IP アドレスを承認
外部アプリケーション
  • Cloud SQL Proxy
  • クライアント IP アドレスを承認
Cloud Functions
  • パブリック IP で設定された Cloud SQL インスタンス。
  • プロジェクト間: IAM も構成
Cloud Run
  • パブリック IP で設定された Cloud SQL インスタンス。
  • プロジェクト間: IAM も構成
Google Kubernetes Engine
  • プライベート IP または Cloud SQL Proxy
  • パブリック IP、Cloud SQL Proxy が必要な場合

データベース アクセス

インスタンスへの接続がネゴシエーションされると、ユーザーまたはアプリケーションはユーザー アカウントを使用してデータベース インスタンスにログインする必要があります。Cloud SQL インスタンス管理の一部として、ユーザー アカウントを作成して管理します。

インスタンスを作成するときにデフォルト ユーザー(root)を設定する必要がありますが、さらにユーザーを作成して、Cloud SQL インスタンスへのアクセスを詳細に制御することもできます。詳細については、MySQL ユーザーデフォルト ユーザー アカウントの構成をご覧ください。

次のステップ