Collecter les journaux des utilisateurs d'appareils Cloud Identity

Compatible avec :

Ce document explique comment collecter les journaux des utilisateurs d'appareils Cloud Identity dans Google Security Operations à l'aide de la méthode API tierce, qui est l'approche recommandée. Le parseur extrait d'abord les données des journaux Cloud Identity Device Users au format JSON et transforme le code temporel au format standardisé. Il mappe ensuite des champs spécifiques des données de journaux brutes aux champs correspondants du modèle de données unifié (UDM) pour les entités utilisateur, leurs relations avec les composants et les attributs utilisateur supplémentaires tels que les états de gestion et de mot de passe.

Avant de commencer

Assurez-vous de remplir les conditions suivantes :

  • Une instance Google SecOps
  • Configurer la délégation au niveau du domaine pour un compte de service. Le compte de service doit être autorisé pour le champ d'application suivant :
    • https://www.googleapis.com/auth/cloud-identity.devices.readonly
  • Les API suivantes sont activées dans votre projet Google Cloud  :
    • API Cloud Identity
    • SDK Admin Google Workspace
    • API Alert Center

Recommandation : configurer les flux d'API tierces

Il existe deux points d'entrée différents pour configurer les flux dans la plate-forme Google SecOps :

  • Paramètres SIEM> Flux > Ajouter un flux
  • Plate-forme de contenu> Packs de contenu> Premiers pas

Configurer le flux Google Cloud Identity Device Users

  1. Cliquez sur le pack Plate-forme Google Cloud Compute.
  2. Recherchez le type de journal Google Cloud Utilisateurs d'appareils d'identité, puis cliquez sur Ajouter un flux.
  3. Indiquez les valeurs des champs suivants :
    • Type de source : sélectionnez API tierce.
    • Point de terminaison OAuth JWT : saisissez le point de terminaison du jeton OAuth : https://oauth2.googleapis.com/token.
    • Émetteur des revendications JWT : saisissez l'adresse e-mail du compte de service (disponible dans le fichier de clé JSON du compte de service).
    • Objet des revendications JWT : saisissez l'adresse e-mail de l'utilisateur auquel le rôle d'administrateur des services ou de super-administrateur est attribué dans la console Workspace (l'utilisateur dont l'identité est usurpée par délégation à l'échelle du domaine).
    • Audience des revendications JWT : saisissez à nouveau le point de terminaison : https://oauth2.googleapis.com/token
    • Clé privée RSA : collez l'intégralité du contenu de la clé privée du fichier de clé JSON du compte de service (y compris les lignes -----BEGIN PRIVATE KEY----- et -----END PRIVATE KEY-----).

Options avancées

  • Nom du flux : valeur préremplie qui identifie le flux.
  • Espace de noms de l'élément : espace de noms associé au flux.
  • Libellés d'ingestion : libellés appliqués à tous les événements de ce flux.
  1. Cliquez sur Créer un flux.

Pour en savoir plus sur la configuration de plusieurs flux pour différents types de journaux dans cette famille de produits, consultez Configurer des flux par produit.

Méthode alternative : ingestion via Cloud Storage

  1. Connectez-vous à la consoleGoogle Cloud .
  2. Accédez à la page Buckets Cloud Storage.

    Accéder à la page "Buckets"

  3. Cliquez sur Créer.

  4. Sur la page Créer un bucket, saisissez les informations concernant votre bucket. Après chacune des étapes suivantes, cliquez sur Continuer pour passer à la suivante :

    1. Dans la section Premiers pas, procédez comme suit :

      1. Saisissez un nom unique qui répond aux exigences relatives aux noms des buckets (par exemple, gcp-cloudidentity-users-logs).
      2. Pour activer l'espace de noms hiérarchique, cliquez sur la flèche d'expansion pour développer la section Optimiser pour les charges de travail orientées fichiers et à forte intensité de données, puis sélectionnez Activer l'espace de noms hiérarchique sur ce bucket.

      3. Pour ajouter une étiquette de bucket, cliquez sur la flèche de développement pour développer la section Étiquettes.

      4. Cliquez sur Ajouter un libellé, puis spécifiez une clé et une valeur pour votre libellé.

    2. Dans la section Choisir l'emplacement de stockage de vos données, procédez comme suit :

      1. Sélectionnez un type d'emplacement.
      2. Utilisez le menu du type d'emplacement pour sélectionner un emplacement où les données d'objet de votre bucket seront stockées de manière permanente.

      3. Pour configurer la réplication entre buckets, développez la section Configurer la réplication entre buckets.

    3. Dans la section Choisir une classe de stockage pour vos données, sélectionnez une classe de stockage par défaut pour le bucket, ou bien classe automatique pour une gestion automatique des classes de stockage des données de votre bucket.

    4. Dans la section Choisir comment contrôler l'accès aux objets, décochez Appliquer la protection contre l'accès public et sélectionnez un modèle de contrôle des accès pour les objets de votre bucket.

    5. Dans la section Choisissez comment protéger les données des objets, procédez comme suit :

      1. Sous Protection des données, sélectionnez les options que vous souhaitez définir pour votre bucket.
      2. Pour choisir comment vos données d'objet seront chiffrées, cliquez sur la flèche d'expansion intitulée Chiffrement des données, puis sélectionnez une méthode de chiffrement des données.
  5. Cliquez sur Créer.

