API を有効にできるユーザーの制御

API キーは、作成された Google Cloud プロジェクトに関連付けられます。API に API キーが必要な場合、Cloud Endpoints サービスを作成したプロジェクトのキーを API ユーザーに提供するか、ユーザーが自分のプロジェクトで API キーを作成できるようにします。 Google Cloudこのページでは、API を有効にするためにユーザーに必要な権限を付与する方法を説明します。

アクセス権の付与

Endpoints では、Identity and Access Management(IAM) サービス ユーザー ロールを使用して、Google Cloud プロジェクトのメンバーではないユーザーが自分の Google Cloudプロジェクトで API を有効にできるようにします。このセクションでは、Google Cloud コンソールまたは Google Cloud CLI を使用してアクセス権を付与する方法を説明します。

Google Cloud コンソール

  1. コンソールで、プロジェクトの [エンドポイント] > [サービス] ページに移動します。 Google Cloud

    [エンドポイント] の [サービス] ページに移動

  2. API が複数ある場合は、アクセス権を付与する API の名前をクリックします。
  3. [権限] サイドパネルが開いていない場合は、[権限パネルを表示] をクリックします。
  4. [プリンシパルを追加] フィールドに、アクセス権を付与するユーザーまたは Google グループのメールアドレスを入力します。
  5. [ロールを選択] プルダウン メニューで、[サービス管理] > [サービス ユーザー] を選択します。
  6. [保存] をクリックします。
  7. 必要に応じて、メンバーの追加と役割の選択を繰り返します。
  8. 追加したユーザーまたはグループに連絡して、各自のプロジェクトで API を有効にできるようになったことを知らせます。 Google Cloud [API とサービス] でサービスを有効にする方法については、プロジェクトで API を有効にする Google Cloudをご覧ください。

gcloud

  1. Cloud Shell を開きます。あるいは、Google Cloud CLI をインストール済みの場合はターミナル ウィンドウを開きます。
    • 個々のユーザーにアクセス権を付与する場合:
      gcloud endpoints services add-iam-policy-binding [SERVICE-NAME] \
            --member='user:EMAIL-NAME@gmail.com' \
            --role='roles/servicemanagement.serviceConsumer'
    • Google グループにアクセス権を付与する場合:
      gcloud endpoints services add-iam-policy-binding [SERVICE-NAME] \
            --member='group:GROUP-NAME@googlegroups.com' \
            --role='roles/servicemanagement.serviceConsumer'
  2. 追加したユーザーまたはグループに連絡して、各自のプロジェクトで API を有効にできるようになったことを知らせます。 Google Cloud [API とサービス] でサービスを有効にする方法については、プロジェクトで API を有効にする Google Cloudをご覧ください。

アクセス権を取り消す

サービス ユーザーのロールを持っているユーザーまたはグループから、そのロールを削除することで、API へのアクセス権を取り消します。アクセス権を取り消されたユーザーは API を有効化できなくなります。

このセクションでは、 Google Cloud コンソールまたは Google Cloud CLI を使用してアクセス権を取り消す方法について説明します。

Google Cloud コンソール

  1. Google Cloud コンソールで、プロジェクトの [エンドポイント] > [サービス] ページに移動します。 Google Cloud

    [エンドポイント] の [サービス] ページに移動

  2. API が複数ある場合は、アクセス権を取り消す API の名前をクリックします。
  3. [権限] サイドパネルが開いていない場合は、[ 権限] をクリックします。
  4. メンバーが属している [ロール] カードをクリックします。
  5. [削除] をクリックします。

gcloud

  • 個々のユーザーのアクセス権を取り消す場合:
    gcloud endpoints services remove-iam-policy-binding [SERVICE-NAME] \
          --member='user:'EMAIL-NAME@gmail.com' --role='roles/servicemanagement.serviceConsumer'
  • Google グループのアクセス権を取り消す場合:
    gcloud endpoints services remove-iam-policy-binding [SERVICE-NAME] \
          --member='group:GROUP-NAME@googlegroups.com' \
          --role='roles/servicemanagement.serviceConsumer'

次のステップ