L'un des principes clés de Chrome Enterprise Premium est que l'accès aux services est accordé en fonction d'informations contextuelles vous concernant, vous et votre appareil. Chrome Enterprise Premium déduit de manière dynamique le niveau d'accès accordé à un seul utilisateur ou appareil en évaluant plusieurs sources de données, et utilise ce niveau de confiance dans le cadre de son processus de décision.
Access Context Manager est le moteur de stratégies zéro confiance de Chrome Enterprise Premium. Access Context Manager vous permet de définir un contrôle d'accès précis et basé sur des attributs pour les applications et les ressources Google Cloud .
Utilisez des niveaux d'accès pour autoriser l'accès aux ressources en fonction des informations contextuelles de la requête. En utilisant des niveaux d'accès, vous pouvez commencer à organiser des niveaux de confiance. Par exemple, vous pouvez créer un niveau d'accès appelé High_Level qui autorise les requêtes d'un petit groupe de personnes disposant de privilèges élevés. Vous pouvez également identifier un groupe plus général auquel faire confiance, comme une plage d'adresses IP à partir de laquelle vous souhaitez autoriser les requêtes. Dans ce cas, vous pouvez créer un niveau d'accès appelé Medium_Level pour autoriser ces requêtes.
L'une des principales exigences de l'accès zéro confiance est de n'autoriser l'accès que lorsque l'appareil est géré ou détenu par l'entreprise. Il existe plusieurs façons de déterminer si un appareil appartient à l'entreprise. Une solution consiste à déterminer si un certificat valide, émis par l'entreprise, est présent sur l'appareil. Un certificat d'entreprise sur un appareil peut indiquer qu'il appartient à l'entreprise.
Les certificats d'entreprise pour l'accès contextuel sont une fonctionnalité de la solution globale d'accès basé sur les certificats Chrome Enterprise Premium. Cette fonctionnalité utilise les certificats d'appareil comme signal contextuel alternatif pour déterminer si un appareil appartient à l'entreprise. Cette fonctionnalité est compatible avec le navigateur Google Chrome version 110 ou ultérieure.
Comme un appareil peut posséder plusieurs certificats, vous pouvez accéder aux certificats d'entreprise dans le niveau d'accès personnalisé via la macro .exists(e, p) :
device.certificates.exists(cert, predicate)
Dans l'exemple, cert est un identifiant utilisé dans predicate, qui est lié au certificat de l'appareil. La macro exists() combine les résultats de prédicat par élément avec l'opérateur "or" (||), ce qui signifie que les macros renvoient la valeur "true" si au moins un certificat satisfait l'expression predicate.
Le certificat possède les attributs suivants, qui peuvent être vérifiés ensemble. Notez que les comparaisons de chaînes sont sensibles à la casse.
| Attribut | Description | Exemple d'expression de prédicat (pour laquelle cert est un identifiant de macros) |
|---|---|---|
is_valid |
Définie sur "true" si le certificat est valide et s'il n'a pas expiré (booléen).
Vérifie si le certificat n'a pas expiré et s'il est signé par une ancre de confiance. Notez que la validation des points de terminaison ne vérifie pas la révocation des certificats. |
cert.is_valid |
cert_fingerprint |
Empreinte du certificat (SHA256 sans remplissage base64).
L'empreinte correspond au condensé SHA256 encodé en base64 sans remplissage (au format binaire) du certificat avec encodage DER. Vous pouvez générer la chaîne à partir du certificat au format PEM via la procédure suivante avec OpenSSL :
|
cert.cert_fingerprint == origin.clientCertFingerprint()
|
root_ca_fingerprint |
Empreinte du certificat CA racine qui permet de signer le certificat (SHA256 sans remplissage base64). L'empreinte correspond au condensé SHA256 encodé en base64 sans remplissage (au format binaire) du certificat avec encodage DER. Vous pouvez générer la chaîne à partir du certificat au format PEM via la procédure suivante avec OpenSSL :
|
cert.root_ca_fingerprint == "ROOT_CA_FINGERPRINT" |
issuer |
Nom de l'émetteur (noms entiers).
Pour trouver le nom de l'émetteur, vous pouvez procéder comme suit : Exécutez la commande suivante sur le certificat :
$ openssl x509 -in ca_1.crt -issuer
issuer= /C=US/ST=CA/L=MTV/O=ExampleCorp/OU=ExampleUnit/CN=inter_1/emailAddress=admin@example.com
Pour obtenir la chaîne d'émetteur pour le niveau d'accès, inversez la sortie et remplacez chaque barre oblique (/) par une virgule (,) :
|
cert.issuer == "EMAILADDRESS=admin@example.com, CN=inter_1, OU=ExampleUnit, O=ExampleCorp, L=MTV, ST=CA, C=US" |
subject |
Nom de l'objet du certificat (noms entiers). | cert.subject == "CA_SUB" |
serial_number |
Numéro de série du certificat (chaîne). | cert.serial_number == "SERIAL_NUMBER" |
template_id |
ID du modèle de l'extension X.509 du modèle de certificat pour le certificat (chaîne). | cert.template_id == "TEMPLATE_ID" |
Le tableau suivant contient des exemples de règles que vous pouvez définir :
| Exemple de règle | Expression |
|---|---|
| L'appareil dispose d'un certificat valide signé par le certificat racine de l'entreprise. | device.certificates.exists(cert, cert.is_valid && cert.root_ca_fingerprint == "ROOT_CA_FINGERPRINT")
|
L'appareil dispose d'un certificat valide émis par l'émetteur CA_ABC. |
device.certificates.exists(cert, cert.is_valid && cert.issuer == "EMAILADDRESS=admin@example.com, CN=inter_1, OU=ExampleUnit, O=ExampleCorp, L=MTV, ST=CA, C=US")
|
Configurer des certificats d'entreprise
Avant de configurer des certificats d'entreprise, assurez-vous d'avoir configuré des niveaux d'accès personnalisés. Pour obtenir des instructions, consultez Créer un niveau d'accès personnalisé.
Vous pouvez utiliser une définition de niveau d'accès personnalisée Access Context Manager pour définir les règles appropriées. Les niveaux d'accès personnalisés utilisent des expressions booléennes écrites dans un sous-ensemble du langage CEL (Common Expression Language) pour tester les attributs d'un client qui effectue une requête.
Importer des ancres de confiance dans la console d'administration
Pour que Chrome Enterprise Premium collecte et valide le certificat d'entreprise de l'appareil, vous devez importer les ancres de confiance et tous les certificats intermédiaires utilisés pour émettre le certificat de l'appareil. Les ancres de confiance correspondent au certificat CA (autorité de certification) racine autosigné et aux certificats intermédiaires et subordonnés pertinents. Pour importer les ancres de confiance, procédez comme suit :
- Accédez à la console d'administration, puis à Appareils> Réseaux> Certificats.
- Sélectionnez l'unité organisationnelle appropriée.
- Sélectionnez Ajouter un certificat.
- Saisissez le nom du certificat.
- Importez le certificat.
- Cochez la case Validation des points de terminaison.
- Cliquez sur Ajouter.
- Assurez-vous que les utilisateurs appartiennent à l'unité organisationnelle pour laquelle vous avez importé les ancres de confiance.
Configurer une règle AutoSelectCertificateForUrls
Pour qu'Endpoint Verification recherche le certificat de l'appareil et le collecte via Chrome, vous devez configurer la règle AutoSelectCertificateForUrls en procédant comme suit :
Assurez-vous que le navigateur Chrome est géré par la gestion cloud du navigateur Chrome.
- Pour Windows, macOS et Linux, configurez le navigateur Chrome géré dans le cloud à l'aide de Chrome Enterprise Core. Pour obtenir des instructions, consultez S'inscrire à Chrome Enterprise Core.
- Enregistrez votre appareil pour permettre à votre organisation de le gérer de manière centralisée. Pour obtenir des instructions, consultez Enregistrer des navigateurs Chrome gérés dans le cloud.
Dans la console d'administration, ajoutez la règle
AutoSelectCertificateForUrls:- Accédez à la console d'administration, puis à Appareils > Chrome > Paramètres > Paramètres de l'utilisateur et du navigateur > Certificats client.
- Sélectionnez l'unité organisationnelle appropriée.
Ajoutez une règle AutoSelectCertificateForUrls en vous basant sur l'exemple suivant :
{"pattern":"https://[*.]clients6.google.com","filter":{"ISSUER":{"CN":"CERTIFICATE_ISSUER_NAME"}}}Remplacez
CERTIFICATE_ISSUER_NAMEpar le nom commun de l'autorité de certification émettrice. Ne modifiez pas la valeur depattern.
Pour vérifier la configuration de la règle, procédez comme suit :
- Accédez à
chrome://policydans le navigateur. - Vérifiez la valeur configurée pour AutoSelectCertificateForUrls.
- Assurez-vous que la valeur S'applique à de la règle est définie sur Machine. Sur ChromeOS, la valeur s'applique à Utilisateur actuel.
- Vérifiez que l'état de la règle n'indique pas Conflit.