Configurer l'exportation des journaux des utilisateurs d'appareils Cloud Identity

  1. Connectez-vous à la consoleGoogle Cloud .
  2. Accédez à Logging > Routeur de journaux.
  3. Cliquez sur Créer un récepteur.
  4. Fournissez les paramètres de configuration suivants :

    • Nom du récepteur : saisissez un nom explicite (par exemple, Cloudidentity-Users-Sink).
    • Destination du récepteur : sélectionnez Cloud Storage et saisissez l'URI de votre bucket (par exemple, gs://gcp-cloudidentity-users-logs/).
    • Filtre de journaux :

      logName="projects/<your-project-id>/logs/cloudaudit.googleapis.com%2Factivity"
      resource.type="cloud_identity_user"
      
    • Définissez les options d'exportation : incluez toutes les entrées de journaux.

  5. Cliquez sur Créer.

Configurer les autorisations pour Cloud Storage

  1. Accédez à IAM et administration> IAM.
  2. Recherchez le compte de service Cloud Logging.
  3. Attribuez le rôle roles/storage.admin sur le bucket.

Table de mappage UDM

Champ de journal Mappage UDM Logique
collection_time.nanos timestamp.nanos Mappé directement à partir du champ de journal. Représente le code temporel de l'événement en nanosecondes.
collection_time.seconds timestamp.seconds Mappé directement à partir du champ de journal. Représente le code temporel de l'événement en secondes.
createTime entity.metadata.creation_timestamp Mappé directement à partir du champ de journal après avoir été analysé par le filtre date. Représente l'horodatage de la création de l'utilisateur.
managementState entity.additional.fields.value.string_value Mappé directement à partir du champ de journal. Représente l'état de gestion de l'utilisateur.
nom entity.entity.resource.name Mappé directement à partir du champ de journal. Représente le nom complet de la ressource de l'utilisateur de l'appareil.
passwordState entity.additional.fields.value.string_value Mappé directement à partir du champ de journal. Représente l'état du mot de passe de l'utilisateur. Ce champ n'est mappé que si le champ passwordState existe dans le journal brut.
userEmail entity.entity.user.email_addresses Mappé directement à partir du champ de journal. Représente l'adresse e-mail de l'utilisateur.
entity.additional.fields.key Définissez une valeur constante Management State dans l'analyseur. Ce champ permet de fournir un contexte à la valeur managementState.
entity.additional.fields.key Définissez une valeur constante Password State dans l'analyseur. Ce champ permet de fournir un contexte à la valeur passwordState et n'est présent que si passwordState existe dans le journal brut.
entity.entity.user.product_object_id Extrait du champ name à l'aide du filtre grok, en capturant la partie deviceuser_id. Représente l'identifiant unique de l'utilisateur de l'appareil.
entity.metadata.collected_timestamp.nanos Copié depuis collection_time.nanos. Représente le code temporel de la collecte du journal.
entity.metadata.collected_timestamp.seconds Copié depuis collection_time.seconds. Représente le code temporel de la collecte du journal.
entity.metadata.entity_type Définissez une valeur constante USER dans l'analyseur.
entity.metadata.product_name Définissez une valeur constante GCP Cloud Identity Device Users dans l'analyseur.
entity.metadata.vendor_name Définissez une valeur constante Google Cloud Platform dans l'analyseur.
relations.entity.asset.product_object_id Extrait du champ name à l'aide du filtre grok, en capturant la partie device_id. Représente l'identifiant unique de l'appareil.
relations.entity_type Définissez une valeur constante ASSET dans l'analyseur.
relations.relationship Définissez une valeur constante MEMBER dans l'analyseur.

Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.