Marché
Les organisations qui développent des applications sur le Plateforme .NET servent souvent plusieurs clients (locataires) via une instance d'application unique. Chaque locataire peut représenter une entreprise, une unité commerciale ou un client différent, avec ses propres utilisateurs, fournisseurs d'identité et exigences d'accès.
Dans un tel environnements multi-locatairesLa gestion de l'authentification devient complexe, chaque locataire pouvant nécessiter des configurations de connexion, une personnalisation et des intégrations de fournisseurs d'identité distinctes, telles que : Microsoft Azure Active Directory, Okta, ADFS ou Google Workspace.
Bien que moderne Cadres .NET Bien qu'ils prennent en charge les mécanismes d'authentification, ils ne disposent pas de prise en charge intégrée pour routage d'authentification dynamique basé sur le locataire et gestion centralisée des locataires.
miniOrange résout ce problème en agissant comme une couche d'orchestration d'identité centralisée, permettant aux applications .NET de prendre en charge authentification prenant en compte le locataireoù chaque locataire peut avoir son propre fournisseur d'identité, son expérience de connexion et ses politiques d'accès, le tout géré à partir d'une seule plateforme.
Pré-requis :
L'organisation :
- Exécute une ou plusieurs applications .NET / ASP.NET / ASP.NET Core.
- Permet de servir plusieurs clients (locataires) à partir d'une seule application.
- Nécessite une configuration d'authentification spécifique au locataire.
- Utilise différents fournisseurs d'identité par locataire (Azure AD, Okta, Google, etc.).
- Souhaite éviter de développer une logique d'authentification personnalisée basée sur les locataires.
- Nécessite un processus d'intégration évolutif pour les nouveaux locataires.
La Problématique
Défis commerciaux
- Difficulté à gérer plusieurs organisations clientes au sein d'une seule application.
- Expérience utilisateur médiocre en raison de flux de connexion non personnalisés.
- Délai d'intégration accru pour les nouveaux locataires.
- Manque d'expérience en matière de marque et d'identité propres aux locataires.
- Charge de support élevée due à la confusion des connexions.
Défis techniques
- L'authentification .NET ne prend pas en charge l'identification et le routage des locataires.
- Configuration complexe pour plusieurs mappages locataire-IDP.
- Difficulté à maintenir des flux d'authentification distincts par locataire.
- Difficultés liées à l'application des politiques d'accès spécifiques aux locataires.
- Complexité accrue du code et efforts de maintenance supplémentaires.
Notre solution
miniOrange active l'authentification unique multi-locataire pour les applications .NET en introduisant une couche d'identité centralisée qui identifie dynamiquement les locataires et achemine l'authentification en conséquence.
1. Routage d'authentification prenant en compte le locataire
- Identifier les locataires à l'aide du domaine, du sous-domaine, de l'adresse e-mail ou de l'identifiant du locataire.
- Orienter automatiquement les utilisateurs vers le fournisseur d'identité approprié.
- Prise en charge de plusieurs fournisseurs d'identité sur différents locataires.
- Supprimer la sélection manuelle de l'identifiant de connexion pour les utilisateurs.
2. Gestion centralisée des locataires
- Configurez les paramètres d'authentification par locataire à partir d'un tableau de bord unique.
- Gérer les métadonnées, les certificats et les points de terminaison par locataire.
- Activer la personnalisation de l'image de marque du locataire (logos, pages de connexion).
- Ajouter ou mettre à jour des locataires sans modifier le code de l'application.
3. Architecture évolutive et sécurisée
- Intégrez rapidement de nouveaux locataires avec un minimum d'efforts.
- Appliquer les politiques spécifiques au locataire (MFA, règles de session, etc.).
- Maintenir un isolement strict des locataires et un accès sécurisé.
- Conçu pour les environnements SaaS et multi-locataires d'entreprise.
Parcours utilisateur : Authentification multi-locataire dans une application .NET
Découvrez une application de gestion de projet SaaS développée sur .NET et utilisée par plusieurs entreprises (locataires) . Chaque locataire possède ses propres utilisateurs et son propre fournisseur d'identité.
Locataire 1 : Acme Corporation (Azure AD)
Michael, employé de la société Acme Corporation, accède à l'application via acme.app.com.
Flux d'authentification :
- Michael saisit l'URL de l'application.
- L'application le redirige vers miniOrange.
- miniOrange identifie le locataire à l'aide du sous-domaine (acme).
- Michael est redirigé vers Azure AD pour l'authentification.
- Il se connecte et effectue l'authentification multifacteur.
- Azure AD envoie la réponse d'authentification à miniOrange.
- miniOrange valide la réponse et connecte Michael à l'application.
- Des rôles spécifiques au locataire, tels que celui de chef de projet, sont attribués.
Résultat:
Michael accède uniquement aux projets, tableaux de bord et données internes d'Acme Corporation.
Locataire 2 : Beta Solutions (Okta)
Emily, une utilisatrice de Beta Solutions, se connecte via beta.app.com.
Flux d'authentification :
- Emily accède à l'application.
- miniOrange détecte le locataire (bêta).
- Elle est redirigée vers Okta pour authentification.
- Après une connexion réussie, Okta envoie la réponse à miniOrange.
- miniOrange valide son identité et la connecte à l'application.
- Les rôles tels que Client_User sont mappés.
Résultat:
Emily a accès uniquement aux données et aux ressources de Beta Solutions.
Locataire 3 : Gamma Technologies (Google Workspace)
David, de Gamma Technologies, se connecte en utilisant son adresse e-mail professionnelle.
Flux d'authentification :
- David saisit son adresse e-mail sur la page de connexion.
- miniOrange identifie le locataire en fonction du domaine de messagerie.
- Le redirige vers Google Workspace.
- Après l'authentification, Google envoie la réponse à miniOrange.
- miniOrange valide son identité et le connecte à l'application.
- Des rôles spécifiques à chaque locataire sont attribués.
Résultat:
David accède à l'environnement de Gamma Technologies avec une isolation complète des données.
Résultat
Après la mise en œuvre de l'authentification unique multi-tenant dans les applications .NET , les organisations obtiennent les résultats suivants :
- Une expérience de connexion fluide et personnalisée pour chaque locataire.
- Intégration plus rapide des nouveaux clients sans modification du code.
- Réduction des demandes d'assistance et des problèmes de connexion.
- Contrôle centralisé de l'authentification et des politiques des locataires.
- Isolation des données renforcée et sécurité accrue.
- Une architecture d'identité évolutive pour la croissance des solutions SaaS.
Ressources additionnelles
-
SSO .NET et provisionnement des utilisateurs SCIM
-
Authentification unique (SSO) .NET et authentification à deux facteurs
-
Prise en charge multi-IDP .NET
-
SSO .NET SAML