Événements de suivi d'activité pour App ID

IBM Cloud tels que App ID, génèrent des événements de suivi d'activité pour votre compte.

Les événements de suivi des activités rendent compte des activités qui modifient l'état d'un service sur le site IBM Cloud. Vous pouvez utiliser les événements pour enquêter sur les activités anormales et les actions critiques et pour vous conformer aux exigences réglementaires en matière d'audit.

Vous pouvez utiliser IBM Cloud Activity Tracker Event Routing, un service de plateforme, pour acheminer les événements d'audit de votre compte vers les destinations de votre choix en configurant des cibles et des itinéraires qui définissent où les événements de suivi d'activité sont envoyés. Pour plus d'informations, voir A propos de IBM Cloud Activity Tracker Event Routing.

Vous pouvez utiliser IBM Cloud Logs pour visualiser et alerter sur les événements générés dans votre compte et acheminés par IBM Cloud Activity Tracker Event Routing vers une instance IBM Cloud Logs.

Lieux où sont générés les événements de suivi d'activité

App ID envoie des événements de suivi d'activité par IBM Cloud Activity Tracker Event Routing dans les régions indiquées dans le tableau suivant.

Régions où les événements de suivi d'activité sont envoyés dans les Amériques
Dallas (us-south) Washington (us-east) Toronto (ca-tor) Sao Paulo (br-sao)
Oui Oui Oui Oui
Régions dans lesquelles les événements de suivi d'activité sont envoyés en Asie-Pacifique
Tokyo (jp-tok) Sydney (au-syd) Osaka (jp-osa) in-che
Oui Oui Oui Non
Régions dans lesquelles les événements de suivi d'activité sont envoyés en Europe
Francfort (eu-de) Londres (eu-gb) Madrid (eu-es)
Oui Oui Non

Affichage des événements de suivi d'activité pour App ID

Vous pouvez utiliser IBM Cloud Logs pour visualiser et alerter sur les événements générés dans votre compte et acheminés par IBM Cloud Activity Tracker Event Routing vers une instance IBM Cloud Logs.

Lancer IBM Cloud Logs à partir de la page Observabilité

Pour plus d'informations sur le lancement de l'interface utilisateur IBM Cloud Logs, voir Lancement de la console dans la documentation IBM Cloud Logs

Liste des événements de gestion

Le tableau suivant fournit des informations sur les actions qu'un utilisateur peut entreprendre par l'intermédiaire de l'interface graphique du service.

