Restreindre l'utilisation des ressources

Cette page présente le principe de restriction de l'utilisation du service de ressources. contrainte de règle d'administration, qui permet aux administrateurs de l'entreprise de contrôler Les services Google Cloud peuvent être utilisés dans leur la hiérarchie des ressources. Cette contrainte ne peut être appliquée qu'aux services avec Ressources qui sont les descendants directs d'une organisation, d'un dossier ou d'un projet ressource. (par exemple, Compute Engine et Cloud Storage).

La contrainte Restreindre l'utilisation des services de ressources exclut et ne fonctionne pas avec à certains services, qui sont des dépendances essentielles tels que Identity and Access Management (IAM), Cloud Logging et Cloud Monitoring. Pour la liste des services de ressources cloud compatibles par cette contrainte, consultez la page Restreindre les services compatibles avec l'utilisation des ressources.

Les administrateurs peuvent utiliser cette contrainte pour définir des restrictions hiérarchiques services de ressources Google Cloud autorisés dans un conteneur de ressources, comme une organisation, un dossier ou un projet. Par exemple, autorisez storage.googleapis.com dans le projet X, ou refusez compute.googleapis.com dans le dossier Y. Cette contrainte détermine également Disponibilité de la console Google Cloud

La contrainte Restreindre l'utilisation des services de ressources peut être utilisée de deux manières qui s'excluent mutuellement :

  • Liste de refus : les ressources d'un service non refusé sont autorisées.

  • Liste d'autorisation : les ressources d'un service non autorisé sont refusées.

La contrainte Restreindre l'utilisation des services de ressources contrôle l'accès de l'environnement d'exécution à toutes les ressources couvertes. Lorsque la règle d'administration contenant est mise à jour, elle s'applique immédiatement à tous les accès qui entrent dans le champ d'application du règlement, avec une cohérence à terme.

Nous recommandons aux administrateurs de gérer avec attention les mises à jour des règles d'administration contenant cette contrainte. Vous pouvez déployer ce changement de règle de manière plus sécurisée en à l'aide de tags pour appliquer la contrainte de manière conditionnelle. Pour en savoir plus, consultez la section Définir une règle d'administration avec des tags.

Lorsqu'un service est limité par cette règle, certains services Google Cloud qui ont une dépendance directe au service restreint sera limité bien. Cela ne s'applique qu'aux services qui gèrent les mêmes ressources client. Par exemple, Google Kubernetes Engine (GKE) dépend d'une instance Compute Engine. Lorsque Compute Engine est restreint, GKE est aussi restreintes.

Disponibilité de la console Google Cloud

Les services restreints dans la console Google Cloud se comportent de la manière suivante:

  • Vous ne pouvez pas accéder à un produit à l'aide de la Menu .
  • Les services restreints n'apparaissent pas dans les résultats de recherche de la console Google Cloud.
  • Lorsque vous accédez à la page de la console Google Cloud d'un service restreint, que depuis un lien ou un favori, un message d'erreur s'affiche.

Utiliser la contrainte de restriction de l'utilisation des services de ressources

Les contraintes liées aux règles d'administration peuvent être définies au niveau de l'organisation, du dossier au niveau du projet. Chaque stratégie s'applique à toutes les ressources la hiérarchie des ressources, mais peuvent être remplacées aux niveaux inférieurs la hiérarchie.

Pour en savoir plus sur l'évaluation des règles, consultez la page Comprendre le processus d'évaluation hiérarchique.

Définir la règle d'administration

Pour définir, modifier ou supprimer une règle d'administration, vous devez disposer du rôle Administrateur de règle d'administration.

Console

Pour définir une règle d'administration incluant une contrainte Restreindre l'utilisation des services de ressources, procédez comme suit :

  1. Dans la console Google Cloud, accédez à la page Règles d'administration.

    Accéder à la page Règles d'administration

  2. Dans le sélecteur de projet, choisissez la ressource sur laquelle vous souhaitez définir le des règles d'administration.

  3. Dans le tableau des règles d'administration, sélectionnez Restreindre l'utilisation des services de ressources.

  4. Cliquez sur Gérer la règle.

  5. Sous Applicable à, sélectionnez Remplacer les règles parentes.

  6. Sous Policy enforcement (Application des règles), déterminez comment appliquer l'héritage de cette règle.

    1. Si vous souhaitez hériter de la règle d'administration de la ressource parente et la fusionner avec celle-ci, sélectionnez Merge with parent (Fusionner avec le parent).

    2. Si vous souhaitez remplacer des règles d'administration existantes, sélectionnez Replace (Remplacer).

  7. Cliquez sur Ajouter une règle.

  8. Sous Valeurs de règles, sélectionnez Personnalisé.

  9. Sous Policy type (Type de règle), sélectionnez Deny (Refuser) pour la liste de blocage ou Allow (Autoriser) pour la liste d'autorisation.

  10. Sous Custom values (Valeurs personnalisées), ajoutez le service dont vous souhaitez bloquer ou autoriser l'accès à la liste.

    1. Par exemple, pour bloquer Cloud Storage, vous pouvez saisir storage.googleapis.com

    2. Pour ajouter d'autres services, cliquez sur Ajouter une valeur.

  11. Pour appliquer la règle, cliquez sur Définir la règle.

