Collecter les journaux de données contextuelles organisationnelles Microsoft Entra ID (anciennement Azure Active Directory)

Version de l'analyseur : 12.0

Compatible avec :

Ce document explique comment collecter les données contextuelles de l'organisation Microsoft Entra ID (anciennement Azure Active Directory) en configurant un flux Google Security Operations à l'aide de l'API tierce.

Le contexte organisationnel Microsoft Entra ID fournit des informations d'annuaire telles que les utilisateurs, les groupes et les appareils de votre locataire Microsoft Entra ID. Il ne s'agit pas de données d'événement ou de journal, mais d'un instantané périodique de l'état de l'annuaire qui enrichit d'autres types de journaux dans Google SecOps avec un contexte d'identité.

Avant de commencer

Assurez-vous de remplir les conditions suivantes :

  • Une instance Google SecOps
  • Accès privilégié au portail Microsoft Azure
  • L'un des rôles suivants pour accorder l'autorisation d'administrateur :
    • Administrateur général : peut accorder le consentement pour n'importe quelle autorisation, pour n'importe quelle API.
    • Administrateur de rôle privilégié : peut accorder l'autorisation pour n'importe quelle autorisation, pour n'importe quelle API.

Configurer la liste d'autorisation d'adresses IP

Vous devez ajouter les plages d'adresses IP Google SecOps dans vos paramètres réseau Microsoft Azure ou vos règles d'accès conditionnel avant de créer votre flux. Cela est important lorsque la source de données applique des restrictions basées sur l'adresse IP. Si le flux renvoie une erreur 403, vérifiez que l'ajout à la liste d'autorisation y est activé. Pour restreindre l'accès à une plage plus étroite, envoyez une demande d'assistance.

Pour en savoir plus, consultez Liste d'autorisation d'adresses IP.

Obtenir les plages d'adresses IP Google SecOps

  1. Accédez à Paramètres > Gestion des données > Flux. Si vous utilisez une plate-forme SIEM uniquement, accédez à Paramètres > Flux.
  2. Cliquez sur Ajouter un flux d'actualités.
  3. Notez les plages d'adresses IP affichées dans l'interface de création de flux.
  4. Vous pouvez également récupérer les plages d'adresses IP de manière programmatique à l'aide de l'API Feed Management.

Configurer l'accès conditionnel pour les identités de charge de travail (si nécessaire)

Si votre organisation utilise des règles d'accès conditionnel qui limitent l'accès en fonction de l'emplacement, procédez comme suit :

  1. Dans le centre d'administration Microsoft Entra, accédez à Protection > Accès conditionnel > Emplacements nommés.
  2. Cliquez sur + Nouvel établissement.
  3. Fournissez les informations de configuration suivantes :
    • Nom : saisissez Google SecOps IP Ranges.
    • Marquer comme emplacement de confiance : facultatif, en fonction de votre stratégie de sécurité.
    • Plages d'adresses IP : ajoutez chaque plage d'adresses IP Google SecOps au format CIDR.
  4. Cliquez sur Créer.
  5. Accédez à Accès conditionnel > Stratégies.
  6. Pour toutes les règles qui s'appliquent aux identités de charge de travail, configurez une exclusion pour l'emplacement nommé Google SecOps IP Ranges ou le principal de service spécifique.

Configurer l'enregistrement d'application Microsoft Entra

