Loading
Configuration et maintenance de votre organisation Salesforce
Création de déclencheurs d’événement de déconnexion

Création de déclencheurs d’événement de déconnexion

Si l’objet LogoutEventStream est disponible pour votre organisation, vous pouvez créer des déclencheurs Apex qui répondent aux événements de déconnexion de sécurité depuis l’interface utilisateur de votre organisation.

Éditions requises

Disponible avec : Toutes les éditions

Lorsque LogoutEventStream est activé, Salesforce publie des événements de déconnexion lorsque des utilisateurs se déconnectent de l’interface utilisateur. Vous pouvez ajouter un déclencheur Apex pour vous abonner à ces événements. Vous pouvez ensuite implémenter une logique personnalisée durant la déconnexion. Par exemple, vous pouvez révoquer tous les jetons d’actualisation d’un utilisateur lors de la déconnexion.

Les expirations n'entraînent pas la publication d'un objet LogoutEventStream. Il existe une exception lorsqu'un utilisateur est automatiquement déconnecté de l'organisation suite à l'expiration de la session si l'organisation a activé le paramètre Forcer la déconnexion à l'expiration de la session. Dans ce cas, un événement de déconnexion est enregistré. Cependant, si les utilisateurs ferment leur navigateur pendant la session, aucun événement de déconnexion n'est enregistré, que le paramètre Forcer la déconnexion à l'expiration de la session soit activé ou non.

  1. Dans Configuration, saisissez Gestionnaire d'événement dans la case Recherche rapide, puis sélectionnez Gestionnaire d'événement.
  2. En regard d'Événement de déconnexion, cliquez sur la liste déroulante, puis sélectionnez Activer Streaming.
  3. Créez des déclencheurs Apex qui abonnent à des événements de déconnexion.
Exemple
Exemple

Dans cet exemple, l’abonné insère un enregistrement d’événement de déconnexion personnalisé durant la déconnexion.

trigger LogoutEventTrigger on LogoutEventStream (after insert) { 
  LogoutEventStream event = Trigger.new[0];
  LogoutEvent__c record = new LogoutEvent__c();
  record.EventIdentifier__c = event.EventIdentifier;
  record.UserId__c = event.UserId;
  record.Username__c = event.Username;
  record.EventDate__c = event.EventDate;
  record.RelatedEventIdentifier__c = event.RelatedEventIdentifier;
  record.SessionKey__c = event.SessionKey;
  record.LoginKey__c = event.LoginKey;
  insert(record);
}
 
Chargement
Salesforce Help | Article