他のユーザーにアクセス権を付与する

このページでは、 Google Cloud ユーザー アカウントまたはサービス アカウントに、プロジェクト内の AlloyDB リソースへのアクセス権を付与する方法について説明します。

アカウントに付与する制御の範囲に応じて、次のいずれかの IAM 事前定義ロールを付与します。

  • roles/alloydb.admin(Cloud AlloyDB 管理者): すべての AlloyDB リソースに対する完全な制御権を付与します。
  • roles/alloydb.client(Cloud AlloyDB クライアント)と roles/serviceusage.serviceUsageConsumer(サービス使用量コンシューマ): AlloyDB Auth プロキシに接続するクライアントから AlloyDB インスタンスへの接続アクセス権を付与します。
  • roles/alloydb.databaseUser(Cloud AlloyDB データベース ユーザー): AlloyDB インスタンスにデータベース ユーザー認証を付与します。
  • roles/alloydb.viewer(Cloud AlloyDB 閲覧者): すべての AlloyDB リソースに対する読み取り専用アクセス権を付与します。

これらのロールが提供する特定の IAM 権限の詳細については、事前定義された AlloyDB IAM ロールをご覧ください。

始める前に

  • 使用している Google Cloud プロジェクトで、AlloyDB へのアクセスが有効になっている必要があります。
  • 使用している Google Cloud プロジェクトで roles/owner(オーナー)の基本 IAM ロールが必要です。または、次の権限を付与するロールが必要です。
    • resourcemanager.projects.get
    • resourcemanager.projects.getIamPolicy
    • resourcemanager.projects.setIamPolicy

    最小権限の原則に従ってこれらの権限を取得するには、管理者に roles/resourcemanager.projectIamAdmin(プロジェクト IAM 管理者)ロールの付与を依頼してください。

  • 使用している Google Cloud プロジェクトで Cloud Resource Manager API を有効にします。

    API を有効にする

手順

コンソール

  1. Google Cloud コンソールで、[IAM] ページに移動します。

    [IAM] に移動

  2. AlloyDB へのアクセスが有効になっているプロジェクトを選択します。
  3. アクセス権を付与するプリンシパル(ユーザーまたはサービス アカウント)を選択します。
    • プロジェクトに対する他のロールをすでに持っているプリンシパルにロールを付与するには、プリンシパルのメールアドレスを含む行を見つけて、その行で [ プリンシパルを編集] をクリックし、[ 別のロールを追加] をクリックします。
    • プロジェクトに対して他のロールを持たないプリンシパルにロールを付与するには、[ 追加] をクリックし、プリンシパルのメールアドレスを入力します。
  4. プルダウン リストから、次のいずれかのロールを選択します。
    • Cloud AlloyDB 管理者
    • Cloud AlloyDB 閲覧者
    • Cloud AlloyDB クライアントサービス使用量コンシューマ
    • Cloud AlloyDB データベース ユーザー
  5. [保存] をクリックします。プリンシパルにロールが付与されます。

gcloud

gcloud CLI を使用するには、Google Cloud CLI をインストールして初期化するか、Cloud Shell を使用します。

add-iam-policy-binding コマンドを使用して、IAM プリンシパル(ユーザー アカウントまたはサービス アカウント)に AlloyDB の事前定義ロールを付与します。

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member=PRINCIPAL \
    --role=ALLOYDB_ROLE
  • PROJECT_ID: AlloyDB へのアクセスが有効になっているプロジェクトの ID。
  • PRINCIPAL: プリンシパルのタイプとメール ID(メールアドレス)です。
    • ユーザー アカウントの場合: user:EMAIL_ID
    • サービス アカウントの場合: serviceAccount:EMAIL_ID
  • ALLOYDB_ROLE: プリンシパルに付与するロール。値は次のいずれかにする必要があります。

    • roles/alloydb.admin
    • roles/alloydb.viewer
    • roles/alloydb.clientroles/serviceusage.serviceUsageConsumer
    • roles/alloydb.databaseUser

    これらのロールで付与される権限の詳細については、AlloyDB の事前定義 IAM ロールをご覧ください。