Intégrer Okta à Google SecOps

Ce document explique comment intégrer Okta à Google Security Operations.

Cas d'utilisation

L'intégration Okta utilise les fonctionnalités de Google SecOps pour prendre en charge les cas d'utilisation suivants :

  • Gérer les cycles de vie des utilisateurs : activez, désactivez ou réinitialisez automatiquement les mots de passe des utilisateurs en fonction des alertes de sécurité pour limiter les risques.

  • Mettre fin aux sessions actives : effacez instantanément toutes les sessions Okta actives pour les comptes compromis afin d'empêcher tout accès non autorisé aux applications intégrées.

  • Automatiser l'attribution des rôles : attribuez ou annulez l'attribution de rôles d'administrateur aux utilisateurs de manière dynamique pour respecter le principe du moindre privilège lors des investigations.

  • Synchroniser les signaux de menace : envoyez des signaux Identity Threat Protection (ITP) à Okta pour partager le contexte de risque et déclencher des réponses de sécurité automatisées.

  • Enrichir le contexte d'identité : récupérez des profils utilisateur détaillés et des appartenances à des groupes pour offrir aux analystes une visibilité approfondie sur l'activité des comptes.

Avant de commencer

Avant de configurer l'intégration dans Google SecOps, vérifiez que les conditions suivantes sont remplies dans votre environnement Okta :

  • Méthode d'authentification : déterminez si votre organisation utilise un jeton d'API (SSWS) ou OAuth 2.0 pour l'authentification.

  • Autorisations du compte : vérifiez que le compte dispose des autorisations suffisantes pour effectuer des actions de gestion des utilisateurs et de fin de session.

Paramètres d'intégration

L'intégration Okta nécessite les paramètres suivants :

Paramètre Description
Api Root

Obligatoire.

URL de base de votre instance Okta, utilisée pour accéder à l'API.

La valeur par défaut est https://{okta_domain}.com/.

Api Token

Facultatif.

Jeton d'API (SSWS) utilisé pour l'authentification auprès de l'instance Okta.

Si Use Oauth Authentication est désactivé, ce paramètre est obligatoire.

Use Oauth Authentication

Obligatoire.

Si cette option est activée, l'intégration utilise OAuth 2.0 pour l'authentification au lieu d'un jeton d'API.

Lorsque vous utilisez OAuth, Client ID, Key ID et Private Key sont obligatoires, et Api Token doit être laissé vide.

Si cette option est désactivée, Api Token est obligatoire.

Client ID

Facultatif.

Identifiant unique de l'application OAuth Okta.

Si Use Oauth Authentication est activé, ce paramètre est obligatoire.

Si vous vous authentifiez à l'aide d'un jeton d'API, laissez ce champ vide.

Key ID

Facultatif.

ID de la clé publique associée à la clé privée utilisée pour l'authentification OAuth.

Si Use Oauth Authentication est activé, ce paramètre est obligatoire.

Si vous vous authentifiez à l'aide d'un jeton d'API, laissez ce champ vide.

Private Key

Facultatif.

Clé privée au format PEM utilisée pour l'authentification OAuth.

Si Use Oauth Authentication est activé, ce paramètre est obligatoire.

Si vous vous authentifiez à l'aide d'un jeton d'API, laissez ce champ vide.

Verify SSL

Facultatif.

Si cette option est sélectionnée, l'intégration valide le certificat SSL lors de la connexion au serveur Okta.

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.

Ajouter un groupe

Ajoutez un groupe.

Paramètres

Cas d'utilisation

N/A

Exécuter sur

Cette action s'exécute sur toutes les entités.

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
ScriptResult N/A N/A
Résultat JSON
N/A
Enrichissement d'entités

N/A

Insights

N/A

Attribuer un rôle

Attribuer un rôle à un utilisateur

Paramètres

Nom du paramètre Type Valeur par défaut Description
ID utilisateur Chaîne N/A ID des utilisateurs dans Okta.
Types de rôles Chaîne N/A Type de rôle à attribuer aux utilisateurs.
Exécuter également sur le champ d'application Case à cocher Cochée Indique si l'exécution doit être effectuée sur les entités ainsi que sur l'entrée.

Cas d'utilisation

N/A

