HTTP v2
Ce document explique comment intégrer HTTP/2 au module SOAR de Google Security Operations et comment utiliser l'action Exécuter une requête HTTP.
Version de l'intégration : 5.0
Présentation
Utilisez HTTP/2 pour vous intégrer à des produits tiers sans écrire de code et résoudre des cas d'utilisation tels que l'exécution de requêtes d'API, l'utilisation de fichiers et la gestion de flux asynchrones.
Flux d'authentification
En fonction du produit auquel vous vous authentifiez, HTTP/2 est compatible avec les flux d'authentification suivants :
- Flux d'authentification de base
- Flux de clé API
- Flux d'authentification dédié
Flux d'authentification de base
Avec le flux d'authentification de base, authentifiez-vous à l'aide des paramètres Test URL
, Basic
Auth Username
et Basic Auth Password
.
Flux de clé API
Avec le flux de clé API, authentifiez-vous à l'aide des paramètres Test URL
, API Key Field Name
et API Key Field Value
.
Flux d'authentification dédié
Dans le flux d'authentification dédié, la validation en deux étapes suivante est utilisée :
Une action génère un jeton d'accès.
Lorsque l'action Ping ou Exécuter la requête HTTP s'exécute, l'intégration récupère les paramètres requis pour l'authentification.
Une action utilise le jeton d'accès généré pour s'authentifier auprès des requêtes API.
Le flux d'authentification dédié nécessite les paramètres d'intégration suivants :
Dedicated Auth API Request Method
Dedicated Auth API Request URL
Dedicated Auth API Request Headers
Dedicated Auth API Request Body
Dedicated Auth API Request Token Field Name
Pour en savoir plus sur les paramètres d'intégration, consultez Intégrer HTTP v2 à Google SecOps.
Pour utiliser le jeton de la réponse, indiquez le nom de la clé dans le paramètre Dedicated Auth API Request Token Field Name
. Dans l'exemple de réponse suivant, le nom de la clé est access_token
:
{
"access_token": "eyJhbGciOiJSUzI1NiIsImtpZCIO4",
"expires_in": 1799,
"token_type": "bearer"
}
Pour appliquer le jeton, l'intégration nécessite l'espace réservé dédié suivant : {{integration.token}}
. Lorsque vous fournissez ce espace réservé dans le payload, l'intégration utilise le jeton généré.
Si la clé access_token
de la réponse JSON apparaît imbriquée, indiquez l'emplacement complet du jeton pour la valeur du paramètre Dedicated Auth API Request Token Field Name
. Par exemple, au lieu de access_token
, fournissez la clé data_access_token
pour la réponse imbriquée, comme suit :
{
"data": {
"access_token": "eyJhbGciOiJSUzI1NiIsImtpZCIZMI3DQAQsYibMpO4",
"expires_in": 1799,
"token_type": "bearer"
}
}
L'exemple suivant montre la requête pour le flux d'authentification dédié à l'API Crowdstrike :
POST /falconx/entities/submissions/v1 HTTP/1.1
Host: api.crowdstrike.com
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6
Content-Length: 209
{
"sandbox": [{
"sha256": "9854c9dfded29d8442499daba01082ba5d164aa02e44",
"environment_id": 100,
"submit_name": "filename.pdf"
}]
}
L'exemple utilise l'en-tête Authorization
avec un jeton Bearer
pour s'authentifier auprès de l'API. Pour remplir l'en-tête avec les informations correctes, l'intégration HTTP/2 nécessite les entrées suivantes : Authorization: Bearer {{integration.token}}
.
Intégrer HTTP v2 à Google SecOps
L'intégration nécessite les paramètres suivants :
Paramètre | Description |
---|---|
Test URL |
Optional URL de test à utiliser pour le flux d'authentification de base ou par clé API. |
Basic Auth Username |
Optional Paramètre à ajouter en tant qu'en-tête d'authentification de base à chaque exécution d'action, en plus du paramètre Mot de passe d'authentification de base. Indiquez les paramètres Nom d'utilisateur pour l'authentification de base et Mot de passe pour l'authentification de base. |
Basic Auth Password |
Optional Paramètre à ajouter en tant qu'en-tête d'authentification de base à chaque exécution d'action, en plus du paramètre Nom d'utilisateur de l'authentification de base. Indiquez les paramètres Nom d'utilisateur pour l'authentification de base et Mot de passe pour l'authentification de base. |
API Key Field Name |
Optional Nom de l'en-tête contenant la clé API. Indiquez les paramètres Nom du champ de clé API et Secret de clé API pour les ajouter à chaque exécution d'action. |
API Key Secret |
Optional Valeur secrète de la clé API. Indiquez les paramètres Nom du champ de clé API et Secret de clé API pour les ajouter à chaque exécution d'action. |
Dedicated Auth API Request Method |
Optional Méthode à utiliser dans le flux d'API d'authentification dédié pour générer le jeton d'accès. La valeur par défaut est |
Dedicated Auth API Request URL |
Optional Requête API à utiliser dans le flux d'API d'authentification dédié pour générer le jeton d'accès, tel que |
Dedicated Auth API Request Headers |
Optional En-têtes à utiliser dans le flux d'API d'authentification dédié pour générer le jeton d'accès. Fournissez les en-têtes sous forme d'objet JSON, comme suit : { "Content-type": "application/x-www-form-urlencoded" } |
Dedicated Auth API Request Body |
Optional Corps de la requête à utiliser dans le flux d'API d'authentification dédié pour générer le jeton d'accès. Fournissez la valeur du paramètre sous la forme d'un objet JSON, comme suit : { "client_id": "CLIENT_ID", "client_secret": "CLIENT_SECRET" } |
|
Optional Nom du champ contenant le jeton d'accès généré. Pour utiliser le jeton d'accès dans les actions, utilisez l'espace réservé suivant :
La réponse pour la génération de jetons utilise le trait de soulignement ( |
CA Certificate |
Optional Certificat de l'autorité de certification à utiliser pour valider la connexion sécurisée. Si vous utilisez un agent distant pour vous connecter à un produit sur site, ajoutez une couche de sécurité supplémentaire en fournissant à l'intégration le certificat de l'autorité de certification pour garantir l'intégrité de la connexion. Une fois que vous avez fourni un certificat d'autorité de certification, toutes les requêtes API l'utilisent. Ce paramètre accepte le certificat CA sous la forme d'une chaîne encodée en base64. |
Verify SSL |
Obligatoire Si cette option est sélectionnée, le système vérifie que le certificat SSL de toutes les connexions d'intégration est valide. Cette option est sélectionnée par défaut. |
Il est recommandé de créer une instance distincte d'intégration HTTP/2 pour chaque produit tiers que vous intégrez dans votre environnement. Pour en savoir plus sur les instances d'intégration multiples, consultez Compatibilité avec plusieurs instances.
Utiliser l'intégration HTTP v2
Cette section explique comment utiliser l'intégration HTTP v2 en modifiant les paramètres de l'action "Exécuter une requête HTTP".
Utiliser le paramètre de charge utile du corps
Pour vous assurer que le corps est correctement construit, fournissez l'en-tête Content-Type
approprié dans le paramètre Headers
. L'action Exécuter la requête HTTP génère différentes charges utiles pour la même entrée de paramètre suivante :
{
"Id": "123123",
"sorting": "asc"
}
Pour la valeur d'en-tête "Content-Type:" "application/x-www-form-urlencoded"
, la charge utile générée est Id=123123&sorting=asc
.
Pour la valeur d'en-tête "Content-Type": "application/json"
, la charge utile générée est la suivante :
{
"Id": "123123",
"sorting": "asc"
}
Lorsque vous utilisez XML, fournissez une entrée au format XML comme suit :
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<NumberToWords xmlns="http://www.dataaccess.com/webservicesserver/">
<ubiNum>500</ubiNum>
</NumberToWords>
</soap:Body>
</soap:Envelope>
Utiliser le flux asynchrone
Les flux d'API asynchrones, comme la création et l'exécution d'un job de recherche, nécessitent d'attendre la fin du traitement du résultat avant d'exécuter la requête API suivante. Par exemple, vous pouvez créer un job de recherche dans Google SecOps SIEM, attendre qu'il s'exécute, puis récupérer les résultats à l'aide du paramètre Expected Response Values
.
Dans l'exemple de réponse suivant, la clé state
peut contenir la valeur error
, in_progress
ou finished
:
{
"state": "in_progress",
"percentage": "10"
}
Vous pouvez demander à l'action "Exécuter une requête HTTP" de s'exécuter en mode asynchrone jusqu'à ce que la réponse contienne l'état finished
en définissant le paramètre Expected Response Values
sur la valeur suivante :
{
"state": "finished"
}
Pour ne pas attendre le délai avant expiration en cas d'erreur, fournissez une condition supplémentaire dans la valeur du paramètre. Dans l'exemple d'entrée suivant, l'action cesse de s'exécuter lorsque l'état est finished
ou error
:
{
"state": [
"finished",
"error"
]
}
Dans l'exemple suivant, l'action cesse de s'exécuter lorsque l'état est finished
et que la valeur de clé de pourcentage est 100
:
{
"state": "finished",
"percentage": "100"
}
Vous pouvez combiner plusieurs conditions clés dans une même entrée, par exemple :
{
"state": [
"finished",
"error"
],
"percentage": "100"
}
Vous pouvez configurer le paramètre Expected Response Values
pour qu'il attende une sortie pour une paire clé/valeur spécifique. L'action "Exécuter une requête HTTP" recherche une clé spécifique dans l'ensemble de l'objet de réponse JSON et considère que le résultat attendu n'est atteint que lorsque vous définissez tous les noms de clé correspondants sur une valeur de clé attendue identique. Par exemple, pour que l'action recherche l'état finished
dans la réponse JSON et ignore tout autre état, définissez toutes les clés state
dans l'entrée du paramètre Expected Response Values
sur la valeur finished
:
{
"data": {
"state": "finished"
},
"state": "finished"
}
Le paramètre Expected Response Values
récupère la valeur requise à partir de l'objet JSON imbriqué. Pour l'exemple suivant, ne fournissez que la clé state
, et non data_state
ni data-state
:
{
"data": {
"state": [
"finished",
"error"
],
"percentage": "100"
}
}
Travailler sur vos fichiers
Travailler avec des fichiers comprend deux workflows distincts :
- Télécharger un fichier
- Importer un fichier
Télécharger des fichiers
L'action "Exécuter une requête HTTP" peut renvoyer des fichiers en tant que sortie base64 dans l'objet JSON ou enregistrer des fichiers dans le mur de requêtes en tant que fichiers ZIP.
Pour renvoyer les données sous forme de résultat JSON au format base64, sélectionnez le paramètre Base64 Output
. Pour enregistrer des fichiers dans le mur des dossiers, sélectionnez le paramètre Save To Case Wall
.
Si vous travaillez avec des fichiers sensibles tels que des logiciels malveillants, sélectionnez le paramètre Password Protect Zip
. Pour tous les fichiers ZIP protégés par mot de passe, l'action définit automatiquement le mot de passe sur infected
.
Importer des fichiers
Pour importer des fichiers, convertissez-les au format Base64 et envoyez-les en tant que valeur du paramètre Body Payload
. Voici un exemple de fichier image converti au format base64 :
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
Pour en savoir plus sur l'utilisation du paramètre Body Payload
, consultez la section Utiliser le paramètre "Charge utile du corps" de ce document.
Blocs en tant que code
Vous pouvez utiliser l'intégration HTTP v2 et la fonctionnalité de bloc de playbook dans Google SecOps pour créer du contenu réutilisable. Par exemple, vous pouvez créer un bloc de playbook contenant une action HTTP v2 et configurer une intégration pour utiliser les résultats de l'action comme entrées de bloc. Pour en savoir plus sur les blocs de playbook, consultez Utiliser des blocs de playbook.
Créer des blocs de playbook
Pour créer un bloc de playbook, procédez comme suit :
- Dans Google SecOps, accédez à Réponse > Playbooks.
- Dans la barre de navigation de la page Playbooks, sélectionnez add Ajouter un playbook ou un bloc. La fenêtre Créer s'ouvre.
- Dans la fenêtre Create New (Créer), définissez le paramètre
Type
surBlock
. - Pour le paramètre
Choose Folder
, sélectionnez le dossier dans lequel enregistrer le nouveau bloc. - Pour le paramètre
Environment
, sélectionnez votre environnement. - Cliquez sur Créer. La page Nouveau bloc s'ouvre. Configurez le nouveau bloc de playbook pour l'utiliser dans plusieurs playbooks.
La section suivante montre comment configurer un bloc de playbook.
Exemple de configuration de bloc de playbook
L'exemple suivant est une action "Exécuter une requête HTTP" personnalisée qui envoie des commentaires à ServiceNow. L'action utilise les paramètres comment
, sys_id
et table_name
que le bloc de playbook personnalisé a créés en tant que paramètres d'entrée. Pour configurer les paramètres de l'action, procédez comme suit :
Définissez le paramètre
Method
surPUT
.Définissez le paramètre
URL Path
sur la valeur suivante :https://SERVICE_NOW_INSTANCE.service-now.com/api/now/table/[Input.table_name]/[Input.sys_id]
Définissez le paramètre
Headers
sur la valeur suivante :{"Content-type": "application/json; charset=utf-8", "Accept": "application/json", "User-Agent": "GoogleSecops"}
Définissez le paramètre
Body Payload
sur la valeur suivante :{ "work_notes": "[Input.comment]" }
Pour utiliser les valeurs fournies pour les entrées de bloc en tant qu'espaces réservés pour l'action, les espaces réservés doivent contenir le préfixe Input.
avant le nom du paramètre. Si l'entrée du bloc est keyname
, l'espace réservé est [Input.keyname]
.
Actions
L'intégration HTTP v2 inclut les actions suivantes :
Exécuter une requête HTTP
Exécutez une requête HTTP à l'aide de l'intégration HTTP v2.
Utilisez cette action pour créer une requête HTTP personnalisée et renvoyer des informations à son sujet. Tous les paramètres de cette action sont modifiables.
Cette action ne s'applique pas aux entités.
Entrées d'action
L'action "Exécuter une requête HTTP" nécessite les paramètres suivants :
Paramètre | Description |
---|---|
|
Optional Méthode à utiliser dans la requête. La valeur par défaut est
|
|
Optional URL à exécuter. |
URL Params |
Optional Paramètres d'URL. L'action utilise toute valeur fournie en plus de celles directement fournies dans le paramètre Chemin d'URL. Par exemple, la chaîne?parameter=value&sorting=asc dans le backend signifie que l'entrée est la suivante :
{ "parameter": "value", "sorting": "asc" } Ce paramètre nécessite le format d'objet JSON comme entrée. La valeur par défaut est la suivante : { "URL Field Name": "URL_FIELD_VALUE" } |
|
Optional En-têtes à utiliser dans la requête HTTP. Par exemple, la requête HTTP avec les en-têtes { "Accept": "application/json", "User-Agent": "Google Secops" } Ce paramètre nécessite le format d'objet JSON comme entrée. La valeur par défaut est la suivante : { "Content-Type": "application/json; charset=utf-8", "Accept": "application/json", "User-Agent" : "GoogleSecOps" } |
Cookie |
Optional Paramètres à utiliser dans l'en-tête "Cookie". Ce paramètre remplace le cookie fourni dans le paramètre Headers. Par exemple, pour inclure un en-tête de cookie avec la valeur { "PHPSESSID": "298zf09hf012fh2", "csrftoken": "u32t4o3tb3gg43" } Ce paramètre nécessite le format d'objet JSON comme entrée. La valeur par défaut est la suivante : { "Cookie_1": "COOKIE_1_VALUE" } |
|
Optional
Corps de la requête HTTP. L'action construit différentes charges utiles en fonction de la valeur de l'en-tête Ce paramètre nécessite le format d'objet JSON comme entrée, sauf lorsqu'un produit tiers nécessite un contenu XML ou La valeur par défaut est la suivante : { "Body Field Name": "BODY_FIELD_VALUE" } |
|
Optional Valeurs de réponse attendues. Si ce paramètre est fourni, l'action fonctionne en mode asynchrone et s'exécute jusqu'à ce qu'elle reçoive les valeurs attendues ou jusqu'à ce qu'elle atteigne le délai d'expiration. |
|
Optional Si cette option est sélectionnée, l'action enregistre le fichier et le joint au mur des cas. Le fichier est archivé avec l'extension (non sélectionnée par défaut). |
|
Optional Si cette option est sélectionnée, un mot de passe est ajouté au fichier Utilisez ce paramètre lorsque vous travaillez avec des fichiers suspects. Cette option est sélectionnée par défaut. |
Follow Redirects |
Optional Si cette option est sélectionnée, l'action suit les redirections. Cette option est sélectionnée par défaut. |
Fail on 4xx/5xx |
Optional Si cette option est sélectionnée, l'action échoue si le code d'état de la réponse est une erreur 4xx ou 5xx. Cette option est sélectionnée par défaut. |
|
Optional Si cette option est sélectionnée, l'action convertit la réponse au format base64. Utilisez ce paramètre lorsque vous téléchargez des fichiers. Le résultat JSON ne peut pas dépasser 15 Mo. (non sélectionnée par défaut). |
Fields To Return |
Obligatoire Champs à renvoyer. Les valeurs possibles sont les suivantes :
|
Request Timeout |
Obligatoire Délai d'attente avant que l'action échoue. La valeur par défaut est de 120 secondes. |
Sorties d'action
L'action "Exécuter une requête HTTP" fournit les sorties suivantes :
Type de sortie de l'action | Disponibilité |
---|---|
Pièce jointe au mur des cas | Non disponible |
Lien vers le mur des cas | Non disponible |
Table du mur des cas | Non disponible |
Table d'enrichissement | Non disponible |
Résultat JSON | Disponible |
Messages de sortie | Disponible |
Résultat du script | Disponible |
Résultat JSON
L'exemple suivant décrit le résultat JSON reçu lors de l'utilisation de l'action "Exécuter une requête HTTP" :
{
"response_data": {
"data": {
"relationships": {
"comment": [
{
"name": "item",
"description": "Object to which the comment belongs to."
},
{
"name": "author",
"description": "User who wrote the comment."
}
]
}
}
},
"redirects": [],
"response_code": 200,
"cookies": {},
"response_headers": {
"Content-Type": "application/json",
"X-Cloud-Trace-Context": "1ca450b35c66634a2ae01248cca50b19",
"Date": "Fri, 03 Nov 2023 16:14:13 GMT",
"Server": "Google Frontend",
"Content-Length": "36084"
},
"apparent_encoding": "ascii"
}
Messages de sortie
Sur un mur de cas, l'action "Exécuter une requête HTTP" fournit les messages de sortie suivants :
Message affiché | Description du message |
---|---|
|
Action effectuée. |
|
Échec de l'action. Vérifiez la connexion au serveur, les paramètres d'entrée, la valeur du fichier JSON ou les identifiants. |
Résultat du script
Le tableau suivant décrit les valeurs de la sortie du résultat du script lorsque vous utilisez l'action "Exécuter une requête HTTP" :
Nom du résultat du script | Valeur |
---|---|
is_success |
True ou False |
Ping
Utilisez cette action pour tester la connectivité.
Entrées d'action
Aucun
Sorties d'action
L'action "Ping" fournit les résultats suivants :
Type de sortie de l'action | Disponibilité |
---|---|
Pièce jointe au mur des cas | Non disponible |
Lien vers le mur des cas | Non disponible |
Table du mur des cas | Non disponible |
Table d'enrichissement | Non disponible |
Résultat JSON | Non disponible |
Messages de sortie | Disponible |
Résultat du script | Disponible |
Messages de sortie
Sur un mur de demandes, l'action "Envoyer un ping" fournit les messages de sortie suivants :
Message affiché | Description du message |
---|---|
Successfully tested connectivity. |
Action effectuée. |
Failed to test connectivity. |
Échec de l'action. Vérifiez la connexion au serveur, les paramètres d'entrée ou les identifiants. |
Résultat du script
Le tableau suivant décrit les valeurs de la sortie des résultats du script lorsque vous utilisez l'action Ping :
Nom du résultat du script | Valeur |
---|---|
is_success |
True ou False |
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.