Actions qui génèrent des événements de gestion
Action Description Action de l'interface graphique
appid.recent-activity.read Afficher l'activité récente. Disponible dans la boîte Journal d'activité de l'onglet Présentation.
appid.idp-config.read Afficher la configuration de fournisseur d'identité. Disponible dans l'onglet Gérer l'authentification > Fournisseurs d'identité.
appid.idp-config.update Mettre à jour la configuration de fournisseur d'identité. Disponible dans l'onglet Gérer l'authentification > Fournisseurs d'identité.
appid.tokens-config.read Afficher la configuration de l'expiration de jeton. Disponible dans l'onglet Gérer l'authentification > Paramètres d'authentification.
appid.tokens-config.update Mettre à jour la configuration de l'expiration des jetons. Disponible dans l'onglet Gérer l'authentification > Paramètres d'authentification.
appid.redirect-uris.read Afficher la configuration actuelle de l'URI de redirection. Disponible dans l'onglet Gérer l'authentification > Paramètres d'authentification.
appid.redirect-uris.update Mettez à jour la configuration de l'URI de redirection. Disponible dans l'onglet Gérer l'authentification > Fournisseurs d'identité.
appid.is-profiles-active.read Afficher la configuration de stockage de profil utilisateur. Disponible dans l'onglet Profils et rôles > Profils d'utilisateur.
appid.is-profiles-active.update Mettre à jour la configuration de stockage de profil utilisateur. Disponible dans l'onglet Profils et rôles > Profils d'utilisateur.
appid.users.read Rechercher des profils utilisateur. Disponible dans l'onglet Profils et rôles > Profils d'utilisateur.
appid.users.create Créer un profil utilisateur pré-enregistré. Disponible dans l'onglet Profils et rôles > Profils d'utilisateur.
appid.users.get Exporter les profils utilisateur. L'action doit être effectuée depuis l'API.
appid.refresh-token.revoke Révoquer tous les jetons d'actualisation émis pour l'utilisateur. L'action doit être effectuée depuis l'API.
appid.users.import Importer les profils d'utilisateurs. L'action doit être effectuée depuis l'API.
appid.user-profile.read Afficher un profil d'utilisateur. Disponible dans l'onglet Profils et rôles > Profils d'utilisateur.
appid.user-profile.update Mettre à jour un profil utilisateur. Disponible dans l'onglet Profils et rôles > Profils d'utilisateur.
appid.user-profile.bulkdelete Supprimer une liste de profils utilisateur. Disponible dans l'onglet Profils et rôles > Profils d'utilisateur.
appid.user-roles.read Afficher les rôles d'utilisateur. Disponible dans l'onglet Profils et rôles > Profils d'utilisateur.
appid.user-roles.update Mettre à jour les rôles d'utilisateur. Disponible dans l'onglet Profils et rôles > Profils d'utilisateur.
appid.roles.read Afficher la liste des rôles. Disponible dans l'onglet Profils et rôles > Rôles.
appid.roles.create Créer un rôle. Disponible dans l'onglet Profils et rôles > Rôles.
appid.role.read Afficher le rôle. Disponible dans l'onglet Profils et rôles > Rôles.
appid.role.update Mettre à jour le rôle. Disponible dans l'onglet Profils et rôles > Rôles.
appid.applications.read Afficher la liste des applications. Disponible dans l'onglet Applications.
appid.applications.create Permet de créer une application. Disponible dans l'onglet Applications.
appid.application.read Afficher l'application. Disponible dans l'onglet Applications.
appid.application.update Mettre à jour l'application. Disponible dans l'onglet Applications.
appid.application-scopes.read Afficher les champs d'application. Disponible dans l'onglet Applications.
appid.application-scopes.update Mettre à jour les portées d'une application. Disponible dans l'onglet Applications.
appid.theme-text.read Afficher les textes du thème du widget de connexion. Disponible dans l'onglet Personnalisation de la connexion.
appid.theme-text.update Mettre à jour les textes du thème de la note de bas de page du widget de connexion. Disponible dans l'onglet Personnalisation de la connexion.
appid.theme-color.read Afficher la couleur du thème de l'en-tête du widget de connexion. Disponible dans l'onglet Personnalisation de la connexion.
appid.theme-color.update Mettre à jour la couleur du thème de l'en-tête du widget de connexion. Disponible dans l'onglet Personnalisation de la connexion.
appid.media.read Afficher l'image affichée dans le widget de connexion. Disponible dans l'onglet Personnalisation de la connexion.
appid.media.update Mettre à jour l'image affichée dans le widget de connexion. Disponible dans l'onglet Personnalisation de la connexion.
appid.ui-configuration.read Affichez la configuration de l'interface utilisateur du widget de connexion, qui inclut la couleur d'en-tête et l'image. Disponible dans l'onglet Personnalisation de la connexion.
appid.ui-languages.read Afficher la liste des langues prises en charge. L'action doit être effectuée depuis l'API.
appid.ui-languages.update Mettez à jour la liste des langues prises en charge. L'action doit être effectuée depuis l'API.
appid.saml-metadata.read Afficher les métadonnées SAML d'App ID. Disponible dans l'onglet Fournisseurs d'identité > SAML 2.0 Federation.
ppid.cloud-directory-user.read Afficher un utilisateur Cloud Directory. Disponible dans l'onglet Cloud Directory > Utilisateurs > Afficher les détails utilisateur.
appid.cloud-directory-user.update Mettre à jour un utilisateur Cloud Directory. Disponible dans l'onglet Utilisateurs.
appid.cloud-directory-user.delete Supprimer un utilisateur Cloud Directory. L'action doit être effectuée depuis l'API.
appid.user.delete Supprimer un utilisateur et un profil Cloud Directory. L'action doit être effectuée depuis l'API.
appid.cloud-directory-users.read Afficher la liste de vos utilisateurs Cloud Directory. Disponible dans l'onglet Cloud Directory > Utilisateurs.
appid.cloud-directory-user.update Mettre à jour la liste de vos utilisateurs Cloud Directory. Disponible dans l'onglet Cloud Directory > Utilisateurs.
appid.cloud-directory-user.delete Supprimer la liste des utilisateurs Cloud Directory. L'action doit être effectuée depuis l'API.
appid.users.bulkdelete Supprimer la liste des utilisateurs et des profils Cloud Directory. L'action doit être effectuée depuis l'API.
appid.cloud-directory-users.get Exporter des utilisateurs Cloud Directory. L'action doit être effectuée depuis l'API.
appid.cloud-directory-users.import Importer des utilisateurs Cloud Directory. L'action doit être effectuée depuis l'API.
appid.cloud-directory-user-sso.set-off Invalider toutes les sessions SSO de l'utilisateur. L'action doit être effectuée depuis l'API.
appid.email-dispatcher.read Afficher les configurations du répartiteur d'e-mails. Disponible dans l'onglet Cloud Directory > Modèles d'e-mail.
appid.email-dispatcher.update Mettre à jour les configurations du répartiteur d'e-mails. Disponible dans l'onglet Cloud Directory > Modèles d'e-mail.
appid.email-dispatcher-test.send Tester le répartiteur d'e-mails. Disponible dans l'onglet Cloud Directory > Modèles d'e-mail.
appid.email-settings-test.send Tester les configurations des paramètres d'e-mails. Disponible dans l'onglet Cloud Directory > Modèles d'e-mail.
appid.email-template.read Afficher un modèle d'e-mail. Disponible dans l'onglet Cloud Directory > Modèles d'e-mail.
appid.email-template.update Mettre à jour un modèle d’e-mail. Disponible dans l'onglet Cloud Directory > Modèles d'e-mail.
appid.email-template.delete Supprimer un modèle d'e-mail pour réinitialiser les valeurs par défaut. Disponible dans l'onglet Cloud Directory > Modèles d'e-mail.
appid.sender-details.read Afficher les détails de l'expéditeur. Disponible dans l'onglet Cloud Directory > Modèles d'e-mail.
appid.sender-details.update Mettre à jour les détails de l'expéditeur. Disponible dans l'onglet Cloud Directory > Modèles d'e-mail.
appid.resend-notification.send Renvoyer des notifications d'utilisateur. L'action doit être effectuée depuis l'API.
appid.self-forgot-password.start Démarrer la procédure de gestion des oublis de mot de passe. Disponible dans l'onglet Cloud Directory > Modèles d'e-mail.
appid.forgot-password-result.read Afficher le résultat de la confirmation d'oubli du mot de passe. L'action doit être effectuée depuis l'API.
appid.self-sign-up.start Démarrer la procédure d'inscription. Disponible dans l'onglet Cloud Directory > Paramètres.
appid.sign-up-result.read Afficher la confirmation du résultat de l'inscription. L'action doit être effectuée depuis l'API.
appid.action_url.read Afficher l'URL personnalisée qui est appelée lorsqu'une action est effectuée. Disponible dans l'onglet Cloud Directory > Modèles d'e-mail.
appid.action-url.update Mettre à jour l'URL personnalisée qui est appelée lorsqu'une action est effectuée. Disponible dans l'onglet Cloud Directory > Modèles d'e-mail.
appid.password-regex.read Afficher l'expression régulière des mots de passe. Disponible dans l'onglet Cloud Directory > Règles sur les mots de passe.
appid.password-regex.update Mettre à jour l'expression régulière des mots de passe. Disponible dans l'onglet Cloud Directory > Règles sur les mots de passe.
appid.advanced-password-management.read Afficher les configurations des règles avancées sur les mots de passe. Disponible dans l'onglet Cloud Directory > Règles sur les mots de passe.
appid.advanced-password-management.update Mettre à jour les configurations des règles avancées sur les mots de passe. Disponible dans l'onglet Cloud Directory > Règles sur les mots de passe.
appid.user-password.update Définir un nouveau mot de passe pour l'utilisateur Cloud Directory. L'action doit être effectuée depuis l'API.
appid.capture-runtime-activity.read Afficher / masquer les activités liées à l'exécution. Disponible dans l'onglet Gérer l'authentification > Paramètres d'authentification.
appid.capture-runtime-activity.update Afficher / masquer la surveillance des activités liées à l'exécution. Disponible dans l'onglet Gérer l'authentification > Paramètres d'authentification.
appid.mfa.read Afficher vos configurations d'authentification multi-facteur. Disponible dans l'onglet Cloud Directory > Authentification multifacteur.
appid.mfa.update Mettre à jour vos configurations d'authentification multi-facteur. Disponible dans l'onglet Cloud Directory > Authentification multifacteur.
appid.mfa-channels.read Afficher vos canaux d'authentification multi-facteur. Disponible dans l'onglet Cloud Directory > Authentification multifacteur.
appid.mfa-channel.read Afficher vos configurations de canaux MFA. Disponible dans l'onglet Cloud Directory > Authentification multifacteur.
appid.mfa-channel.update Mettre à jour vos canaux. Disponible dans l'onglet Cloud Directory > Authentification multifacteur.
appid.sms-dispatcher-test.send Tester les configurations du répartiteur de SMS. Disponible dans l'onglet Cloud Directory > Authentification multifacteur > Fournisseur SMS.
appid.mfa-extension-premfa.read Afficher la configuration de votre extension pré-MFA. L'action doit être effectuée depuis l'API.
appid.mfa-extension-premfa.update Mettre à jour la configuration de votre extension pré-MFA. L'action doit être effectuée depuis l'API.
appid.mfa-extension-postmfa.read Afficher la configuration de votre extension post MFA. L'action doit être effectuée depuis l'API.
appid.mfa-extension-postmfa.update Mettre à jour la configuration de votre extension post MFA. L'action doit être effectuée depuis l'API.
appid.is-mfa-extension-active.update Mettre à jour le statut de votre extension enregistrée. L'action doit être effectuée depuis l'API.
appid.mfa-extension-test.send Tester la configuration de votre extension enregistrée. L'action doit être effectuée depuis l'API.
ppid.sso.read Afficher votre configuration de connexion unique. Disponible dans l'onglet Fournisseurs d'identité > Cloud Directory > Connexion unique.
appid.sso.update Mettre à jour votre configuration de connexion unique. Disponible dans l'onglet Fournisseurs d'identité > Cloud Directory > Connexion unique.
appid.rate-limit.read Afficher vos configurations de limite de débit. L'action doit être effectuée depuis l'API.
appid.rate-limit.update Mettre à jour vos configurations de limite de débit. L'action doit être effectuée depuis l'API.

