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

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

アクセス権の付与

Google Cloud プロジェクトのメンバーではないユーザーが自分の Google Cloud プロジェクトで API を有効にすることを許可するために、Endpoints では Cloud Identity and Access Management(IAM)サービス ユーザー役割を使用します。このセクションでは、Google Cloud Console または gcloud コマンドライン ツールを使用してアクセス権を付与する方法を説明します。

Cloud Console

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

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

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

gcloud

  1. Cloud Shell を開きます。あるいは、Cloud SDK がインストール済みの場合はターミナル ウィンドウを開きます。
    • 個々のユーザーにアクセス権を付与する場合:
      
      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. 追加したユーザーまたはグループに連絡して、各自の Google Cloud プロジェクトで API を有効にできるようになったことを知らせます。[API とサービス] でサービスを有効にする方法については、API を Google Cloud プロジェクトで有効にするをご覧ください。

アクセス権を取り消す

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

このセクションでは、Cloud Console または gcloud コマンドライン ツールを使用してアクセス権を取り消す方法を説明します。

Cloud Console

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

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

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

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'
    

次のステップ