Créer un enregistrement d'application

  1. Connectez-vous au centre d'administration Microsoft Entra ou au portail Azure.
  2. Accédez à Identity > Applications > Inscription d'applications.
  3. Cliquez sur Nouvelle inscription.
  4. Fournissez les informations de configuration suivantes :
    • Nom : saisissez un nom descriptif (par exemple, Google SecOps Entra ID Context Integration).
    • Supported account types (Types de comptes compatibles) : sélectionnez Accounts in this organizational directory only (Single tenant) (Comptes dans cet annuaire organisationnel uniquement (Locataire unique)).
    • URI de redirection : laissez ce champ vide (non requis pour l'authentification du principal de service).
  5. Cliquez sur S'inscrire.
  6. Après l'enregistrement, copiez et enregistrez les valeurs suivantes :
    • ID d'application (client)
    • ID de l'annuaire (locataire)

Configurer les autorisations de l'API

Le flux lit l'annuaire des utilisateurs via le point de terminaison Microsoft Graph List users, avec le responsable de chaque utilisateur développé. Accordez à l'application les autorisations correspondant aux options de flux que vous activez.

  1. Dans l'enregistrement de l'application, accédez à API permissions (Autorisations des API).
  2. Cliquez sur Ajouter une autorisation.
  3. Sélectionnez Microsoft Graph> Autorisations de l'application.
  4. Recherchez et sélectionnez les autorisations suivantes :
    • User.Read.All : obligatoire. Lit les profils utilisateur et la relation de gestion que le flux ingère.
    • Group.Read.All : uniquement si vous définissez Retrieve groups (Récupérer les groupes) sur True dans le flux. Lit les groupes renvoyés pour l'appartenance de chaque utilisateur.
    • Device.Read.All : uniquement si vous définissez Récupérer les appareils sur True dans le flux. Lit les appareils associés à chaque utilisateur.
  5. Cliquez sur Ajouter des autorisations.
  6. Cliquez sur Accorder le consentement administrateur pour votre organisation.
  7. Vérifiez que la colonne État indique Accordé pour votre organisation pour toutes les autorisations.

    Autorisation Type Si nécessaire
    User.Read.All Application Toujours
    Group.Read.All Application Récupérer les groupes est défini sur True.
    Device.Read.All Application Récupérer les appareils est défini sur True.

Créer un code secret du client

  1. Dans l'enregistrement de l'application, accédez à Certificats et secrets.
  2. Cliquez sur Nouveau code secret du client.
  3. Fournissez les informations de configuration suivantes :

    • Description : saisissez un nom descriptif (par exemple, Google SecOps Feed).
    • Expire : sélectionnez une période d'expiration.
  4. Cliquez sur Ajouter.

  5. Copiez immédiatement la valeur du code secret du client.

Configurer un flux dans Google SecOps pour ingérer les données de contexte organisationnel Microsoft Entra ID

Pour configurer le flux, procédez comme suit :

  1. Accédez à Paramètres > Gestion des données > Flux. Si vous utilisez une plate-forme SIEM uniquement, accédez à Paramètres > Flux.
  2. Cliquez sur Ajouter un flux d'actualités.
  3. Sur la page suivante, cliquez sur Configurer un seul flux.
  4. Dans le champ Nom du flux, saisissez un nom pour le flux (par exemple, Azure AD Organizational Context).
  5. Sélectionnez API tierce comme type de source.
  6. Sélectionnez Contexte organisationnel Azure AD comme Type de journal.
  7. Cliquez sur Suivant.
  8. Spécifiez les valeurs des paramètres d'entrée suivants :

    • ID client OAuth : saisissez l'ID d'application (client) de l'enregistrement de l'application.
    • Code secret du client OAuth : saisissez la valeur du code secret du client que vous avez copiée précédemment.
    • ID de locataire : saisissez l'ID d'annuaire (locataire) de l'enregistrement de l'application au format UUID (par exemple, 0fc279f9-fe30-41be-97d3-abe1d7681418).
    • Récupérer les appareils : indiquez si vous souhaitez récupérer les informations sur les appareils dans le contexte de l'utilisateur. Définissez cette option sur True pour inclure les données de l'appareil.
    • Récupérer les groupes : indiquez si vous souhaitez récupérer les informations d'appartenance à un groupe dans le contexte de l'utilisateur. Définissez cette option sur True pour inclure les données du groupe.
    • Chemin d'accès complet de l'API : URL du point de terminaison de l'API REST Microsoft Graph :

      graph.microsoft.com/beta
      
    • Point de terminaison d'authentification de l'API : point de terminaison d'authentification Microsoft Entra ID :

      login.microsoftonline.com
      

    Options avancées :

    • Espace de noms de l'élément : espace de noms de l'élément.
    • Étiquettes d'ingestion : étiquette à appliquer aux événements de ce flux.
  9. Cliquez sur Suivant.

  10. Vérifiez la configuration de votre nouveau flux d'actualités sur l'écran Finaliser, puis cliquez sur Envoyer.

Points de terminaison régionaux

Pour les déploiements Microsoft Entra ID dans des clouds souverains, utilisez les points de terminaison régionaux appropriés :

Environnement cloud Chemin d'accès complet de l'API Point de terminaison d'authentification de l'API
Monde graph.microsoft.com/beta login.microsoftonline.com
US Government L4 graph.microsoft.us/beta login.microsoftonline.us
Gouvernement américain L5 (DOD) dod-graph.microsoft.us/beta login.microsoftonline.us
Chine (21Vianet) microsoftgraph.chinacloudapi.cn/beta login.chinacloudapi.cn

Table de mappage UDM

Champ du journal Mappage UDM Logique
extension_wfc_AccountType entity.labels.value Mappage direct
extension_wfc_AccountingUnitName entity.labels.value Mappage direct
extension_wfc_execDescription entity.labels.value Mappage direct
extension_wfc_groupDescription entity.labels.value Mappage direct
extension_wfc_orgDescription entity.labels.value Mappage direct
createdDateTime entity.user.attribute.creation_time Analysé en tant que RFC3339
sign_in_type entity.user.attribute.labels.key Mappage direct
assignedLicense.skuId entity.user.attribute.labels.value Mappage direct
employeeType entity.user.attribute.labels.value Mappage direct
empmanager-src.usageLocation entity.user.attribute.labels.value Mappage direct
externalUserState entity.user.attribute.labels.value Mappage direct
gopher-manager.onPremisesImmutableId entity.user.attribute.labels.value Mappage direct
mailNickname entity.user.attribute.labels.value Mappage direct
onPremisesDistinguishedName entity.user.attribute.labels.value Mappage direct
onPremisesDomainName entity.user.attribute.labels.value Mappage direct
onPremisesExtensionAttributes.extensionAttribute4 entity.user.attribute.labels.value Mappage direct
onPremisesImmutableId entity.user.attribute.labels.value Mappage direct
onPremisesSamAccountName entity.user.attribute.labels.value Mappage direct
refreshTokensValidFromDateTime entity.user.attribute.labels.value Mappage direct
token_date_time entity.user.attribute.labels.value Mappage direct
userPrincipalName entity.user.attribute.labels.value Mappage direct
user_ou_data entity.user.attribute.labels.value Mappage direct
userType entity.user.attribute.roles.name Mappage direct
user_ou_data entity.user.attribute.roles.type Mappé : Admin → ADMINISTRATOR, Service Accounts → SERVICE_ACCOUNT
department entity.user.department Fusionné
mail entity.user.email_addresses Fusionné
proxyAddress entity.user.email_addresses Mappé : smtp/SMTP → proxyAddress
userPrincipalName entity.user.email_addresses Fusionné
employeeId entity.user.employee_id Renommé/Mappé
extension_employeeNumber entity.user.employee_id Renommé/Mappé
onPremisesDomainName entity.user.group_identifiers Fusionné
proxyAddress entity.user.group_identifiers Fusionné
sign_in_type_manager entity.user.managers.attribute.labels.key Mappage direct
temp entity.user.managers.attribute.labels.key Mappé : true → manager accountEnabled
empmanager-src.sbuxCompanyCode entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxCostCenter entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxDirectorySync entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxEmployeeStatus entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxEmployeeType entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxFullName entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxFullNameAKA entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxFullNameAKAAlt entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxFullNameAlt entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxGivenNameAlt entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxGlobalID entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxJobNumber entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxKnownAs entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxKnownAsAlt entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxLocalMarket entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxLocalMarketEmployeeID entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxManagerImmutableID entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxManagerNumber entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxOnTLA entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxOrgAreaID entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxOrgDistrictID entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxOrgDivisionID entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxOrgRegionID entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxOrgShortName entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxOrgStoreID entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxOrgType entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxOrgUnit entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxSnAlt entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.sbuxSourceSystem entity.user.managers.attribute.labels.value Mappage direct
empmanager-src.userPrincipalName entity.user.managers.attribute.labels.value Mappage direct
manager_ou_data entity.user.managers.attribute.labels.value Mappage direct
temp entity.user.managers.attribute.labels.value Mappage direct
manager_user_type entity.user.managers.attribute.roles.name Mappage direct
manager_ou_data entity.user.managers.attribute.roles.type Mappé : Users → ADMINISTRATOR, Service Accounts → SERVICE_ACCOUNT
empmanager-src.companyName entity.user.managers.company_name Renommé/Mappé
empmanager-src.department entity.user.managers.department Fusionné
empProxyAddress entity.user.managers.email_addresses Mappé : smtp/SMTP → empProxyAddress
empmanager-src.mail entity.user.managers.email_addresses Fusionné
principal_name entity.user.managers.email_addresses Fusionné
empmanager-src.employeeId entity.user.managers.employee_id Renommé/Mappé
empmanager-src.extension_employeeNumber entity.user.managers.employee_id Renommé/Mappé
empmanager-src.givenName entity.user.managers.first_name Renommé/Mappé
empProxyAddress entity.user.managers.group_identifiers Fusionné
empmanager-src.surname entity.user.managers.last_name Renommé/Mappé
empmanager-src.city entity.user.managers.personal_address.city Renommé/Mappé
country_n_code entity.user.managers.personal_address.country_or_region Mappage direct
empmanager-src.streetAddress entity.user.managers.personal_address.name Renommé/Mappé
empmanager-src.state entity.user.managers.personal_address.state Renommé/Mappé
empmanager-src.businessPhones.0 entity.user.managers.phone_numbers Fusionné
empmanager-src.id entity.user.managers.product_object_id Renommé/Mappé
empmanager-src.jobTitle entity.user.managers.title Renommé/Mappé
empmanager-src.displayName entity.user.managers.user_display_name Renommé/Mappé
empmanager-src.sAMAccountName entity.user.managers.userid Renommé/Mappé
empmanager-src.onPremisesSecurityIdentifier entity.user.managers.windows_sid Renommé/Mappé
country entity.user.personal_address.country_or_region Mappage direct
usageLocation entity.user.personal_address.country_or_region Mappage direct
phoneNumber entity.user.phone_numbers Fusionné
onPremisesSamAccountName entity.user.userid Renommé/Mappé
sAMAccountName entity.user.userid Renommé/Mappé
gopher-device-item.createdDateTime metadata.event_timestamp Analysé en tant que RFC3339
N/A entity.labels.key Constante : wfc_AccountType
N/A entity.user.attribute.labels.key Constante : gopher-manager onPremisesImmutableId
N/A entity.user.attribute.roles.type Constante : SERVICE_ACCOUNT
N/A entity.user.managers.attribute.labels.key Constante : manager accountEnabled
N/A entity.user.managers.attribute.roles.type Constante : SERVICE_ACCOUNT
N/A entity.user.user_authentication_status Constante : ACTIVE
N/A metadata.entity_type Constante : USER
N/A metadata.event_metadata.log_type Constante : AZURE_AD_CONTEXT
N/A metadata.product_name Constante : Azure Active Directory
N/A metadata.vendor_name Constante : Microsoft

Journal des modifications

Afficher le journal des modifications de cet analyseur

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