Affichage des événements d'exécution

Les événements d'exécution vous permettent de suivre l'activité des utilisateurs de votre application, comme les connexions, les réinitialisations de mot de passe et les demandes d'authentification.

Actions pouvant être suivies en tant qu'événements d'authentification au moment de l'exécution
Description Action Résultat reason. reasonCode target.id target.name target.typeURI
Réussite d'authentification avec Cloud Directory appid.user.authenticate success 200 [appid user CRN] cloud_directory:[GUID] appid/user
Échec d'authentification avec Cloud Directory appid.user.authenticate failure 401 [appid user CRN] cloud_directory:[GUID] appid/user
Réussite d'authentification avec Facebook appid.user.authenticate success 200 [appid user CRN] facebook:[GUID] appid/user
Échec d'authentification avec Facebook appid.user.authenticate failure 401 crn:unknown facebook:unknown appid/user
Réussite d'authentification avec Google appid.user.authenticate success 200 [appid user CRN] google:[GUID] appid/user
Échec d'authentification avec Google appid.user.authenticate failure 401 crn:unknown google:unknown appid/user
Réussite d'authentification avec SAML appid.user.authenticate success 200 [appid user CRN] SAML:[GUID] appid/user
Échec d'authentification avec SAML appid.user.authenticate failure 401 crn:unknown SAML:unknown appid/user
Réussite d'authentification avec les données d'identification du client appid.application.authenticate success 200 [appid application CRN] client_credentials:client_id appid/application
Échec d'authentification avec les données d'identification du client appid.application.authenticate failure 401 crn:undefined client_credentials:undefined appid/application
Connexion à Cloud Directory appid.cloud-dir-user.create success 200 [appid user CRN] cloud_directory:[GUID] appid/cloud_dir/user
Échec d'inscription à Cloud Directory appid.cloud-dir-user.create failure 400 crn:unknown cloud_directory:unknown appid/cloud_dir/user
Confirmation d'inscription à Cloud Directory appid.cloud-dir-user.allow success 200 [appid user CRN] cloud_directory:[GUID] appid/cloud_dir/user
Echec de confirmation d'inscription à Cloud Directory appid.cloud-dir-user.allow failure 400 crn:unknown cloud_directory:unknown appid/cloud_dir/user
Réinitialisation ou renouvellement du mot de passe Cloud Directory appid.cloud-dir-user-credentials.renew success 200 [appid user CRN] cloud_directory:[GUID] appid/cloud_dir/user
Echec de la réinitialisation ou du renouvellement du mot de passe Cloud Directory appid.cloud-dir-user-credentials.renew failure 400 crn:unknown cloud_directory:unknown appid/cloud_dir/user
Changement du mot de passe Cloud Directory appid.cloud-dir-user-credentials.update success 200 [appid user CRN] cloud_directory:[GUID] appid/cloud_dir/user
Echec du changement du mot de passe Cloud Directory appid.cloud-dir-user-credentials.update failure 400 crn:unknown cloud_directory:unknown
Révocation de jetons utilisateur appid.user-tokens.revoke success 200 appid user CRN idp:[GUID] appid/user
Échec de révocation de jetons utilisateur appid.user-tokens.revoke failure 400 appid user CRN idp:[GUID] appid/user
Déconnexion SSO de l'utilisateur Cloud Directory appid.cloud-dir-user.set-off success 200 appid user CRN idp:[GUID] appid/user
Affichage des attributs de profil utilisateur appid.user-profile-attributes.read success 200 crn:profiles:[User-ID] profiles:[User-ID] appid-user-profiles/attributes
Mise à jour d'un attribut de profil utilisateur appid.user-profile-attributes.update success 200 crn:profiles:[User-ID] profiles:[User-ID] appid-user-profiles/attribute/[Attribute-name]
Suppression d'un attribut de profil utilisateur appid.user-profile-attributes.delete success 200 crn:profiles:[User-ID] profiles:[User-ID] appid-user-profiles/attribute/[Attribute-name]