gcloud

Les règles d'administration peuvent être définies via la Google Cloud CLI. Pour appliquer Une règle d'administration incluant le paramètre Restreindre l'utilisation du service des ressources , créez d'abord un fichier YAML avec la stratégie à mettre à jour:

name: organizations/ORGANIZATION_ID/policies/gcp.restrictServiceUsage
spec:
   rules:
   - values:
       deniedValues:
       - file.googleapis.com
       - bigquery.googleapis.com
       - storage.googleapis.com

Remplacez ORGANIZATION_ID par l'ID de votre ressource d'organisation. Pour définir cette règle sur une ressource, exécutez la commande suivante:

gcloud beta resource-manager org-policies set-policy \
  --project='PROJECT_ID' /tmp/policy.yaml

Remplacez PROJECT_ID par le ID du projet de la ressource sur laquelle vous souhaitez appliquer cette règle d'administration.

Pour en savoir plus sur l'utilisation de contraintes dans les règles d'administration, consultez la page Utiliser des contraintes.

Limiter les ressources sans tag

Vous pouvez utiliser des tags et des règles d'administration conditionnelles pour restreindre les ressources qui n'utilisent pas de tag spécifique. Si vous définissez une règle d'administration une ressource qui limite les services et la conditionne à la présence d'une aucune ressource enfant descendante de cette ressource ne peut être utilisée, sauf si ont été associés à un tag. Ainsi, les ressources doivent être configurées conformément à vos de gouvernance avant de pouvoir les utiliser.

Pour limiter les ressources d'organisation, de dossier ou de projet sans balise, vous pouvez utiliser la Opérateur logique ! dans une requête conditionnelle lors de la création de votre organisation .

Par exemple, pour autoriser l'utilisation de sqladmin.googleapis.com uniquement dans les projets comportant le tag sqladmin=enabled, vous pouvez créer une règle d'administration refuse sqladmin.googleapis.com sur les projets qui ne comportent pas ce tag sqladmin=enabled

  1. Créer une balise qui détermine si les ressources ont été gérées appliquée. Par exemple, vous pouvez créer un tag avec la clé sqlAdmin et la paire valeur/clé la valeur enabled, pour indiquer que cette ressource doit autoriser l'utilisation l'API Cloud SQL Admin. Exemple :

    Créer une clé et une valeur de tag

  2. Cliquez sur le nom du tag que vous venez de créer. Vous avez besoin du nom de l'espace de noms de la clé de tag, indiquée sous Chemin de la clé de tag, lors des prochaines étapes pour créer une .

  3. Créez une règle d'administration Restreindre l'utilisation du service des ressources au niveau du compte. de votre ressource Organisation pour refuser l'accès à l'API Cloud SQL Admin. Exemple :

    Créer une règle d'administration pour restreindre les ressources

  4. Ajoutez une condition à la règle d'administration ci-dessus, en spécifiant que la règle est appliquée en l'absence de balise de gouvernance. L'opérateur logique NOT n'est pas compatible avec le générateur de conditions. Cette condition doit donc être créée dans l'éditeur de conditions. Exemple :

    Créer une règle d'administration conditionnelle

    !resource.matchTag("012345678901/sqlAdmin", "enabled")

Le tag sqlAdmin=enabled doit être associé à un projet ou hérité par celui-ci. avant que vos développeurs puissent utiliser l'API Cloud SQL Admin avec ce projet.

Pour en savoir plus sur la création de règles d'administration conditionnelles, consultez Définir une règle d'administration avec des tags

Créer une règle d'administration en mode de simulation

Une règle d'administration en mode de simulation est un type de règle d'administration les cas de non-respect des règles sont consignés dans des journaux d'audit, mais pas les actions non conformes. refusée. Vous pouvez créer une règle d'administration en mode dry run (test à blanc) à l'aide de la Contrainte Restreindre l'utilisation du service de ressources pour surveiller son impact votre organisation avant d'appliquer la règle active. Pour en savoir plus, consultez Créez une règle d'administration en mode de simulation.

Message d'erreur

Si vous définissez une règle d'administration pour refuser le service A dans la hiérarchie des ressources B, l'opération échoue lorsqu'un client tente d'utiliser le service A dans la hiérarchie des ressources B. Une erreur indiquant la raison de cet échec s'affiche. Une entrée AuditLog est également générée pour optimiser la surveillance, les alertes ou le débogage.

Exemple de message d'erreur

Request is disallowed by organization's constraints/gcp.restrictServiceUsage
constraint for projects/PROJECT_ID attempting to use service
storage.googleapis.com.

Exemple de journaux d'audit Cloud

Capture d'écran d'un exemple d'entrée du journal d'audit