Exécuter sur

Cette action s'exécute sur les entités suivantes :

  • Utilisateur
  • Nom d'hôte

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
ScriptResult N/A N/A
Résultat JSON
N/A
Enrichissement d'entités
Nom du champ d'enrichissement Logique : quand les utiliser ?
Rôles Renvoie s'il existe dans le résultat JSON
Insights

N/A

Effacer la session utilisateur Okta

Utilisez l'action Effacer la session utilisateur Okta pour mettre fin à toutes les sessions Okta actives d'utilisateurs spécifiques sur l'ensemble des appareils et des applications intégrées.

Cette action s'exécute sur l'entité Google SecOps Username.

Entrées de l'action

L'action Effacer la session utilisateur Okta nécessite les paramètres suivants :

Paramètre Description
User IDs Or Logins

Facultatif.

Liste d'ID utilisateur ou d'identifiants de connexion Okta séparés par une virgule.

Also Run On Scope

Facultatif.

Si cette option est sélectionnée, l'action révoque les sessions actives du fournisseur d'identité (IdP) pour tous les utilisateurs identifiés dans le champ d'application de l'entité, en plus de ceux explicitement listés dans User IDs Or Logins.

Sorties de l'action

L'action Effacer la session utilisateur Okta fournit les résultats suivants :

Type de sortie de l'action Disponibilité
Pièce jointe du 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 Effacer la session utilisateur Okta peut renvoyer les messages de sortie suivants :

Message de sortie Description du message

Successfully cleared sessions for the following users: ENTITY_IDS.

The sessions failed to clear for the following user in Okta: ENTITY_ID.

No users were found to clear sessions.

L'action a réussi.
Error executing action "Clear Okta User Session". Reason: ERROR_REASON

É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 liste la valeur de la sortie du résultat du script lorsque vous utilisez l'action Effacer la session utilisateur Okta :

Nom du résultat du script Valeur
is_success true ou false

Désactiver l'utilisateur

Désactive l'utilisateur spécifié.

Paramètres

Nom du paramètre Type Valeur par défaut Description
ID utilisateur ou connexions Chaîne N/A ID des utilisateurs dans Okta.
Est désactivé Case à cocher Cochée Indique s'il faut désactiver ou seulement suspendre l'utilisateur.
Envoyer un e-mail en cas de désactivation Case à cocher Cochée Indique si un e-mail doit être envoyé après la désactivation.
Exécuter également sur le champ d'application Case à cocher Cochée Indique si l'exécution doit être effectuée sur les entités ainsi que sur l'entrée.

Cas d'utilisation

N/A

Exécuter sur

Cette action s'exécute sur les entités suivantes :

  • Utilisateur
  • Nom d'hôte

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
ScriptResult N/A N/A
Résultat JSON
N/A
Enrichissement d'entités
Nom du champ d'enrichissement Logique : quand les utiliser ?
is_deactivate Si la valeur est "True", l'utilisateur est désactivé. Sinon : False
is_send_email_deactivate Si la valeur est "True", l'utilisateur est désactivé. Sinon : False
Insights

N/A

Activer l'utilisateur

Active l'utilisateur spécifié.

Paramètres

Nom du paramètre Type Valeur par défaut Description
ID utilisateur ou connexions Chaîne N/A ID ou identifiants des utilisateurs dans Okta.
Est activé Case à cocher Cochée Indique s'il faut activer l'utilisateur ou simplement annuler sa suspension.
Envoyer un e-mail si activé Case à cocher Cochée Indique si un e-mail doit être envoyé après l'activation.
Exécuter également sur le champ d'application Case à cocher Cochée Indique si l'exécution doit être effectuée sur les entités ainsi que sur l'entrée.

Cas d'utilisation

N/A

Exécuter sur

Cette action s'exécute sur les entités suivantes :

  • Utilisateur
  • Nom d'hôte

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
ScriptResult N/A N/A
Résultat JSON
N/A
Enrichissement d'entités
Nom du champ d'enrichissement Logique : quand les utiliser ?
is_reactivate Si la valeur est "True", l'utilisateur est activé. Sinon : False
is_send_email_reactivate Si la valeur est "True", l'utilisateur est désactivé. Sinon : False
Insights

