Activer IAP pour Compute Engine

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Cette page explique comment sécuriser une instance Compute Engine avec Identity-Aware Proxy (IAP).

Avant de commencer

Pour activer IAP pour Compute Engine, vous devez disposer des éléments suivants :

Si votre instance Compute Engine n'est pas déjà configurée, consultez la page Configurer IAP pour Compute Engine pour obtenir une présentation complète.

Activer IAP à l'aide de Google Cloud Console

Configurer l'écran d'autorisation OAuth

Si vous n'avez pas configuré l'écran d'autorisation OAuth de votre projet, vous devez le faire. Vous devez saisir une adresse e-mail et un nom de produit.

  1. Accédez à l'écran d'autorisation OAuth.
    Configurer l'écran d'autorisation
  2. Sous Adresse e-mail d'assistance, sélectionnez l'adresse e-mail que vous souhaitez afficher en tant que contact public. L'adresse e-mail doit appartenir au compte utilisateur actuellement connecté ou à un groupe Google auquel appartient l'utilisateur actuellement connecté.
  3. Saisissez le nom de l'application que vous souhaitez afficher.
  4. Ajoutez des détails, si nécessaire.
  5. Cliquez sur Save.

Pour modifier ultérieurement les informations affichées sur l'écran d'autorisation OAuth, comme le nom du produit ou l'adresse e-mail, répétez les étapes de configuration précédentes.

Créer des identifiants OAuth

  1. Accédez à la page Identifiants.
    Accéder à la page "Identifiants"
  2. Dans la liste déroulante Créer des identifiants, sélectionnez ID client OAuth.
  3. Sous Type d'application, sélectionnez Application Web.
  4. Attribuez un nom à votre ID client OAuth.
  5. Cliquez sur Créer.

    Votre ID client OAuth et votre code secret client sont générés et affichés dans la fenêtre Client OAuth.

  6. Dans la boîte de dialogue Oauth client created (Client OAuth créé), copiez l'ID client dans le presse-papiers.
  7. Cliquez sur OK.
  8. Cliquez sur le nom du client que vous venez de créer pour le modifier et le rouvrir.
  9. Dans le champ URI de redirection autorisés, saisissez la chaîne suivante:
    https://iap.googleapis.com/v1/oauth/clientIds/CLIENT_ID:handleRedirect

    CLIENT_ID est l'ID client OAuth que vous venez de copier dans le presse-papiers.

Configurer l'accès à IAP

  1. Accédez à la page Identity-Aware Proxy.
    Accéder à la page "Identity-Aware Proxy"
  2. Sélectionnez le projet que vous souhaitez sécuriser avec IAP.
  3. Cochez la case à côté de la ressource à laquelle vous souhaitez accorder l'accès.
  4. Dans le panneau de droite, cliquez sur Ajouter un compte principal.
  5. Dans la boîte de dialogue Ajouter des comptes principaux qui s'affiche, saisissez les adresses e-mail des groupes ou des personnes auxquels vous souhaitez accorder le rôle Utilisateur de l'application Web sécurisée par IAP dans le cadre du projet.

    Les types de comptes principaux suivants peuvent avoir ce rôle:

    • Compte Google : user@gmail.com
    • Groupe Google : admins@googlegroups.com
    • Compte de service : server@example.gserviceaccount.com
    • Domaine Google Workspace : example.com

    Veillez à ajouter un compte Google auquel vous avez accès.

  6. Sélectionnez Cloud IAP > Utilisateur de l'application Web sécurisée par IAP dans la liste déroulante Rôles.
  7. Cliquez sur Enregistrer.

Activer IAP

  1. Sur la page Identity-Aware Proxy, sous APPLICATIONS, recherchez l'équilibreur de charge qui diffuse les instance group auxquels vous souhaitez limiter l'accès. Pour activer IAP pour une ressource,
    Pour activer IAP, procédez comme suit :
    • La configuration du frontend de l'équilibreur de charge doit comporter au moins un protocole HTTPS. Découvrez comment configurer un équilibreur de charge.
    • Vous avez besoin des autorisations compute.backendServices.update, clientauthconfig.clients.create et clientauthconfig.clients.getWithSecret. Ces autorisations sont accordées par des rôles (par exemple, Éditeur de projet). Pour en savoir plus, consultez la page Gérer les accès aux ressources sécurisées par IAP.
  2. Dans la fenêtre Activer IAP qui s'affiche, cliquez sur Activer pour confirmer que vous souhaitez qu'IAP sécurise votre ressource. Une fois IAP activé, des identifiants de connexion sont requis pour toutes les connexions à votre équilibreur de charge. Seuls les comptes disposant du rôle Utilisateur de l'application Web sécurisée par IAP sur le projet y ont accès.

