Intégrer SAP ERP à Google SecOps
Ce document explique comment intégrer SAP ERP à Google Security Operations.
L'intégration de SAP ERP connecte Google SecOps à votre environnement SAP ERP via un service de passerelle Cloud Run. Pour en savoir plus sur la surveillance et la sécurisation des environnements SAP dans Google SecOps, consultez Sécuriser les applications SAP avec Google SecOps.
Cas d'utilisation
L'intégration SAP ERP utilise les fonctionnalités de Google SecOps pour prendre en charge les cas d'utilisation suivants :
Contenir les comptes utilisateur SAP compromis : verrouillez immédiatement les comptes utilisateur SAP lors des playbooks de réponse automatisée aux incidents lorsqu'une activité suspecte, une utilisation abusive d'identifiants ou une élévation non autorisée des privilèges sont détectées.
Mettre fin aux sessions utilisateur actives : mettez fin aux sessions SAP actives pour un nom d'utilisateur et un client ciblés afin de révoquer l'accès en cours après un piratage de compte ou un non-respect des règles.
Appliquer la journalisation d'audit de sécurité : activez à distance le journal d'audit de sécurité SAP sur les instances et les clients SAP cibles pour vous assurer que les événements liés à la sécurité critiques des applications sont enregistrés.
Valider la connectivité de la passerelle : vérifiez l'authentification Google Cloud et la connectivité réseau entre Google SecOps et le service de passerelle Cloud Run.
Avant de commencer
Avant de configurer l'intégration de SAP ERP dans Google SecOps, effectuez les étapes préalables suivantes :
Déployez et configurez la passerelle SAP RFC Cloud Run pour transférer les actions vers vos instances SAP ERP.
Configurez l'authentification et les autorisations IAM Google Cloud à l'aide de Workload Identity ou d'une clé JSON de compte de service.
Configurez les autorisations SAP pour l'utilisateur de communication de la passerelle dans vos clients SAP cibles.
Vérifiez la connectivité réseau entre Google SecOps, votre service Cloud Run et vos instances SAP ERP.
Déployer et configurer la passerelle SAP RFC Cloud Run
L'intégration SAP ERP communique avec vos systèmes SAP via un service de passerelle RFC SAP Cloud Run. Ce service transfère de manière sécurisée les actions de Google SecOps vers vos instances SAP cibles.
Assurez-vous que votre service de passerelle Cloud Run est déployé et configuré avec les informations de connexion pour chaque instance SAP cible (SAP Instance Name) et chaque client SAP à trois chiffres (SAP Client Number). Enregistrez l'URL HTTPS du service Cloud Run pour le paramètre d'intégration Cloud Run Service URL.
Configurer l'authentification Google Cloud et les autorisations IAM
Pour authentifier les requêtes envoyées à votre service de passerelle Cloud Run, configurez un compte de service Google Cloud à l'aide de l'une des méthodes suivantes :
- Workload Identity (recommandé) : utilise l'emprunt d'identité d'un compte de service pour que vous n'ayez pas besoin de télécharger ni de gérer des clés JSON statiques.
- Clé JSON du compte de service : utilise un fichier de clé JSON téléchargé. N'utilisez cette méthode que si vous ne pouvez pas configurer Workload Identity. Si vous fournissez à la fois
Service Account JSONetWorkload Identity Email, l'intégration utiliseService Account JSON.
Suivez le principe du moindre privilège lorsque vous attribuez des rôles IAM Google Cloud. Évitez d'attribuer des rôles d'administrateur étendus tels que roles/owner ou roles/editor. N'accordez que les rôles minimaux listés dans le tableau suivant :
| Principal | Ressource cible | Rôle IAM requis | Objectif |
|---|---|---|---|
Compte de service (configuré dans Workload Identity Email ou Service Account JSON) |
Service de passerelle RFC SAP Cloud Run | Demandeur Cloud Run (roles/run.invoker) |
Permet au compte de service d'appeler le service de passerelle Cloud Run. |
Identité de l'instance Google SecOps (uniquement lorsque vous utilisez Workload Identity Email) |
Compte de service spécifié dans Workload Identity Email |
Créateur de jetons du compte de service (roles/iam.serviceAccountTokenCreator) |
Permet à votre instance Google SecOps d'emprunter l'identité du compte de service lors de l'appel de la passerelle. |
S'authentifier avec Workload Identity (recommandé)
Pour vous authentifier à l'aide de Workload Identity, créez un compte de service, accordez-lui l'accès pour appeler votre service Cloud Run et autorisez votre instance Google SecOps à emprunter l'identité de ce compte de service.
Créer un compte de service et accorder l'accès à Cloud Run
Dans la console Google Cloud , accédez à IAM et administration > Comptes de service.
Cliquez sur Créer un compte de service, saisissez un nom pour le compte de service, puis cliquez sur Créer et continuer.
Cliquez sur OK pour terminer la création du compte de service, puis copiez son adresse e-mail.
Dans la console Google Cloud , accédez à Cloud Run et sélectionnez votre service de passerelle SAP RFC.
Accédez à l'onglet Sécurité ou Autorisations, puis cliquez sur Ajouter un compte principal.
Dans le champ Nouveaux comptes principaux, collez l'adresse e-mail de votre compte de service.
Dans le menu Sélectionner un rôle, sélectionnez Demandeur Cloud Run (
roles/run.invoker), puis cliquez sur Enregistrer.
Accorder des autorisations d'emprunt d'identité à votre instance Google SecOps
Dans Google SecOps, accédez à Content Hub > Intégrations de réponse.
Sélectionnez l'intégration SAP ERP, saisissez votre
Cloud Run Service URL, puis saisissez l'adresse e-mail de votre compte de service dansWorkload Identity Email.Cliquez sur Enregistrer > Tester. Le test devrait échouer avant que vous n'accordiez les autorisations d'emprunt d'identité.
Cliquez sur close_small à côté de Tester et recherchez l'adresse e-mail du compte de service de l'instance Google SecOps dans le message d'erreur (au format
gke-init-python@PROJECT.iam.gserviceaccount.comousoar-python@TENANT_PROJECT.iam.gserviceaccount.com). Copiez cette adresse e-mail.Dans la console Google Cloud , accédez à IAM et administration > Comptes de service, puis sélectionnez votre compte de service.
Accédez à Autorisations>Accorder l'accès.
Sous Nouveaux comptes principaux, collez l'adresse e-mail de l'instance Google SecOps que vous avez copiée.
Sous Attribuer des rôles, sélectionnez Créateur de jetons de compte de service (
roles/iam.serviceAccountTokenCreator), puis cliquez sur Enregistrer.
S'authentifier avec une clé JSON de compte de service
Si vous ne pouvez pas utiliser Workload Identity, créez un compte de service et extrayez son fichier de clé JSON :
Dans la console Google Cloud , accédez à IAM et administration > Comptes de service.
Sélectionnez un compte de service existant ou cliquez sur Créer un compte de service pour en créer un dédié.
Assurez-vous que le compte de service dispose du rôle Demandeur Cloud Run (
roles/run.invoker) sur votre service de passerelle SAP RFC Cloud Run.Sélectionnez votre compte de service, puis accédez à Clés > Ajouter une clé > Créer une clé.
Sélectionnez le type de clé JSON, puis cliquez sur Créer. Un fichier de clé JSON est téléchargé sur votre ordinateur.
Ouvrez le fichier téléchargé dans un éditeur de texte, copiez l'intégralité du contenu JSON et collez-le dans le paramètre
Service Account JSONde Google SecOps.
Configurer les autorisations SAP
Dans chaque client SAP cible, n'accordez à l'utilisateur de communication SAP configuré dans votre passerelle Cloud Run que les autorisations minimales requises pour les actions que vous prévoyez d'exécuter :
| Action | Autorisation SAP requise |
|---|---|
| Activer le journal d'audit | Autorisation d'activer à distance le journal d'audit de sécurité SAP dans le client SAP cible. |
| Supprimer la session utilisateur | Autorisation d'exécuter le module de fonction TH_DELETE_USER pour mettre fin aux sessions utilisateur actives dans le client SAP cible. |
| Lock SAP User | Autorisation de verrouiller des comptes utilisateur dans le client SAP cible. |
Vérifier la connectivité réseau
Assurez-vous que votre environnement répond aux exigences réseau suivantes :
- Google SecOps (ou votre agent distant) peut accéder à l'URL de votre passerelle RFC SAP Cloud Run via HTTPS (port 443).
- Votre service de passerelle SAP RFC Cloud Run dispose d'une connectivité réseau avec vos instances SAP ERP cibles.
Paramètres d'intégration
L'intégration SAP ERP nécessite les paramètres suivants :
| Paramètre | Description |
|---|---|
Cloud Run Service URL |
Obligatoire. URL HTTPS du service de passerelle Cloud Run qui se connecte à votre instance SAP ERP. |
Service Account JSON |
Facultatif. Clé JSON du compte de service utilisée pour s'authentifier auprès du service de passerelle Cloud Run. Si les options |
Workload Identity Email |
Facultatif. Adresse e-mail du compte de service utilisée pour l'authentification Workload Identity (recommandé). Utilisé lorsque |
Verify SSL |
Facultatif. Si cette option est sélectionnée, l'intégration valide le certificat SSL lors de la connexion au serveur de passerelle Cloud Run. Cette option est activée par défaut. |
Pour savoir comment configurer une intégration dans Google SecOps, consultez Configurer des intégrations.
Vous pourrez apporter des modifications ultérieurement si nécessaire. Après avoir configuré une instance d'intégration, vous pouvez l'utiliser dans des playbooks. Pour en savoir plus sur la configuration et la prise en charge de plusieurs instances, consultez Prendre en charge plusieurs instances.
Actions
Pour en savoir plus sur les actions, consultez Répondre aux actions en attente depuis votre bureau et Exécuter une action manuelle dans votre demande.
Activer le journal d'audit
Utilisez l'action Activer le journal d'audit pour activer le journal d'audit de sécurité SAP sur une instance et un client SAP cibles via la passerelle SAP RFC Cloud Run.
Cette action ne s'exécute pas sur les entités Google SecOps.
Entrées de l'action
L'action Activer le journal d'audit nécessite les paramètres suivants :
| Paramètre | Description |
|---|---|
SAP Client Number |
Obligatoire. Numéro de client SAP à trois chiffres. |
SAP Instance Name |
Obligatoire. Nom de l'instance SAP cible configurée dans la passerelle SAP RFC Cloud Run. |
Sorties de l'action
L'action Activer le journal d'audit 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 |
| Tableau 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 montre le résultat JSON reçu lors de l'utilisation de l'action Activer le journal d'audit :
{
"status": "SUCCESS",
"functionId": "ACTIVATE_AUDIT_LOG",
"sap_instance": "PRD",
"client": "100",
"return": [
{
"type": "S",
"message": "Security Audit Log activated successfully."
}
]
}
Messages de sortie
L'action Activer le journal d'audit peut renvoyer les messages de sortie suivants :
| Message de sortie | Description du message |
|---|---|
Successfully activated SAP audit log. |
L'action a réussi. |
Error executing action - "Activate Audit Log". Reason: Failed to
activate audit log. SAP Error:
ERROR_SUMMARY |
L'action a échoué, car le système SAP a renvoyé une erreur. Vérifiez que l'instance et le client SAP cibles sont accessibles, et que l'utilisateur de communication de la passerelle est autorisé à activer le journal d'audit de sécurité. |
Error executing action - "Activate Audit Log". Reason: SAP
Client Number must be a 3-digit numeric string (got
'SAP_CLIENT_NUMBER'). |
La validation des paramètres de l'action a échoué. Indiquez une chaîne numérique valide de trois chiffres pour |
Error executing action - "Activate Audit Log". Reason: Proxy
request failed (HTTP
STATUS_CODE):
ERROR_DETAIL |
Échec de la requête adressée à la passerelle RFC SAP Cloud Run. Vérifiez le |
Résultat du script
Le tableau suivant répertorie la valeur de la sortie du résultat du script lors de l'utilisation de l'action Activer le journal d'audit :
| Nom du résultat du script | Valeur |
|---|---|
is_success |
true ou false |
Supprimer la session utilisateur
Utilisez l'action Supprimer la session utilisateur pour mettre fin aux sessions actives d'un utilisateur dans SAP via la passerelle SAP RFC Cloud Run.
Cette action ne s'exécute pas sur les entités Google SecOps.
Entrées de l'action
L'action Supprimer la session utilisateur nécessite les paramètres suivants :
| Paramètre | Description |
|---|---|
SAP Username |
Obligatoire. Nom d'utilisateur SAP dont vous souhaitez mettre fin aux sessions actives. |
SAP Client Number |
Obligatoire. Numéro de client SAP à trois chiffres. |
SAP Instance Name |
Obligatoire. Nom de l'instance SAP cible configurée dans la passerelle SAP RFC Cloud Run. |
Sorties de l'action
L'action Supprimer une session utilisateur 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 |
| Tableau 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 montre le résultat JSON reçu lors de l'utilisation de l'action Supprimer la session utilisateur :
{
"status": "SUCCESS",
"functionId": "DELETE_USER_SESSION",
"sap_instance": "PRD",
"client": "100",
"return": [
{
"type": "S",
"message": "User session terminated."
}
]
}
Messages de sortie
L'action Supprimer une session utilisateur peut renvoyer les messages de sortie suivants :
| Message de sortie | Description du message |
|---|---|
Successfully deleted user session for
SAP_USERNAME. |
L'action a réussi. |
Error executing action - "Delete User Session". Reason: Failed
to delete user session for
SAP_USERNAME. SAP Error:
ERROR_SUMMARY |
L'action a échoué, car le système SAP a renvoyé une erreur. Vérifiez que le nom d'utilisateur existe dans le client SAP spécifié et que l'utilisateur de communication de la passerelle est autorisé à exécuter |
Error executing action - "Delete User Session". Reason: SAP
Client Number must be a 3-digit numeric string (got
'SAP_CLIENT_NUMBER'). |
La validation des paramètres de l'action a échoué. Indiquez une chaîne numérique valide de trois chiffres pour |
Error executing action - "Delete User Session". Reason: Proxy
request failed (HTTP
STATUS_CODE):
ERROR_DETAIL |
Échec de la requête adressée à la passerelle RFC SAP Cloud Run. Vérifiez le |
Résultat du script
Le tableau suivant liste la valeur de la sortie du résultat du script lors de l'utilisation de l'action Supprimer la session utilisateur :
| Nom du résultat du script | Valeur |
|---|---|
is_success |
true ou false |
Verrouiller l'utilisateur SAP
Utilisez l'action Verrouiller un utilisateur SAP pour verrouiller un compte utilisateur spécifié dans SAP via la passerelle RFC SAP Cloud Run.
Cette action ne s'exécute pas sur les entités Google SecOps.
Entrées de l'action
L'action Verrouiller l'utilisateur SAP nécessite les paramètres suivants :
| Paramètre | Description |
|---|---|
SAP Username |
Obligatoire. Nom d'utilisateur SAP du compte à verrouiller. |
SAP Client Number |
Obligatoire. Numéro de client SAP à trois chiffres. |
SAP Instance Name |
Obligatoire. Nom de l'instance SAP cible configurée dans la passerelle SAP RFC Cloud Run. |
Sorties de l'action
L'action Verrouiller l'utilisateur SAP 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 |
| Tableau 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 montre le résultat JSON reçu lors de l'utilisation de l'action Verrouiller l'utilisateur SAP :
{
"status": "SUCCESS",
"functionId": "USER_LOCK",
"sap_instance": "PRD",
"client": "100",
"return": [
{
"type": "S",
"message": "User locked successfully."
}
]
}
Messages de sortie
L'action Verrouiller l'utilisateur SAP peut renvoyer les messages de sortie suivants :
| Message de sortie | Description du message |
|---|---|
Successfully locked user
SAP_USERNAME. |
L'action a réussi. |
Error executing action - "Lock SAP User". Reason: Failed to lock
user SAP_USERNAME. SAP Error:
ERROR_SUMMARY |
L'action a échoué, car le système SAP a renvoyé une erreur. Vérifiez que le nom d'utilisateur existe dans le client SAP spécifié et que l'utilisateur de communication de la passerelle est autorisé à verrouiller les comptes utilisateur. |
Error executing action - "Lock SAP User". Reason: SAP Client
Number must be a 3-digit numeric string (got
'SAP_CLIENT_NUMBER'). |
La validation des paramètres de l'action a échoué. Indiquez une chaîne numérique valide de trois chiffres pour |
Error executing action - "Lock SAP User". Reason: Proxy request
failed (HTTP STATUS_CODE):
ERROR_DETAIL |
Échec de la requête adressée à la passerelle RFC SAP Cloud Run. Vérifiez le |
Résultat du script
Le tableau suivant répertorie la valeur de la sortie du résultat du script lors de l'utilisation de l'action Verrouiller l'utilisateur SAP :
| Nom du résultat du script | Valeur |
|---|---|
is_success |
true ou false |
Ping
Utilisez l'action Ping pour tester l'authentification et la connectivité réseau au service de passerelle Cloud Run SAP ERP.
Cette action ne s'exécute pas sur les entités Google SecOps.
Entrées de l'action
Aucune.
Sorties de l'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 |
| Tableau 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
L'action Ping peut renvoyer les messages de sortie suivants :
| Message de sortie | Description du message |
|---|---|
Successfully connected to the SAP ERP server with the provided
connection parameters! |
L'action a réussi. |
Failed to connect to the SAP ERP server! Error is Failed to
generate Google Cloud authentication token. Verify service account
credentials and permissions. |
L'action n'a pas pu générer de jeton d'authentification Google Cloud . Vérifiez votre configuration |
Failed to connect to the SAP ERP server! Error is Authentication
to Cloud Run failed (HTTP
STATUS_CODE). Verify the caller
has roles/run.invoker on the service. |
La passerelle Cloud Run a refusé la demande d'authentification. Assurez-vous que le compte de service dispose du rôle Demandeur Cloud Run ( |
Failed to connect to the SAP ERP server! Error is Cloud Run
service returned unexpected HTTP
STATUS_CODE:
ERROR_DETAIL |
La passerelle Cloud Run a renvoyé un code d'état HTTP inattendu. Vérifiez le |
Résultat du script
Le tableau suivant liste la valeur de la sortie du résultat du script lors de l'utilisation de 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.