Activer l'accès basé sur des certificats avec des certificats de validation des points de terminaison

Cette page explique comment activer l'accès basé sur les certificats avec vos certificats provisionnés pour Endpoint Verification.

Vous pouvez utiliser la validation des points de terminaison pour provisionner automatiquement des certificats autosignés pour un appareil. Les certificats provisionnés pour la validation des points de terminaison vous permettent d'utiliser la CBA sans ICP de l'infrastructure. Ces certificats sont stockés dans un trousseau sur macOS, dans des magasins de certificats sous Windows et dans les systèmes de fichiers sous Linux.

Si vous disposez d'une infrastructure PKI, consultez Activer l'accès basé sur les certificats avec vos certificats d'entreprise pour activer l'accès basé sur les certificats.

Vous pouvez activer les certificats provisionnés pour Endpoint Verification sur les systèmes d'exploitation suivants :

  • macOS et Windows avec le navigateur Chrome
  • macOS, Windows et Linux avec la Google Cloud CLI

Si votre système d'exploitation ne figure pas dans la liste, consultez la section Utiliser des systèmes d'exploitation non entièrement compatibles.

Avant de commencer

Avant de continuer, assurez-vous de respecter les exigences suivantes:

Configurer la validation des points de terminaison

Suivez les instructions pour installer l'extension Chrome Endpoint Verification. pour tous les appareils des utilisateurs de votre organisation. L'extension provisionne des documents autosignés les certificats sur vos appareils et synchronise les métadonnées des certificats avec Google Cloud.

Installez l'application d'assistance Endpoint Verification. Cette application est requise pour utiliser la validation des points de terminaison avec CBA.

Configurer le navigateur Chrome des utilisateurs

Pour configurer le navigateur Chrome des utilisateurs afin qu'il utilise les certificats provisionnés par Endpoint Verification, vous devez configurer la règle Chrome AutoSelectCertificateForURLs pour permettre à Endpoint Verification de rechercher le certificat de l'appareil et de le collecter via Chrome.

  1. Assurez-vous que le navigateur Chrome des utilisateurs est géré par la gestion cloud du navigateur Chrome.
  2. Dans la console d'administration Google, ajoutez la règle AutoSelectCertificateForUrls.

    1. Accédez à Appareils > Chrome > Paramètres > Paramètres des utilisateurs et du navigateur > Certificats client.
    2. Sélectionnez l'unité organisationnelle appropriée.
    3. Ajoutez une règle. L'exemple suivant ajoute la classe AutoSelectCertificateForUrls règlement:

      {"pattern":"https://[*.]clients6.google.com","filter":{"ISSUER":{"CN":"Google Endpoint Verification"}}}
      {"pattern":"https://console-secure.cloud.google.com","filter":{"ISSUER":{"CN":"Google Endpoint Verification"}}}
      {"pattern":"https://storage.mtls.cloud.google.com","filter":{"ISSUER":{"CN":"Google Endpoint Verification"}}}
      

Une fois la configuration terminée, les utilisateurs peuvent accéder aux ressources Google Cloud depuis le navigateur Chrome console-secure.cloud.google.com.

Vérifier la configuration de la règle (facultatif)

  1. Dans le navigateur Chrome, saisissez chrome://policy.
  2. Vérifiez qu'AutoSelectCertificateForUrls est listé sous Règles Chrome.
  3. Vérifiez que la valeur de S'applique à est Machine. Sous ChromeOS, la valeur de S'applique à est Current User (Utilisateur actuel).
  4. Assurez-vous que l'état de la règle ne présente pas de conflit. Si l'état a un conflit, consultez Fonctionnement de la gestion des règles Chrome pour en savoir plus.

Configurer les outils de ligne de commande