Activer IAP à l'aide du SDK Google Cloud

Cette section décrit comment activer IAP pour les applications Compute Engine à l'aide de l'outil de ligne de commande gcloud. Il n'est pas encore possible d'utiliser cet outil afin d'activer IAP pour App Engine. À la place, suivez le tutoriel Démarrage rapide avec App Engine.

Obtenir Google Cloud CLI

Avant de configurer votre projet et IAP, vous devez disposer d'une version à jour de gcloud CLI. Obtenez gcloud CLI.

Configurer votre projet

Sélectionnez le projet pour lequel vous souhaitez activer IAP, puis configurez-le comme suit :

  1. Accédez à la page Groupes d'instances pour vous assurer que vos instances appartiennent à un groupe d'instances.
  2. Définissez les services backend.
  3. Configurez l'équilibrage de charge externe ou interne.
  4. Configurez un client OAuth :
    1. Accédez à API > Identifiants, puis sélectionnez le projet pour lequel vous souhaitez activer IAP.
    2. Configurez l'écran d'autorisation OAuth :
      1. Accédez à l'écran d'autorisation OAuth.
        Configurer l'écran d'autorisation
      2. Sous Adresse e-mail d'assistance, sélectionnez l'adresse e-mail que vous souhaitez afficher en tant que contact public. L'adresse e-mail doit appartenir au compte utilisateur actuellement connecté ou à un groupe Google auquel appartient l'utilisateur actuellement connecté.
      3. Saisissez le nom de l'application que vous souhaitez afficher.
      4. Ajoutez des détails, si nécessaire.
      5. Cliquez sur Save.

      Pour modifier ultérieurement les informations affichées sur l'écran d'autorisation OAuth, comme le nom du produit ou l'adresse e-mail, répétez les étapes de configuration précédentes.

    3. Sous Identifiants, cliquez sur Créer des identifiants > ID client OAuth.
    4. Sous Type d'application, sélectionnez Application Web, puis ajoutez un nom.
    5. Une fois les détails renseignés, cliquez sur Créer.
    6. Dans la fenêtre du client OAuth qui s'affiche, notez l'ID client et le code secret du client.
    7. Sélectionnez à nouveau le client. Ajoutez l'URL de redirection universelle au champ URI de redirection autorisés au format suivant : https://iap.googleapis.com/v1/oauth/clientIds/CLIENT_ID:handleRedirect, où CLIENT_ID correspond à l'ID client OAuth.

Activer IAP

  1. Utilisez Google Cloud CLI pour exécuter gcloud auth login.
  2. Suivez l'URL qui s'affiche pour vous connecter.
  3. Une fois la connexion effectuée, copiez le code de validation qui s'affiche et collez-le dans la ligne de commande.
  4. Exécutez gcloud config set project PROJECT_ID pour le projet pour lequel vous souhaitez activer IAP.
  5. Pour activer IAP, utilisez l'ID client et le code secret OAuth créés précédemment, puis exécutez la commande à l'échelle mondiale ou régionale.
    • Champ d'application global : gcloud compute backend-services update BACKEND_SERVICE_NAME --global --iap=enabled,oauth2-client-id=CLIENT_ID,oauth2-client-secret=CLIENT_SECRET.
    • Champ d'application régional : gcloud compute backend-services update BACKEND_SERVICE_NAME --region REGION_NAME --iap=enabled,oauth2-client-id=CLIENT_ID,oauth2-client-secret=CLIENT_SECRET.

Après avoir activé IAP, vous pouvez utiliser l'outil de ligne de commande gcloud pour manipuler les règles d'accès IAP à l'aide du rôle IAM roles/iap.httpsResourceAccessor. Découvrez comment gérer les rôles et les autorisations.