É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.
Dallas (us-south) |
Washington (us-east) |
Toronto (ca-tor) |
Sao Paulo (br-sao) |
|---|---|---|---|
| Oui | Oui | Oui | Oui |
Tokyo (jp-tok) |
Sydney (au-syd) |
Osaka (jp-osa) |
in-che |
|---|---|---|---|
| Oui | Oui | Oui | Non |
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.
| 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.
| 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.
| 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 :
-
Dans l'onglet desdonnées d'identification du tableau de bord App ID, copiez et enregistrez les informations dans les zones
apiKeyettenantID. 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. -
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" -
Copiez dans la réponse le jeton IAM qui se trouve dans la zone access_token.
-
Sélectionnez une région. Reportez-vous à cette section sur les régions disponibles.
-
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.
-
Obtenez un jeton IAM, un ID locataire et une région, comme décrit dans la section précédente.
-
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.comau lieu demyTest@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" } ] } -
Recherchez une valeur cloud_directory:id dans la zone target.name_str sur la console IBM Cloud Activity Tracker Event Routing.