Tutoriel : Configurer Azure Active Directory B2C avec Datawiza pour fournir un accès hybride sécurisé
Dans ce tutoriel, découvrez comment intégrer Azure Active Directory B2C (Azure AD B2C) à Datawiza Access Proxy (DAP), qui permet l’authentification unique (SSO) et le contrôle d’accès précis, ce qui aide Azure AD B2C à protéger les applications héritées locales. Cette solution permet aux entreprises de passer d’une instance héritée à Azure AD B2C sans réécrire d’applications.
Prérequis
Avant de commencer, vérifiez que vous disposez des éléments suivants :
- Un abonnement Microsoft Entra
- Si vous n’en avez pas déjà un, vous pouvez obtenir un compte Azure gratuit.
- Un locataire Azure AD B2C lié à votre abonnement Azure
-
Docker, une plateforme ouverte pour le développement, l’expédition et l’exécution d’applications, est nécessaire pour exécuter DAB
- Vos applications peuvent s’exécuter sur n’importe quelle plateforme, par exemple une machine virtuelle et du matériel nu
- Une application locale que vous allez faire passer d’un système d’identité hérité à Azure AD B2C
- Dans ce tutoriel, DAB est déployé sur le même serveur que l’application
- L’application s’exécute sur localhost : 3001 et DAP dirige par proxy le trafic vers les applications via localhost : 9772
- Le trafic vers l’application atteint d’abord DAB, puis est dirigé par proxy vers l’application
Description du scénario
L’intégration Datawiza inclut les composants suivants :
-
Azure AD B2C : le serveur d’autorisation pour vérifier les informations d’identification de l’utilisateur
- Les utilisateurs authentifiés accèdent aux applications locales à l’aide d’un compte local stocké dans l’annuaire Azure AD B2C
- Datawiza Access Proxy (DAP) : le service qui passe l’identité aux applications via des en-têtes HTTP
- Datawiza Cloud Management Console (DCMC) : Une console de gestion pour DAB. L’interface utilisateur DCMC et les API RESTful aident à gérer les configurations DAB et les stratégies de contrôle d’accès
Le diagramme d’architecture suivant illustre l’implémentation.
- L’utilisateur demande l’accès à une application locale. DAB dirige par proxy la demande vers l’application.
- DAP vérifie l’état d’authentification de l’utilisateur. À défaut de jeton de session ou en cas de jeton non valide, l’utilisateur accède à Azure AD B2C pour l’authentification.
- Azure AD B2C envoie la demande de l’utilisateur au point de terminaison spécifié lors de l’inscription de DAP dans le locataire Azure AD B2C.
- DAP évalue les stratégies d’accès et calcule les valeurs d’attribut dans les en-têtes HTTP transférés à l’application. DAP peut appeler le fournisseur d’identité pour récupérer des informations afin de définir les valeurs d’en-tête. DAP définit les valeurs d’en-tête et envoie la demande à l’application.
- L’utilisateur est maintenant authentifié et a accès à l’application.
Intégration avec Datawiza
Pour intégrer votre application locale héritée avec Azure AD B2C, contactez Datawiza.
Configurer votre locataire Azure AD B2C
Accédez à docs.datawiza.com pour :
Découvrir comment inscrire votre application web dans un locataire Azure AD B2C et configurer un flux utilisateur d’inscription et de connexion. Pour plus d’informations, consultez Azure AD B2C.
Configurer un flux utilisateur dans le Portail Azure.
Notes
Vous aurez besoin du nom du locataire, du nom du flux utilisateur, de l’ID client et du secret client lorsque vous configurerez DAB dans la console DCMC.
Créer une application sur la console DCMC
Créez une application et générez une paire de clés de
PROVISIONING_KEY
etPROVISIONING_SECRET
pour cette application dans la console DCMC. Voir Datawiza Cloud Management Console.Configurez le fournisseur d’identité avec Azure AD B2C. Voir, Partie I : Configuration d’Azure AD B2C.
Exécuter DAB avec une application basée sur un en-tête
Vous pouvez utiliser Docker ou Kubernetes pour exécuter DAP. Utilisez l’image Docker pour que les utilisateurs puissent créer un exemple d’application basée sur un en-tête.
En savoir plus : Pour configurer l’intégration de DAP et de l’authentification unique, consultez Déployer Datawiza Access Proxy avec votre application
Un exemple d’image Docker docker-compose.yml file
est fourni. Connectez-vous au registre de conteneurs pour télécharger les images de DAP et l’application basée sur des en-têtes.
Déployer le proxy d’accès Datawiza avec votre application.
version: '3' services: datawiza-access-broker: image: registry.gitlab.com/datawiza/access-broker container_name: datawiza-access-broker restart: always ports: - "9772:9772" environment: PROVISIONING_KEY: ############################# PROVISIONING_SECRET: ############################# header-based-app: image: registry.gitlab.com/datawiza/header-based-app container_name: ab-demo-header-app restart: always environment: CONNECTOR: B2C ports: - "3001:3001"
L’authentification unique avec Azure AD B2C doit être activée pour l’application basée sur un en-tête.
Ouvrez un navigateur, puis entrez
http://localhost:9772/
.Une page de connexion à Azure AD B2C s’affiche.
Passer des attributs utilisateur à l’application basée sur un en-tête
DAB obtient les attributs utilisateur auprès du fournisseur d’identité et les transmet à l’application avec un en-tête ou un cookie. Après avoir configuré les attributs utilisateur, la coche verte s’affiche pour les attributs utilisateur.
En savoir plus : passer des attributs utilisateur, comme l’adresse de messagerie, le prénom et le nom, à l’application basée sur un en-tête.
Tester le flux
- Accédez à l’URL de l’application locale.
- DAP vous redirige vers la page que vous avez configurée dans votre flux utilisateur.
- Sélectionnez la base de données dans le fournisseur d’identité.
- À l’invite, entrez vos informations d’identification. Si nécessaire, incluez un jeton d’authentification multifacteur Microsoft Entra.
- Vous êtes redirigé vers Azure AD B2C, qui transfère la demande de l’application à l’URI de redirection de DAP.
- DAB évalue les stratégies, calcule les en-têtes et envoie l’utilisateur à l’application en amont.
- L’application demandée s’affiche.