Vous pouvez configurer les outils suivants pour utiliser les certificats provisionnés par Endpoint Verification :

  • Google Cloud CLI
  • La CLI Terraform (la CLI gcloud est nécessaire pour installer et configurer les composants d'assistance).

Étant donné que les certificats d'appareil sont stockés dans les keystores macOS et Windows, la CLI gcloud est fournie avec le composant Open Source Enterprise Certificate Proxy (ECP) pour interagir avec les API de gestion des clés.

Si vous utilisez un système Windows, vous devez avoir installé la bibliothèque d'exécution Visual Studio C++.

  1. Installez la CLI gcloud. Effectuez l'installation en activant l'option Python intégrée.
  2. Activez la CBA.
  3. Pour macOS et Linux, téléchargez et exécutez le script install.sh.

    ./google-cloud-sdk/install.sh
    
  4. Pour les utilisateurs Linux, passez à l'étape Activer les certificats provisionnés pour la CBA et la validation des points de terminaison. Pour les utilisateurs macOS et Windows, procédez comme suit.

    1. Installez le composant d'assistance ECP avec la gcloud CLI.

      
      gcloud components install enterprise-certificate-proxy
      
    2. Initialisez la configuration du certificat ECP avec la gcloud CLI.

      macOS

      
      gcloud auth enterprise-certificate-config create macos \
      --issuer="Google Endpoint Verification"
      

      Windows

      
      gcloud auth enterprise-certificate-config create windows \
      --issuer="Google Endpoint Verification" \
      --provider=current_user \
      --store=MY
      

      (Facultatif) Configurez le certificat ECP manuellement en exécutant la commande suivante.

      macOS

      La configuration de l'ECP est stockée dans un fichier JSON, situé dans ~/.config/gcloud/certificate_config.json.

      {
        "cert_configs": {
            "macos_keychain": {
              "issuer": "Google Endpoint Verification"
            }
        },
        "libs": {
          "ecp": "<YOUR_GCLOUD_INSTALL_PATH>/google-cloud-sdk/bin/ecp",
          "ecp_client": "<YOUR_GCLOUD_INSTALL_PATH>/google-cloud-sdk/platform/enterprise_cert/libecp.dylib",
          "tls_offload": "<YOUR_GCLOUD_INSTALL_PATH>/google-cloud-sdk/platform/enterprise_cert/libtls_offload.dylib"
        }
      }
      

      Windows

      La configuration de l'ECP est stockée dans un fichier JSON, situé dans %APPDATA%\gcloud\certificate_config.json.

      {
        "cert_configs": {
          "windows_store": {
            "store": "MY",
            "provider": "current_user",
            "issuer":"Google Endpoint Verification"
          }
        },
        "libs": {
          "ecp": "C:/Users/<USERNAME>/AppData/Local/Google/Cloud SDK/google-cloud-sdk/bin/ecp.exe",
          "ecp_client": "C:/Users/<USERNAME>/AppData/Local/Google/Cloud SDK/google-cloud-sdk/platform/enterprise_cert/libecp.dll",
          "tls_offload": "C:/Users/<USERNAME>/AppData/Local/Google/Cloud SDK/google-cloud-sdk/platform/enterprise_cert/libtls_offload.dll"
        }
      }
      
  5. Activez les certificats provisionnés pour la CBA et la validation des points de terminaison.

    • Pour la gcloud CLI, exécutez la commande suivante.

      gcloud config set context_aware/use_client_certificate true
      
    • Pour tous les autres outils de ligne de commande, y compris Terraform, définissez la variable d'environnement.

      export GOOGLE_API_USE_CLIENT_CERTIFICATE=1
      

Utiliser des systèmes d'exploitation non entièrement compatibles

Si votre système d'exploitation ne figure pas dans la liste des systèmes d'exploitation compatibles des points de terminaison, et vous souhaitez utiliser la validation des points de terminaison les certificats, vous pouvez les exclure de l'application basée sur les certificats et de les protéger à l'aide d'autres types de mesures d'application. Par exemple, en utilisant une stratégie d'appareil appartenant à l'entreprise.

Notez que l'application basée sur les certificats offre une protection plus efficace que les autres types d'application, car elle applique chaque requête provenant d'un appareil via le handshake mTLS.

Voici un exemple d'exclusion des environnements basés sur les certificats les mesures d'application et de les protéger à l'aide d'un autre type d'application.

Dans cet exemple, une organisation utilise macOS, Windows et ChromeOS. appareils. L'organisation souhaite protéger les accès provenant du console Google Cloud.

  1. Créer un niveau d'accès qui applique un accès basé sur les certificats pour tous les appareils, à l'exception Appareils ChromeOS sur lesquels une règle relative aux appareils détenus par l'entreprise est requise Remplacez le fichier YAML par l'expression personnalisée suivante :

    certificateBindingState(origin, device) == CertificateBindingState.CERT_MATCHES_EXISTING_DEVICE
     || (device.os_type == OsType.DESKTOP_CHROME_OS && device.is_corp_owned_device)
    
  2. Suivez les étapes des procédures précédentes.

    1. Créer une règle contextuelle
    2. Configurer la validation des points de terminaison
    3. Configurer le navigateur Chrome des utilisateurs pour qu'il utilise les certificats provisionnés par Endpoint Verification