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 Identity and Access Management (IAM) le rôle Client du service pour permettre à une personne qui n'est pas membre de votre pour activer votre API dans leur propre projet Google Cloud projet. Cette section vous explique comment accorder l'accès à l'aide du la console Google Cloud ou la Google Cloud CLI.

console Google Cloud

  1. Dans la console Google Cloud, accédez à Points de terminaison > Services de votre 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 la Google Cloud CLI.

console Google Cloud

  1. Dans la console Google Cloud, accédez à Points de terminaison > Services de votre 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 affiché, 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'
    

Étape suivante