Nouvelles Chroniques d'Amethyste

Penser au Sens, pas au Verbe

Tutoriel Azure AD Application Proxy

Poster un commentaire

Dans l’article de découverte d’Azure Access Panel, nous avons publié des applications déployées sur le cloud.

Un autre cas d’usage est celui de l’application à demeure comme un Intranet qui n’est pas directement accessible depuis Internet. Azure AD peut être utilisé rendre disponible et permettre par exemple aux utilisateurs itinérants de s’y connecter, mais de façon contrôlée et sécurisée. C’est Azure AD Application Proxy.

 

Azure AD Application Proxy met à disposition un reverse proxy directement sur votre tenant Azure AD. Il est hébergé par Azure et bénéficie de tout ce qui le caractérise et en particulier l’élasticité.

 

Note: Avant de pouvoir refaire les démonstrations proposées, vous devrez créer un tenant Azure AD en offre PREMIUM. On dispose d’une offre d’essai de 90 jours.

Il ne faut pas oublier de donner une licence à votre admin global, sinon les écrans PREMIUM n’apparaissent pas dans le portail.

Dans le schéma qui suit, on a déployé des applications derrière une DMZ qui l’isole d’Internet.

2015-05-29_20-11-21

On ne fait pas un accès direct à l’application, mais un accès à travers un proxy provisionné par Azure AD. Un proxy, rappelons le, est un service qui donne une image distribuée d’un autre service.

Côté réseau interne on installe des connecteurs soit sur un serveur dédié, soit sur le serveur qui héberge les applications. Une relation d’approbation est établie entre les connecteurs et le proxy via l’échange de certificats. On dit que l’on active les connecteurs.

Ce sont les connecteurs qui contactent le proxy, il n’y a pas d’accès inbound à travers la DMZ, ce qui limite fortement les risques en matière de sécurité.

Une adresse publique est créée selon le format:

https://<nom appli>-<domaine>.msapproxy.net

C’est la seule url qui est visible depuis Internet et c’est celle sur laquelle les clients se connectent. Cette url donne donc une accessibilité contrôlée. On peut parfaitement désactiver le proxy. Elle est également contrôlée par Azure AD ce qui ajoute une couche d’authentification.

Note: il est possible d’utiliser son domaine à la place de cette url

 

Si vous avez besoin de plus d’informations sur l’architecture en particulier comment ce service est sécurisé, lire ce livre blanc en téléchargement ici:

https://www.microsoft.com/en-us/download/confirmation.aspx?id=36391

C’est le document « An overview of Azure Active Directory« ).

Mise en place de l’environnement de test

Mon environnement de test n’est pas on premises, mais sur Azure. J’ai créé un réseau local sur lequel on été rattachées deux VM: AzureProxyAD et ServeurWeb.

2015-05-30_20-02-30

AzureProxyAD est un serveur Windows 2012 R2 sur lequel nous installeront le connecteur. On pourrait installer deux serveur pour avoir de la haute dispo.

Il faudra configurer le pare feu du serveur conformément aux prérequis détaillés ici:

https://msdn.microsoft.com/en-us/library/dn768214.aspx

 

ServeurWeb est le serveur qui héberge le site.

J’ai créé un site rapide sur le port 80 à la place du site par défaut avec une unique page HTML, mais on peut parfaitement garder le site par défaut.

Les deux serveurs sont sur le même réseau, on peut donc naviguer sur le site depuis le serveur avec les connecteurs via l’IP interne, mais pas l’adresse en *.cloudapp.net.

Activer Application Proxy

Se rendre dans le panneau CONFIGURE de votre tenant Azure AD et rechercher:

2015-05-29_09-55-01

On bascule à ENABLED, puis on fait SAVE.

Installer le connecteur

On a ensuite besoin de déployer un connecteur Azure AD Application Proxy sur son réseau entreprise. Ce connecteur est le composant chargé de se connecter à Azure AD Application Proxy qui est lui déployé sur Azure.

On télécharge l’assistant d’installation en cliquant sur DOWNLOAD NOW.

2015-05-29_10-07-12

Lire le texte encadré en rouge, puis télécharger.

 

Sur AzureProxyDemo.

  • Installer d’abord Visual C++ 2012 Redistributable que l’on trouve ici:

http://www.microsoft.com/download/details.aspx?id-30679

  • Installer le connecteur téléchargé précédemment

2015-05-29_11-09-34

On saisit un compte AAD qui est Global Admin ET pour lequel l’authentification double facteur n’est pas activée.

Le compte doit de plus être associé à un locataire Azure AD. Je ne pourrais pas par exemple utiliser amethyste16@hotmail.com, un compte Microsoft, car on ne sait pas à quel tenant il appartient.

 

2015-05-29_11-16-32

On saisit le mot de passe et on laisse l’installation se faire.

 

Si on regarde les services lancés on trouvent les deux surlignés:

2015-05-29_17-54-58

WAPCSvc est le proxy.

On a jamais besoin de mettre à jour soit même ce service, le travail est fait en push par Microsoft par l’intermédiaire du service WAPCUpdateSvc.

 

L’assistant se charge d’enregistrer le proxy auprès d’Azure AD. On le vérifie depuis le portail en se rendant comme tout à l’heure dans CONFIGURE.

Si on clique sur le gros bouton vert VIEW CONNECTORS on voit s’afficher:

2015-05-29_17-59-30

Le connecteur est bien activé. Tout va bien!

 

Un dernier détail.

Le service va générer pour nous une adresse publique, celle que les utilisateurs utiliseront. Le proxy devra la mapper à l’adresse interne du site. On ne peut pas faire un mapping vers une IP. On devra donc soit créer une entrée dans le DNS, soit ajouter dans le fichier hosts du serveur AzureProxyAD. Je vais choisir cette solution et j’aurai par exemple cette ligne:

10.0.0.5 Intranet

 

On peut se déconnecter de ce serveur maintenant.

Publier l’application

On lance la procédure habituelle pour publier une application dans le Panel:

2015-05-29_11-32-38

On choisit la dernière option: Publish an application that will be accessible from outside your network 

Note: Cette option n’est pas affichée si on n’est pas en PREMIUM.

2015-05-29_14-34-07

On donne un nom.

On saisit l’url interne par laquelle on accède à l’application. Etant donné le fichier hosts ce sera:

http://Intranet

On choisit une méthode d’authentification parmi les deux options:

  1. Azure Active Directory
    Seuls les utilisateurs authentifiés dans Azure AD accèderont à l’application
  2. Passthrough
    Tout utilisateur connaissant l’url publique de l’application y accèdera. C’est le genre d’option que l’on choisira pour juste publier des API

Et on valide.

 

La dernière étape consiste à affecter les utilisateurs. On a déjà vu comment faire.

Il faut juste se souvenir que l’application ne sera visible dans le panel, que si l’utilisateur a reçu une licence PREMIUM. Je préconise de l’accorder à un groupe et y placer l’utilisateur. Souvenez vous que la version d’essai de l’offre est limitée à 100 licences.

 

Il ne reste plus qu’à tester:

2015-05-29_22-33-08

Un clic sur la tuile ouvre l’application interne via un canal sécurisé.

 

Je termine sur une remarque. Si vous allez dans l’onglet CONFIGURE de l’application, vous retrouvez les paramétrages:

2015-05-29_22-37-02

Bibliographie

Publicités

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s