Contrôler qui peut activer votre API

Les clés API sont associées au projet Google Cloud dans lequel elles ont été créées. Si votre API nécessite une clé API, vous devez donner aux utilisateurs de votre API une clé du projet dans lequel vous avez créé le service Cloud Endpoints, ou bien autoriser les utilisateurs à activer votre API dans leur propre projet Google Cloud et créer une clé API. Cette page vous montre comment accorder l'autorisation dont les utilisateurs ont besoin pour activer votre API.

Accorder l'accès

Cloud Endpoints utilise le rôle Client du service de Identity and Access Management (IAM) pour autoriser une personne non membre de votre projet Google Cloud à activer votre API dans son propre projet. Cette section explique comment accorder l'accès à l'aide de la console Google Cloud ou de la Google Cloud CLI.

Console Google Cloud

  1. Dans la console Google Cloud, accédez à la page Points de terminaison > Services du projet.

    Accédez à la page Services Endpoints

  2. Si vous avez plusieurs API, cliquez sur le nom de l'API à laquelle vous souhaitez accorder l'accès.
  3. Si le panneau latéral Autorisations n'est pas ouvert, cliquez sur Afficher le panneau des autorisations.
  4. Dans le champ Ajouter un compte principal, saisissez l'adresse e-mail de la personne ou du groupe Google auquel vous souhaitez accorder l'accès.
  5. Dans le menu déroulant Sélectionner un rôle, sélectionnez Service Management > Client du service.
  6. Cliquez sur Enregistrer.
  7. Répétez les étapes d'ajout de membres et de sélection du rôle autant que nécessaire.
  8. Contactez les utilisateurs ou les groupes que vous avez ajoutés pour leur indiquer qu'ils peuvent activer l'API dans leurs projets Google Cloud. Pour en savoir plus sur l'activation d'un service dans les API et services, consultez la page Activer une API dans votre projet Google Cloud.

gcloud

  1. Ouvrez Cloud Shell ou, si la Google Cloud CLI est installée, ouvrez une fenêtre de terminal.
    • Si vous accordez l'accès à un utilisateur individuel, utilisez :
      
      gcloud endpoints services add-iam-policy-binding [SERVICE-NAME] \
            --member='user:EMAIL-NAME@gmail.com' \
            --role='roles/servicemanagement.serviceConsumer'
      
    • Si vous accordez l'accès à un groupe Google, utilisez :
      
      gcloud endpoints services add-iam-policy-binding [SERVICE-NAME] \
            --member='group:GROUP-NAME@googlegroups.com' \
            --role='roles/servicemanagement.serviceConsumer'
      
  2. Contactez les utilisateurs ou les groupes que vous avez ajoutés pour leur indiquer qu'ils peuvent activer l'API dans leurs projets Google Cloud. Pour en savoir plus sur l'activation d'un service dans les API et services, consultez la page Activer une API dans votre projet Google Cloud.

Révoquer l'accès

Pour révoquer l'accès à votre API, supprimez le rôle IAM Client du service précédemment attribué à un utilisateur ou à un groupe. Une fois l'accès d'une personne révoqué, celle-ci ne pourra plus activer votre API.

Cette section explique comment révoquer l'accès à l'aide de la console Google Cloud ou de la Google Cloud CLI.

Console Google Cloud

  1. Dans la console Google Cloud, accédez à la page Endpoints > Services du projet Google Cloud.

    Accédez à la page Services Endpoints

  2. Si vous avez plusieurs API, cliquez sur le nom de l'API à laquelle vous souhaitez révoquer l'accès.
  3. Si le panneau latéral Autorisations n'est pas ouvert, cliquez sur Autorisations.
  4. Cliquez sur la carte Rôle à laquelle appartient le membre.
  5. Cliquez sur Supprimer ().

gcloud

  • Si vous révoquez l'accès à un utilisateur individuel, utilisez :
    
    gcloud endpoints services remove-iam-policy-binding [SERVICE-NAME] \
          --member='user:'EMAIL-NAME@gmail.com' --role='roles/servicemanagement.serviceConsumer'
    
  • Si vous révoquez l'accès à un groupe Google, utilisez :
    
    gcloud endpoints services remove-iam-policy-binding [SERVICE-NAME] \
          --member='group:GROUP-NAME@googlegroups.com' \
          --role='roles/servicemanagement.serviceConsumer'
    

Étapes suivantes