Passer au contenu principal
La fonctionnalité Session Metadata est actuellement en accès anticipé pour les clients Enterprise seulement. En utilisant cette fonctionnalité, vous acceptez les modalités applicables de période d’essai gratuit prévues dans le Master Subscription Agreement d’Okta. Pour en savoir plus sur le cycle de publication des produits Auth0, consultez la page Product Release Stages.
Les métadonnées de session rendent les données contextuelles de l’utilisateur portables et visibles tout au long du cycle de vie de la session et lors des événements de déconnexion. Les systèmes en aval peuvent utiliser les métadonnées de session pour réaliser des audits, effectuer des analyses et appliquer des pipelines de révocation, entre autres usages.

Ajouter des renseignements sur l’organisation aux métadonnées de session

Vous pouvez utiliser les Actions pour stocker les identifiants de l’organisation dans une session au moyen de la méthode api.session.setMetadata() du post-login, puis les consulter avec l’objet event.session.metadata. Code d’Action post-login :
/**
 * Action Post-Login (simple)
 * Ajoute le contexte de l'organisation aux métadonnées de session afin qu'il apparaisse dans les Actions subséquentes,
 * la Management API et (si activé) le jeton de déconnexion Back-Channel.
 */
exports.onExecutePostLogin = async (event, api) => {
  // Only proceed if the transaction targets an Organization
  if (!event.organization) return;

  // Keep values short and string-only (session metadata requires strings)
  const orgId = String(event.organization.id || "");
  const orgSlug = String(event.organization.name || "");
  const orgDisplay = String(event.organization.display_name || orgSlug);

  // Minimal, idempotent writes (only a few keys to stay well under limits)
  api.session.setMetadata("org_id", orgId);
  api.session.setMetadata("org_slug", orgSlug);
  api.session.setMetadata("org_name", orgDisplay);
};
Les métadonnées de session sont disponibles pour les Actions ultérieures, récupérables via la Management API et peuvent être incluses dans le jeton de déconnexion back-channel OpenID Connect.
  • Dans les Actions ultérieures, vous pouvez interroger ces données via l’objet event.session.metadata :
const orgId = event.session.metadata?.org_id;
  • Si vous utilisez la Management API, vous pouvez interroger les données à l’aide du point de terminaison /api/v2/sessions/ :
GET /api/v2/sessions/{id}
Exemple de réponse :
{
  "session_metadata": {
    "org_id": "org_abc123",
    "org_slug": "acme",
    "org_name": "Acme Corp"
  }
}
Les appels au point de terminaison /api/v2/sessions/{id} nécessitent un jeton d’accès de la Management API avec la portée update:session.
  • Si vous avez une application configurée avec des métadonnées de session OIDC Back-Channel Logout, le logout_token contient les métadonnées de session :
{
  "events": { "http://schemas.openid.net/event/backchannel-logout": {} },
  "session_metadata": {
    "org_id": "org_abc123",
    "org_slug": "acme",
    "org_name": "Acme Corp"
  }
}