N/A

Obtenir un groupe

Obtenez des informations sur un groupe.

Paramètres

Nom du paramètre Type Valeur par défaut Description
ID ou noms de groupes Chaîne N/A ID ou noms des groupes dans Okta.
Est un ID Case à cocher Cochée Indique si la valeur est un ID ou un nom.

Cas d'utilisation

N/A

Exécuter sur

Cette action s'exécute sur toutes les entités.

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
ScriptResult N/A N/A
Résultat JSON
N/A
Enrichissement d'entités

N/A

Insights

N/A

Obtenir l'utilisateur

Obtenir des informations sur un utilisateur

Paramètres

Nom du paramètre Type Valeur par défaut Description
ID utilisateur ou connexions Chaîne N/A ID ou identifiants (adresse e-mail ou nom d'utilisateur) d'un utilisateur dans Okta, par exemple test@gmail.com ou simplement "test".
Exécuter également sur le champ d'application Case à cocher Cochée Indique si l'exécution doit être effectuée sur les entités ainsi que sur l'entrée.

Cas d'utilisation

N/A

Exécuter sur

Cette action s'exécute sur les entités suivantes :

  • Utilisateur
  • Nom d'hôte

Résultat de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
ScriptResult N/A N/A
Résultat JSON
[
  {
    "status": "ACTIVE",
    "profile": {
      "mobilePhone": null,
      "firstName": "Test",
      "lastName": "User",
      "secondEmail": null,
      "login": "test.user@asd.com",
      "email": "test.user@asd.com"
    },
    "passwordChanged": "2022-07-11T06:11:25.000Z",
    "created": "2022-07-11T06:07:55.000Z",
    "activated": null,
    "lastUpdated": "2022-07-11T06:11:25.000Z",
    "_links": {
      "schema": {
        "href": "https://trial-0000.okta.com/api/v1/meta/schemas/user/osc1xxxxxxxx"
      },
      "suspend": {
        "href": "https://trial-0000.okta.com/api/v1/users/00u1xxxxxxxx/lifecycle/suspend",
        "method": "POST"
      },
      "forgotPassword": {
        "href": "https://trial-0000.okta.com/api/v1/users/00u1xxxxxxxx/credentials/forgot_password",
        "method": "POST"
      },
      "self": {
        "href": "https://trial-0000.okta.com/api/v1/users/00u1xxxxxxxx"
      },
      "expirePassword": {
        "href": "https://trial-0000.okta.com/api/v1/users/00u1xxxxxxxx/lifecycle/expire_password",
        "method": "POST"
      },
      "resetFactors": {
        "href": "https://trial-0000.okta.com/api/v1/users/00u1xxxxxxxx/lifecycle/reset_factors",
        "method": "POST"
      },
      "deactivate": {
        "href": "https://trial-0000.okta.com/api/v1/users/00u1xxxxxxxx/lifecycle/deactivate",
        "method": "POST"
      },
      "changePassword": {
        "href": "https://trial-0000.okta.com/api/v1/users/00u1xxxxxxxx/credentials/change_password",
        "method": "POST"
      },
      "changeRecoveryQuestion": {
        "href": "https://trial-0000.okta.com/api/v1/users/00u1xxxxxxxx/credentials/change_recovery_question",
        "method": "POST"
      },
      "type": {
        "href": "https://trial-0000.okta.com/api/v1/users/00u1xxxxxxxx"
      },
      "resetPassword": {
        "href": "https://trial-0000.okta.com/api/v1/users/00u1xxxxxxxx/lifecycle/reset_password",
        "method": "POST"
      }
    },
    "lastLogin": "2022-07-11T06:15:14.000Z",
    "credentials": {
      "password": {},
      "provider": {
        "type": "OKTA",
        "name": "OKTA"
      }
    },
    "type": {
      "id": "oty1xxxxxxxxxxxxx"
    },
    "id": "oty1xxxxxxxxxxxxx",
    "statusChanged": "2022-07-11T06:11:25.000Z"
  }
]
Enrichissement d'entités

N/A

Insights

N/A

Répertorier les fournisseurs

Lister les fournisseurs d'identité (IdP) de votre organisation.

Paramètres

Nom du paramètre Type Valeur par défaut Description
Query Chaîne N/A Recherchez une correspondance dans la propriété "name".
Type Case à cocher Cochée Filtrer par type.
Limite Chaîne 20 Nombre maximal de résultats à renvoyer.

Cas d'utilisation

N/A

Exécuter sur

Cette action s'exécute sur toutes les entités.

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
ScriptResult N/A N/A
Résultat JSON
N/A
Enrichissement d'entités

N/A

Insights

N/A

Répertorier des rôles

Répertorie tous les rôles attribués à un utilisateur.

Paramètres

ID utilisateur Chaîne N/A ID des utilisateurs dans Okta.
Exécuter également sur le champ d'application Case à cocher Cochée Indique si l'exécution doit être effectuée sur les entités ainsi que sur l'entrée.

Cas d'utilisation

N/A

Exécuter sur

Cette action s'exécute sur les entités suivantes :

  • Utilisateur
  • Nom d'hôte

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
ScriptResult N/A N/A
Résultat JSON
N/A
Enrichissement d'entités

N/A

Insights

N/A

Lister les groupes d'utilisateurs

Récupérer les groupes dont l'utilisateur est membre

Paramètres

Nom du paramètre Type Valeur par défaut Description
ID utilisateur ou connexions Chaîne N/A ID ou identifiants des utilisateurs dans Okta.
Exécuter également sur le champ d'application Case à cocher Cochée Indique si l'exécution doit être effectuée sur les entités ainsi que sur l'entrée.

Cas d'utilisation

N/A

Exécuter sur

Cette action s'exécute sur les entités suivantes :

  • Utilisateur
  • Nom d'hôte

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
ScriptResult N/A N/A
Résultat JSON
N/A
Enrichissement d'entités
Nom du champ d'enrichissement Logique : quand les utiliser ?
profil Renvoie s'il existe dans le résultat JSON
nom Renvoie s'il existe dans le résultat JSON
Insights

N/A

Répertorier les utilisateurs

Obtenir la liste des utilisateurs.

Paramètres

Nom du paramètre Type Valeur par défaut Description
Query Chaîne N/A Recherchez une correspondance dans le prénom, le nom ou l'adresse e-mail.
Filtre Chaîne N/A Requête de recherche personnalisée pour un sous-ensemble de propriétés.
Rechercher Chaîne N/A Requête de recherche personnalisée pour la plupart des propriétés.
Limite Chaîne 200 Nombre maximal de résultats à renvoyer.

Cas d'utilisation

N/A

Exécuter sur

Cette action s'exécute sur toutes les entités.

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
ScriptResult N/A N/A
Résultat JSON
N/A
Enrichissement d'entités
Nom du champ d'enrichissement Logique : quand les utiliser ?
profil Renvoie s'il existe dans le résultat JSON
nom Renvoie s'il existe dans le résultat JSON
Insights

N/A

Ping

Testez la connexion avec Okta.

Paramètres

N/A

Cas d'utilisation

N/A

Exécuter sur

Cette action s'exécute sur toutes les entités.

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
ScriptResult N/A N/A
Résultat JSON
N/A
Enrichissement d'entités

N/A

Insights

N/A

Réinitialiser le mot de passe

Générez un jeton à usage unique qui peut être utilisé pour réinitialiser le mot de passe d'un utilisateur.

Paramètres

Nom du paramètre Type Valeur par défaut Description
ID utilisateur ou connexions Chaîne N/A ID ou identifiants des utilisateurs dans Okta.
Envoyer un e-mail Case à cocher Décochée Indique s'il faut envoyer un e-mail pour la réinitialisation du mot de passe ou renvoyer le jeton pour chaque utilisateur.
Exécuter également sur le champ d'application Case à cocher Décochée Indique si l'exécution doit être effectuée sur les entités ainsi que sur l'entrée.

Cas d'utilisation

N/A

Exécuter sur

Cette action s'exécute sur les entités suivantes :

  • Utilisateur
  • Nom d'hôte

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
ScriptResult N/A N/A
Résultat JSON
N/A
Enrichissement d'entités
Nom du champ d'enrichissement Logique : quand les utiliser ?
send_email Renvoie s'il existe dans le résultat JSON
Insights

N/A

Définir le mot de passe

Définissez le mot de passe d'un utilisateur sans valider les identifiants existants.

Paramètres

Nom du paramètre Type Valeur par défaut Description
ID utilisateur ou connexions Chaîne N/A ID ou identifiants des utilisateurs dans Okta.
Nouveau mot de passe Chaîne N/A Le nouveau mot de passe.
Ajouter 10 caractères aléatoires Case à cocher Décochée Indique si des caractères supplémentaires doivent être ajoutés à chaque mot de passe utilisateur.
Exécuter également sur le champ d'application Case à cocher Décochée Indique si l'exécution doit être effectuée sur les entités ainsi que sur l'entrée.

Cas d'utilisation

N/A

Exécuter sur

Cette action s'exécute sur les entités suivantes :

  • Utilisateur
  • Nom d'hôte

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
ScriptResult N/A N/A
Résultat JSON
N/A
Enrichissement d'entités
Nom du champ d'enrichissement Logique : quand les utiliser ?
set_password Renvoie s'il existe dans le résultat JSON
Insights

N/A

Envoyer un signal ITP

Distribuez les signaux Identity Threat Protection (ITP) aux consommateurs concernés à l'aide du framework de signaux partagés (SSF, Shared Signals Framework).

Paramètres

Nom du paramètre Type Valeur par défaut Description
ID de clé Chaîne N/A ID de la clé publique utilisée pour vérifier la signature de la clé privée.
Chaîne de clé privée Mot de passe N/A Clé privée utilisée pour signer le signal.

La clé est fournie au format chaîne et inclut les instructions "BEGIN" et "END".

Adresse e-mail de l'utilisateur Adresse postale N/A Adresse e-mail de l'utilisateur concerné.
Horodatage code temporel N/A Code temporel de l'occurrence du signal.

Le format du code temporel est ISO 8601.

Motif Chaîne N/A Brève description expliquant pourquoi le signal a été généré.
Gravité Chaîne ou LDD N/A Niveau de gravité du signal.
URL de l'émetteur URL N/A Système source qui a créé le signal.

Résultats de l'action

Résultat JSON
{
   "status":200,
   "payload":{
      "iss":"https://www.google.com/",
      "jti":"3c5fbf0c-3977-11f0-a195-7e498c84a3dd",
      "iat":1748184472,
      "aud":"https://<your-okta-domain>.oktapreview.com",
      "events":{
         "https://schemas.okta.com/secevent/okta/event-type/user-risk-change":{
            "subject":{
               "user":{
                  "format":"email",
                  "email":"user@domain.net"
               }
            },
            "current_level":"medium",
            "previous_level":"low",
            "reason_admin":{
               "en":"BadNavigationEvent"
            },
            "event_timestamp":1742199770057
         }
      }
   }
}
Messages de sortie
Message de sortie Description du message

Successfully sent the ITP signal to Okta.

Context value was not found for the provided context key CONTEXT_KEY and connector identifier CONNECTOR_IDENTIFIER.

Action can't return the Case Wall table as the context values are too big.

L'action a réussi.
Failed to send the ITP signal to Okta. Error is {0}".format(exception.stacktrace)

Échec de l'action.

Vérifiez la connexion au serveur, les paramètres d'entrée ou les identifiants.

Résultat du script
Nom du résultat du script Options de valeur
is_success True ou False

Annulation d'attribution d'un rôle

Annuler l'attribution d'un rôle à un utilisateur.

Paramètres

Nom du paramètre Type Valeur par défaut Description
ID utilisateur Chaîne N/A ID des utilisateurs dans Okta.
ID ou noms de rôles Chaîne N/A ID ou noms des rôles dans Okta.
Exécuter également sur le champ d'application Case à cocher Décochée Indique si l'exécution doit être effectuée sur les entités ainsi que sur l'entrée.

Cas d'utilisation

N/A

Exécuter sur

Cette action s'exécute sur les entités suivantes :

  • Utilisateur
  • Nom d'hôte

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
ScriptResult N/A N/A
Résultat JSON
N/A
Enrichissement d'entités
Nom du champ d'enrichissement Logique : quand les utiliser ?
unassign_role Renvoie s'il existe dans le résultat JSON
Insights

N/A

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