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

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

アクセス権の付与

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

Cloud Console

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

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

  2. API が複数ある場合は、アクセス権を付与する API の名前をクリックします。
  3. [権限] サイドパネルが開いていない場合は、[権限] をクリックします。
  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. [権限] サイドパネルが開いていない場合は、[ 権限] をクリックします。
  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'
    

次のステップ