Analyse des événements de suivi d'activité sur le site App ID

Un utilisateur qui génère un événement d'exécution est identifié avec un identificateur global unique (GUID) plutôt qu'avec son nom ou son adresse e-mail. En tant que propriétaire du compte, vous pouvez utiliser l'identificateur global unique pour identifier un utilisateur spécifique et vous pouvez ensuite rechercher tous les évènements déclenchées par l'utilisateur.

Le scénario suivant s'applique uniquement aux utilisateurs Cloud Directory. Si l'utilisateur est défini par un fournisseur d'identité externe, par exemple Google ou Facebook, seul ce fournisseur d'identité peut interpréter l'ID global unique.

Extrait d'informations utilisateur à partir de l'ID global unique

Un événement figurant dans la console IBM Cloud Activity Tracker Event Routing contient les zones suivantes.

Exemples de champs pouvant être trouvés dans un événement
Zone Valeur Description
initiator.id cb967e0d-43c1-454a-968d-0efa24766846 ID du titulaire.
target.name cloud_directory:34e1ea6d-cc02-4941-9462-7e9c5a40b360 ID utilisateur.

Pour trouver les informations utilisateur correspondant à l'ID global unique de l'événement, procédez comme suit :

  1. Dans l'onglet desdonnées d'identification du tableau de bord App ID, copiez et enregistrez les informations dans les zones apiKey et tenantID. L'ID du titulaire doit correspondre à l'ID de l'événement. S'il n'existe pas de données d'identification, créez-les.

  2. Procurez-vous un jeton IAM pour la clé d'API (apiKey) en insérant la clé dans la commande suivante :

    curl -k -X POST \
       --header "Content-Type: application/x-www-form-urlencoded" \
       --header "Accept: application/json" \
       --data-urlencode "grant_type=urn:ibm:params:oauth:grant-type:apikey" \
       --data-urlencode "apikey=<apiKey>" \
       "https://iam.cloud.ibm.com/identity/token"
    
  3. Copiez dans la réponse le jeton IAM qui se trouve dans la zone access_token.

  4. Sélectionnez une région. Reportez-vous à cette section sur les régions disponibles.

  5. Insérez le jeton IAM, l'ID du titulaire et l'ID de l'utilisateur dans la commande suivante pour obtenir les informations utilisateur.

    curl -X GET
    --header 'Accept: application/json'
    --header 'Authorization: Bearer <IAMToken>' \
    'https://<region>.appid.cloud.ibm.com/<tenantID>/cloud_directory/Users/<userID>'
    

    Vous pouvez également exécuter cette commande en utilisant les API de gestion. Votre sortie ressemblerait à l'objet JSON suivant :

       {
       "displayName": "test test",
       "active": true,
       "userName": "test0001",
       "mfaContext": {},
       "emails": [
       {
          "value": "mytest@yahoo.com",
          "primary": true
       }
       ],
       "meta": {
       "lastLogin": "2018-12-10T16:05:36.665Z",
       "created": "2018-08-21T08:55:50.643Z",
       "location": "/v1/cb967e0d-43c1-454a-968d-0efa24766846/Users/34e1ea6d-cc02-4941-9462-7e9c5a40b360",
       "lastModified": "2018-12-10T16:05:36.675Z",
       "resourceType": "User"
       },
       "schemas": [
       "urn:ietf:params:scim:schemas:core:2.0:User"
       ],
       "name": {
       "givenName": "test",
       "familyName": "test",
       "formatted": "test test"
       },
       "id": "34e1ea6d-cc02-4941-9462-7e9c5a40b360"
    }
    

