Planifiez votre architecture
Pour établir les meilleures pratiques en matière de conception et planifier votre architecture, considérez vos besoins sous différents angles. Concentrez-vous sur l'objectif final et le flux de travail, pas seulement sur les technologies et fonctionnalités sous-jacentes. Voici quelques questions clés pour vous guider et vous inspirer dans la construction de l'architecture idéale pour votre produit.
Quel est votre modèle économique, et qui sont les parties et parties prenantes clés impliquées ?
En général, il existe deux principaux modèles économiques, B2C et B2B, chacun impliquant différentes parties dans des scénarios complexes de gestion des identités. Comprendre ces parties prenantes clés vous aide à concevoir des systèmes qui offrent une expérience centrée sur l'utilisateur et abordent tous les aspects de la gestion des identités.
B2C
Dans les applications B2C, la gestion des identités est généralement simple et implique généralement seulement deux parties.
Développeurs (Vous)
Cela fait référence aux administrateurs et collaborateurs de Logto Console — généralement vous et votre équipe de développement — qui gèrent et sécurisent le pool d'identités des utilisateurs et travaillent directement avec la base de données d'identités. Vous pouvez gérer directement les identités des clients dans Logto Console ou effectuer un développement personnalisé en utilisant le Logto Management API.
Vos consommateurs
Vos consommateurs sont des identités d'utilisateur stockées dans le service central et la base de données de Logto. Dans un modèle B2C, les consommateurs peuvent gérer leur propre Authentification et leurs informations personnelles.
B2B
Dans les applications B2B, une autre couche et un autre contexte sont introduits dans cette architecture. Le propriétaire de l'unité commerciale (ou Organisation) contrôle qui peut accéder à leur instance, comment ils s'authentifient et ce qu'ils peuvent faire. L'Organisation gère l'identité de tous les utilisateurs finaux qui accèdent à leur instance.
Développeurs (Vous)
Cela fait toujours référence aux administrateurs et collaborateurs de Logto Console. Bien que les administrateurs d'Organisation puissent gérer les identités, les développeurs peuvent toujours gérer directement les identités des clients dans Logto Console ou par le biais d'un développement personnalisé en utilisant le Logto Management API.
Vos clients (Administrateurs d'Organisation)
Vos clients sont des unités commerciales représentant des "Organisations" dans une application multi-locataires, par exemple, des espaces de travail dans Slack ou Notion. Chaque espace de travail a généralement plusieurs Rôles et un ou plusieurs administrateurs qui gèrent les employés ou les utilisateurs. Dans le contenu suivant, nous faisons référence aux personnes qui PEUVENT gérer les identités des membres en tant qu'"administrateurs d'Organisation".
Le personnel, les partenaires ou les consommateurs de vos clients
Ce sont des identités d'utilisateur final, appelées "membres" dans le contexte de l'Organisation, et peuvent être gérées au sein d'une Organisation. Bien que ces identités soient séparées par Organisations, elles sont toutes agrégées sous un système d'identité unique.
Dans des scénarios réels, d'un point de vue produit, il pourrait s'agir de personnel de l'entreprise, de partenaires commerciaux ou même de consommateurs associés à l'Organisation.
Autres
D'autres modèles, comme B2B2C, peuvent émerger de ces deux en raison de leur complexité. Cependant, l'approche reste la même : tous les changements proviennent du même fondement de base.
Dans le prochain chapitre, nous examinerons en détail ces deux architectures courantes et mettrons en évidence les fonctionnalités associées prises en charge par Logto.
Distillez vos besoins en matière d'authentification
Une fois que vous comprenez les utilisateurs clés et les parties impliquées dans votre conception technologique et produit, considérez les questions suivantes pour affiner votre architecture d'identité et déterminer vos besoins en matière d'Authentification et votre niveau de contrôle :
-
Quelles options les clients ont-ils pour l'Authentification et l'expérience de connexion ? Celles-ci dépendent généralement de votre entreprise, de votre stratégie d'acquisition et de vos besoins en matière de produit.
par exemple. Quelles fonctionnalités sont nécessaires pour mon application ? Connexion sociale ? Connexion sans mot de passe ?
-
Quel niveau de contrôle souhaitez-vous (développeurs) sur les actions des clients ?
par exemple. Les clients peuvent-ils mettre à jour et maintenir leur profil ? Les clients peuvent-ils activer et désactiver eux-mêmes l'Authentification multi-facteurs (MFA) ? Peuvent-ils choisir des méthodes de connexion préférées ?
-
Quels types de personnalisation souhaitez-vous déléguer aux Organisations ? Ceux-ci dépendent du domaine et de l'industrie de votre produit et des besoins spécifiques de vos clients, et peuvent varier d'une Organisation à l'autre.
par exemple. L'expérience de connexion doit-elle varier pour chaque Organisation ? Et si oui, la personnalisation doit-elle se limiter à la marque, ou doit-elle également inclure des différences dans le flux d'Authentification ?
-
Quel niveau de contrôle souhaitez-vous que vos administrateurs d'Organisation aient sur les actions de leurs membres ?
par exemple. L'administrateur de l'Organisation doit-il pouvoir décider si l'Authentification multi-facteurs (MFA) est requise ? L'administrateur doit-il avoir la capacité de changer le mot de passe d'un membre ?
Avez-vous besoin d'un système d'identité universel unique ou de plusieurs systèmes séparés ?
Une autre question clé à garder à l'esprit est de vous demander si vous ou un segment de votre entreprise ou produit avez besoin d'un système d'identité ou de plusieurs systèmes séparés.
En général, la réponse est un système d'identité universel unique, ce qui signifie que vous n'avez besoin que d'un seul locataire Logto (ou d'une seule instance de Logto admin console dans OSS). Logto est conçu pour prendre en charge à la fois plusieurs applications et plusieurs Organisations au sein d'un seul locataire. Un locataire Logto de production est généralement suffisant pour la plupart des besoins. Voici quelques scénarios courants auxquels vous pourriez être confronté :
Je voudrais construire une application SaaS avec multi-locataires
Si vous construisez une application SaaS avec le concept d'"espace de travail" ou d'"Organisation" pour chaque client, vous pouvez utiliser des Organisations pour gérer l'espace de travail de chaque client au sein d'un seul locataire.
Dans ce cas, un utilisateur peut être membre de plusieurs Organisations. Par exemple, un utilisateur peut avoir un espace de travail personnel et rejoindre l'espace de travail de l'entreprise.
J'ai plusieurs applications
Avec Logto, vous pouvez gérer plusieurs applications au sein d'un seul locataire, indépendamment de
- Le type d'application (par exemple, web, mobile, bureau, etc.)
- Les cas d'utilisation et les fonctionnalités de l'application (par exemple, application de conducteur, application de hailer, etc.)
J'ai plusieurs clients d'entreprise
Vous pouvez utiliser des Organisations avec Enterprise SSO pour gérer plusieurs clients d'entreprise au sein d'un seul locataire. En configurant les paramètres de domaine de messagerie Enterprise SSO et en utilisant la fonctionnalité de provisionnement Just-in-Time, vous pouvez automatiser le processus des utilisateurs avec des comptes Enterprise SSO rejoignant ou se connectant aux Organisations appropriées.