Le modèle de multi-location de Logto expliqué
Jetez un œil à la façon dont nous avons conçu le modèle de multi-location de Logto et aux avantages qu'il apporte aux applications SaaS.
Jetez un œil à la façon dont nous avons conçu le modèle de multi-location de Logto et aux avantages qu'il apporte aux applications SaaS.
Vous avez peut-être entendu parler de certains produits qui utilisent le terme "multi-location" pour représenter l'isolation des identités : chaque locataire a son propre ensemble d'utilisateurs, de rôles, de permissions et de données.
Cela peut sembler contre-intuitif, mais en fait, "multi-location" indique le contraire : plusieurs locataires partagent des ressources dans une seule instance. Pour les utilisateurs, une identité dans une application est comme un permis de conduire. Par exemple, avec un permis de conduire, vous pouvez conduire dans différents états (une identité pour plusieurs organisations), au lieu de demander un nouveau permis de conduire pour chaque état.
Chez Logto, nous avons remarqué cette confusion dès le début de notre conception, et nous nous sommes efforcés de le rendre correct pour vos applications et vos utilisateurs. Voici notre conception :
Ce modèle offre la flexibilité et la réutilisabilité pour la gestion des identités, en particulier pour les applications SaaS. Si nous regardons certaines applications SaaS populaires, nous pouvons constater qu'elles peuvent toutes s'intégrer dans ce modèle. Le terme "organisation" peut être différent dans différentes applications, telles que "espace de travail", "équipe", etc. Mais le concept est le même.
Par exemple, dans Notion (un outil de collaboration populaire) :
Ainsi, les utilisateurs peuvent facilement passer d'un espace de travail à un autre sans changer de compte ou se reconnecter, tout en maintenant l'isolation entre les espaces de travail. Traduisons cela au modèle de Logto, cela signifie :
En fonction des rôles différents, un utilisateur peut avoir des permissions différentes dans différents espaces de travail (organisations).
Pour les utilisateurs, ils peuvent profiter d'une véritable expérience de connexion unique. Passer d'une organisation à une autre est aussi simple que de passer d'un onglet à un autre.
Un avantage des applications SaaS est qu'elles sont standardisées et évolutives. Par exemple, vous pouvez créer un nouvel espace de travail dans Notion en quelques clics, et il est prêt à être utilisé.
Lorsque votre application se développe, vous pouvez vouloir ajouter plus de rôles et de permissions à chaque organisation. Par exemple, un nouveau rôle "invité" et une nouvelle permission "inviter:invité". Cela peut devenir un cauchemar si vous devez mettre à jour toutes les organisations existantes une par une.
Avec Logto, vous pouvez mettre à jour le modèle d'organisation, et toutes les organisations existantes seront mises à jour automatiquement.
Chez Logto, nous utilisons le même modèle de contrôle d'accès (RBAC) pour les organisations et les ressources API. Cela signifie que vous n'avez pas besoin d'apprendre un nouveau modèle de contrôle d'accès si vous êtes familier avec le RBAC. Parallèlement, ils sont isolés les uns des autres, vous pouvez donc les utiliser pour différents cas d'utilisation.
La partie la plus excitante est que vous pouvez les utiliser en même temps. Poussons l'exemple de Notion un peu plus loin :
La plupart des SDK de Logto prennent en charge les deux types de RBAC.
Les différences
Le RBAC organisationnel et le RBAC des ressources API sont différents dans les aspects suivants :
Construire une application SaaS est difficile, et nous espérons que Logto peut vous aider à vous concentrer sur votre cœur de métier. N'hésitez pas à nous faire part de vos commentaires si vous avez des questions ou des suggestions.