Recherche d'événements liés à l'utilisateur

Vous pouvez suivre les événements liés à des utilisateurs Cloud Directory spécifiques dans IBM Cloud Activity Tracker Event Routing en indiquant leur adresse e-mail. Avant de commencer l'opération de suivi, l'adresse e-mail doit être mappée à un ID global unique Cloud Directory.

  1. Obtenez un jeton IAM, un ID locataire et une région, comme décrit dans la section précédente.

  2. Insérez le jeton IAM, l'ID du titulaire et l'adresse e-mail dans la commande suivante pour obtenir les informations utilisateur.

    curl -X GET
    --header 'Accept: application/json'
    --header 'Authorization: Bearer <IAMToken>'
    'https://<region>.appid.cloud.ibm.com/<tenantID>/users?email=<emailAddress>'
    

    L'adresse électronique doit être avec caractères d'échappement. Par exemple, myTest%40yahoo.com au lieu de myTest@yahoo.com.

    Vous pouvez également utiliser les API de gestion. Votre sortie ressemblerait à l'objet JSON suivant :

    {
       "users": [
       {
          "idp": "cloud_directory",
          "id": "1e123399-3499-4a5c-b5a9-93843a91dc80"
       },
       {
          "idp": "cloud_directory",
          "id": "2a7abbe5-0fce-402e-9ddf-265246b415c8"
       }
       ]
    }
    
  3. Recherchez une valeur cloud_directory:id dans la zone target.name_str sur la console IBM Cloud Activity Tracker Event Routing.