Hub sécurisé pour les données utilisateur en mouvement
Contraste l'authentification et les données utilisateur. Détaille le stockage sécurisé de Logto et le déplacement des données. Présente les meilleures pratiques de flux de données (mappages d'attributs, synchronisation de données, JWT personnalisés).
Les métadonnées utilisateur sont le moteur des services de gestion des identités et des accès (IAM). Elles alimentent des fonctionnalités produit comme l'analyse de données, les expériences personnalisées, la surveillance de la sécurité et le contrôle d'accès. Mais à mesure que les applications deviennent plus interconnectées à travers les plateformes, les organisations et les applications, gérer les métadonnées utilisateur peut devenir complexe. Ne t'inquiète pas ! En comprenant le flux des données utilisateur, tu peux construire une expérience d'authentification fluide et sécurisée.
Données d'authentification vs. données utilisateur
Toutes les données utilisateur ne sont pas créées égales. Les données d'authentification sont un sous-ensemble spécifique échangé lors de l'émission de jetons. Imagine un JWT (JSON Web Token) voyageant dans tes requêtes HTTP. Un grand JWT peut ralentir les choses. Pour garder la rapidité et la sécurité, nous n'incluons que les informations utilisateur essentielles comme l'identité, l'état du compte, les détails d'authentification, les permissions et un profil utilisateur de base.
Chez Logto, nous nous concentrons sur le stockage des points de données d'authentification suivants :
- État du compte : Suivi de la création, des mises à jour, de l'état de suspension et de l'historique des connexions. Incluant
create_at
,updated_at
,account_suspended
,last_ip
. - Informations d'authentification : Cela inclut les identifiants utilisateur, les facteurs d'authentification et les données de vérification. Incluant
user_id
,password_digest
,password_algorithm
,username
,email
,email_verified
,phone
,phone_verified
,social_identities
,sso_identities
,mfa_config
,mfa_verification_factors
. - Informations d'autorisation : Gestion des rôles, permissions, appartenances organisationnelles et applications et appareils autorisés pour un contrôle d'accès granulaire. Incluant
role
,permission
,organization_id
,organization_role
,organization_permission
,grant_application
,grant_device
. - Profil utilisateur standard : C'est le profil utilisateur le plus commun enregistré par OIDC. Logto le définit également comme les métadonnées utilisateur par défaut, stockées sous l'espace de noms 'profile.'. Incluant
first_name
,last_name
,middle_name
,name
,nickname
,profile
,website
,avatar
,gender
,birthdate
,zoneinfo
,locale
,address
.
Au-delà des bases : Personnaliser les données utilisateur avec Logto
- Logto va au-delà du profil standard. Notre API de gestion te permet de définir des données personnalisées spécifiques aux besoins de ton entreprise. Ces données sont stockées de manière sécurisée sous un espace de noms dédié ‘custom.data’. Voici quelques cas :
occupation
,company_name
,company_size
.
Penser hors du coffre-fort : données API externes avec JWT personnalisés
- Certaines données d'affaires pourraient ne pas nécessiter un stockage permanent dans Logto. La beauté des JWT personnalisés est que tu peux récupérer dynamiquement ces données via des appels API lors de l'émission de jetons, élargissant ainsi la portée de tes données utilisateur. Souviens-toi, la sécurité est primordiale, évite donc d'inclure des informations sensibles dans les JWT car ils sont facilement analysés. Voici quelques cas :
subscribed_status
,last_path_visited
,app_theme
.
Le parcours des données utilisateur : acquisition et distribution
Les données utilisateur proviennent de diverses sources :
- Saisie utilisateur : Lors de l'inscription, de l'intégration ou des mises à jour de profil au sein de ton application.
- Fournisseurs d'identité (IdPs) : Synchronisation transparente lors des connexions sociales ou SSO d'entreprise.
- Migrations de données : Déplacement des données des bases de données existantes.
- Intervention administrative : Modifications par l'admin manuellement via la console ou la base de données.
Une fois que tu as ces données précieuses, tu peux les partager en toute sécurité :
- Accorder des permissions aux applications tierces : Fournir un accès contrôlé aux données utilisateur pour les applications autorisées.
- Exportations de données : Exporter les données utilisateur de Logto pour une analyse plus approfondie.
- Distribution via JWT, Webhooks ou APIs : Partager les données utilisateur avec tes services internes pour une expérience utilisateur unifiée.
En tant que centre d'identité, Logto excelle à faciliter le flux des données utilisateur. Nous facilitons l'acquisition d'informations utilisateur auprès de divers fournisseurs et leur livraison sécurisée aux parties autorisées.
Points clés
Maintenant que tu comprends le parcours des données utilisateur, explorons quelques considérations clés de conception :
- Mappage d'attributs Assure un mappage précis des attributs utilisateur provenant de différentes sources pour éviter les silos de données. Pour les connexions SAML, un mappage manuel est requis. Lors de l'utilisation de OIDC, utilise les revendications standardisées ou crée des espaces de noms uniques pour éviter les conflits.
- Synchronisation des données IdP et RP La synchronisation des données entre les IdPs (fournisseurs d'identité) et les RP (parties prenantes) implique généralement des autorisations et des demandes de portée spécifiques des deux côtés. Sois attentif au statut de vérification. Un "Email verified=false" synchronisé d'un IdP comme GitHub ou Azure AD pourrait ne pas être un email vérifié dans ton système. Traite-le en conséquence.
- Séparation et écrasement des données dans une structure multi-entité
Dans des environnements complexes avec plusieurs organisations, applications et fournisseurs, la séparation et le comportement d'écrasement des données deviennent cruciaux.
- Multi-organisation : Un utilisateur peut appartenir à plusieurs organisations. Différencie les données utilisateur stockées sous le compte utilisateur des données spécifiques à l'organisation. Les modifications au sein d'une organisation ne doivent pas affecter les autres.
- Multi-app : Pour les applications partageant une base de données utilisateur via Logto, implémente un module de paramètres de compte centralisé ou de paramètres de profil dans ton service.
- Multi-fournisseur : Les applications avec diverses méthodes de connexion reçoivent des informations utilisateur différentes de chaque fournisseur. Dans Logto, choisis de synchroniser les données lors de l'enregistrement via connexion sociale ou à chaque connexion pour le SSO d'entreprise. La connexion sociale est idéale pour une synchronisation de données à l'avance, tandis que le SSO d'entreprise peut synchroniser les informations des membres à chaque connexion pour une gestion plus facile au sein de l'IdP d'entreprise.
- JWT personnalisés pour un accès étendu aux données Le pouvoir des JWT personnalisés réside dans leur capacité à récupérer dynamiquement des informations externes lors de l'émission de jetons via des appels API. Cela te permet d'accéder à des points de données qui pourraient ne pas être essentiels pour la fonctionnalité de base mais qui peuvent enrichir l'expérience utilisateur. Souviens-toi, avec une grande flexibilité vient une grande responsabilité. Étant donné que les JWT peuvent être facilement analysés par quiconque les reçoit, évite d'inclure des données sensibles.
- Inscription progressive pour un flux d'intégration plus fluide Ne submerge pas les utilisateurs avec un formulaire d'inscription de la taille d'un roman. Implémente l'inscription progressive, une technique où tu demandes initialement uniquement les informations utilisateur les plus critiques. Cela simplifie le processus d'inscription et garde les utilisateurs engagés. Au fur et à mesure que les utilisateurs interagissent avec ton application, tu peux progressivement collecter des points de données supplémentaires pour construire un profil utilisateur plus riche.
En suivant ces meilleures pratiques, tu peux assurer un flux fluide et sécurisé des données utilisateur tout au long du parcours d'authentification.
Logto : Ton hub sécurisé pour les données utilisateur en mouvement
Gérer efficacement les métadonnées utilisateur te permet de personnaliser les expériences utilisateur, d'améliorer la sécurité et d'obtenir des informations précieuses sur le comportement des utilisateurs. En apprenant à utiliser la plateforme sécurisée et flexible de Logto, tu peux exploiter le plein potentiel des données utilisateur et obtenir un avantage concurrentiel dans le paysage axé sur les données d'aujourd'hui.