L'objectif de la session est de dresser dans un premier temps un état des lieux sur les solutions Microsoft jusqu'alors utilisées pour publier vos applications Web. Nous nous focaliserons ensuite sur Web Application Proxy (WAP), nouveau rôle dans Windows 2012 R2 pour la publication d'application Web. Nous aborderons les objectifs et fonctionnalités de WAP, le tout illustré par des démos.
Speakers : Franck Heilmann (Microsoft), Eric Detoc (Microsoft France)
Comment publier vos applications Web avec Windows Server 2012 R2
1.
2. Comment publier vos applications
Web avec Windows Server 2012
R2
Eric Detoc, Franck Heilmann
Escalation Engineers
Microsoft
franckh@microsoft.com
edetoc@microsoft.com
Sécurité
3. Agenda
• Concepts sur la publication d’application
Web
• Etat des lieux TMG / UAG
• Web Application Proxy (WAP)
• Questions - Réponses
#mstechdays
Sécurité
5. Grands Concepts de la publication
• Rendre accessible les applications internes pour les
clients externes (nomades, partenaires)
• Offrir:
– Pré-Authentification / Validation de l’identité
– Délégation (SSO)
– Translation de liens
– Terminaison SSL
#mstechdays
Sécurité
7. TMG - fin de vie
• TMG n’est plus disponible à la vente depuis
1er décembre 2012
• La dernière mise à jour est SP2 Rollup 4
• Arrêt du support
– Phase principale: 14 Avril 2015
– Phase étendue: 14 Avril 2020
#mstechdays
Sécurité
8. UAG - fin de vie
• UAG ne sera plus disponible à la vente à
partir du 1er Juillet 2014 (Software Assurance 1er
Janvier 2014).
• La dernière mise à jour est SP4
• Arrêt du support
– Phase principale: 14 Avril 2015
– Phase étendue: 14 Avril 2020
#mstechdays
Sécurité
9. Phases de support
• http://support.microsoft.com/gp/lifepolicy
#mstechdays
Sécurité
11. Pourquoi WAP ?
– Nécessité de répondre aux challenges de la fédération
d’identité (intégration forte avec ADFS et AD)
– Evolution des standards de sécurité (focus client)
– Nouveaux besoins Utilisateurs et ITPro (BYOD,
Contrôle d’accès,…)
– Rendre le proxy indépendant du client (pas de code
client ou autre JavaScript,…)
– Rendre le proxy neutre par rapport à l’application
publiée (Exchange 2007 versus 2013,…)
#mstechdays
Sécurité
13. WS2012 R2 AD + AD FS + WAP: proposition de
valeur
Organizations can connect to SaaS
applications running in Windows Azure,
Office 365 and 3rd party providers
Enhancements to AD FS include simplified
deployment and management
Organizations can
federate with partners
and other organizations
for seamless access to
shared resources
Firewall
Conditional access with multi-factor
authentication is provided on a perapplication basis, leveraging user
identity, device registration & network
location
Users can register their devices to gain access to
corporate data and apps and single sign-on
through device authentication
Published
applications
15. Reverse Proxy Web
• Publication sélective d’applications Web
– Rendre accessible certaines applications Web, voire
certaines parties (paths) seulement de ces applications
• Terminaison SSL
– Le trafic Web entrant (HTTPS uniquement) ne peut
directement atteindre le serveur publié
• HTTP ou HTTPS peuvent être utilisés entre
WAP et l’application Web
#mstechdays
Sécurité
16. Reverse Proxy Web (suite)
• Pré-authentification AD FS ou de type “Pass
through”
• Le rôle ADFS Proxy est inclus dans WAP
– Utilisé pour publier le serveur ADFS
– Dans Windows 2012 R2, le rôle AD FS Proxy n’est plus
disponible comme rôle seul
• Translation du nom d’hôte
– Le nom de domaine externe peut être différent du nom interne:
E.g. https://portal.contoso.com http://portal/
– La translation du nom d’hôte n’est actuellement supporté que sur
#mstechdays les entêtes HTTP.
Sécurité
17. Pré-requis pour le Single Sign On (SSO)
• Les applications publiées doivent authentifier les flux
avec des Claims ADFS ou avec la méthode Kerberos
(authentification Windows intégrée -IWA)
• Un “relying party” (RP) doit être créé au niveau ADFS
pour l’application publiée
#mstechdays
Sécurité
18. Flux du SSO
• Le client s’authentifie sur ADFS
• Une fois l’authentification réussie, le client reçoit un token WAP
ainsi qu’un cookie SSO ADFS
• WAP vérifie que le token WAP est valide et bascule si
nécessaire en KCD (Kerberos constrained delegation) avec
l’application Web publiée
#mstechdays
Sécurité
19. Authentification et autorisation ADFS
• Les RP créés dans ADFS pour chaque application sont
utilisés pour définir et appliquer des stratégies
d’authentification et d’autorisation
• Les accès des devices et des utilisateurs peuvent être
restreints en fonction de nombreuses conditions, comme:
–
–
–
–
#mstechdays
Le type de Device (iOS, Windows OS, Android)
Workplace Joined ou non-Workplace Joined
Lieu de l’utilisateur et du device (interne , externe)
Appartenance à un groupe
Sécurité
21. Installation
• Prérequis: Windows 2012 R2 ADFS
• WAP est un service disponible depuis le rôle
« accès distant »
• Configuration post-installation par nœud
• Administration centralisée depuis la console
gestionnaire d’accès distant
#mstechdays
Sécurité
22. Certificat de l’ADFS Proxy
• Demandé lors de la configuration post-install
• Ce certificat doit inclure:
– Le FQDN du serveur ADFS, par exemple adfs.contoso.com
– Enterpriseregistration.contoso.com si Workplace Join utilisé
• Les certificats de type Wildcard (*.contoso.com)
ou avec des Subject Alternate Names (SAN) sont
supportés
#mstechdays
Sécurité
23. WAP/AD FS : qui fait quoi ?
Web Application Proxy
AD FS
• Prendre en charge et évaluer les
requêtes Web entrantes
• Déclencher la pré-authentification
• Gérer la délégation KCD
• Effectuer la translation des
entêtes HTTP
• Faire le proxy entre le serveur
ADFS et l’application Web publiée
• Héberger le stockage de la
configuration WAP
• Gérer l’authentification de
l’utilisateur
• Authentification Multi-facteur
• Appliquer les autorisations en
fonction des stratégies définies.
• Changement des mots de passe
• Personnalisation du formulaire de
logon
#mstechdays
Sécurité
24. WAP et http.sys
• WAP n’utilise pas de “Listener” lié à une IP/port comme TMG & UAG
• WAP effectue des réservations dans http.sys pour les FQDN et Paths
publiés
• WAP utilise Server Name Indication (SNI) pour déterminer le certificat
serveur à envoyer au client lors du handshake SSL
#mstechdays
Sécurité
25. Cartes réseaux
• WAP n’a aucune connaissance de la
configuration réseau du système
• WAP supporte une, deux ou plusieurs cartes
réseaux
• Support de IPv6 et IPv4
#mstechdays
Sécurité
26. Positionnement de WAP dans le réseau
• Dans la DMZ
• Comme “pont” entre la DMZ et le LAN
• Dans le LAN directement
• Remarque:
– Terminer la connexion SSL avant WAP n’est pas supporté
#mstechdays
Sécurité
27. Répartition de charge
•
Les serveurs WAP connectés au même ADFS forment un groupe et
partagent la même configuration (applications publiées, etc …)
Web Application Proxy
AD FS
Web Application Proxy
AD FS Config.
Store
AD FS
Web Application Proxy
•
Aucune affinité cliente n’est requise: un utilisateur peut se connecter
indifféremment à chaque serveur du groupe. Les considérations habituelles
concernant l’affinité cliente au niveau de l’application Web demeurent
•
WAP n’offre pas de dispositif d’équilibrage de charge nativement. Toute
solution de Load Balancing fonctionnant correctement avec HTTP.SYS
conviendra (NLB, Hardware Load Balancer)
#mstechdays
Sécurité
28. Joindre ou ne pas joindre le domaine ?
• La question clé est de savoir si vous allez avoir besoin de KCD
• KCD est requis pour mettre en place de la SSO avec une
application Web non “claims aware” (utilisation de IWA dans ce
cas)
• Mise en place KCD:
– WAP doit appartenir à un domaine, ainsi que le serveur Web
– L’application Web doit utiliser l’authentification Windows intégrée
– Un relying party trust “non claims” doit être créer au niveau ADFS
• Notes:
– Il est possible de créer un domaine/forêt dédié à WAP puisque la KCD crossdomaine/forêt est maintenant supportée (http://technet.microsoft.com/enus/library/hh831477.aspx)
– Possibilité d’utiliser des Read-Only DCs pour plus de sécurité
#mstechdays
Sécurité
29. Certificat de l’application Web publiée
• Chaque application Web publiée doit avoir un certificat
SSL correspondant au nom public (par ex
sharepoint.contoso.com)
• Les certificats de type Wildcard ou avec SAN sont
supportés (par ex: *.contoso.com)
• Il est conseillé d’utiliser des certificats d’autorités
publiques pour faciliter les accès depuis des devices non
gérés (tablette à la maison par ex)
#mstechdays
Sécurité
33. Autre Scénarii de Publication
Microsoft Dynamics CRM : Pré-Authentification avec ADFS pour les
clients Web
Workplace Join
Web Application proxy peut être utilisé pour publier la fonctionnalité “Workplace Join”. Les utilisateurs externes
ayant enregistré leur(s) device(s) à l’organisation bénéficieront du SSO et du 2ème facteur d’authentification
Les administrateurs peuvent limiter l’accès aux ressources uniquement pour les devices enregistrés
Work Folders
Nouvelle solution de synchronisation de fichiers permettant à l’utilisateur de synchroniser ses fichiers entre
des ressources internes et son device quel que soit l’endroit où il se trouve
Web Application Proxy permet la publication de ces ressource (work folders) et applique l’authentification
multi-facteur
36. Stockage de la configuration
•
La configuration de WAP est stockée dans ADFS
#mstechdays
Sécurité
37. WEB APPLICATION PROXY (WAP)
Scénario : Flux HTTP relatifs à la publication d’une application Web
« Claims Aware» avec Pré-authentification ADFS
#mstechdays
Sécurité
38. Flux vers une “claims aware” web app
Requête initiale du client
Authentification ADFS
Demande du authToken WAP au serveur ADFS
Validation du authToken par WAP
Authentification sur l’application publiée
#mstechdays
Sécurité
41. Flux vers une “claims aware” web app
Requête initiale du client
Authentification ADFS
Demande du authToken WAP au serveur ADFS
Validation du authToken par WAP
Authentification sur l’application publiée
#mstechdays
Sécurité
44. Internet
Perimeter network
AD FS SSO
AD FS SSO
https://adfs.contoso.com
302
AD FS SSO
User
Internal network
https://adfs.contoso.com
WAP
302
https://lob.contoso.com
http://lob
LOB
45. Flux vers une “claims aware” web app
Requête initiale du client
Authentification ADFS
Demande du authToken WAP au serveur
ADFS
Validation du authToken par WAP
Authentification sur l’application publiée
#mstechdays
Sécurité
46. Internet
Perimeter network
AD FS SSO
AD FS SSO
AD FS SSO
User
Internal network
https://adfs.contoso.com
GET
Edge
token
Edge
Policies
https://adfs.contoso.com
WAP LOB
GET
Edge
token
https://claimsapp.contoso.com
http://lob
Application
Policies
48. Flux vers une “claims aware” web app
Requête initiale du client
Authentification ADFS
Demande du authToken WAP au serveur ADFS
Validation du authToken par WAP
Authentification sur l’application publiée
#mstechdays
Sécurité
50. Flux vers une “claims aware” web app
Requête initiale du client
Authentification ADFS
Demande du authToken WAP au serveur ADFS
Validation du authToken par WAP
Authentification sur l’application publiée
#mstechdays
Sécurité
51. Internet
Perimeter network
AD FS SSO
AD FS SSO
AD FS SSO
User
https://adfs.contoso.com
Internal network
https://adfs.contoso.com
Edge
Policies
GET
LOB
token
WAP LOB
GET
LOB
token
https://claimsapp.contoso.com
Edge Cookie
http://lob
Application
Policies
54. Conclusion
• WAP est le nouveau produit Microsoft pour
la publication d’application Web.
• WAP supporte la stratégie BYOD
• WAP s’intègre dans une stratégie globale
d'accès distant (RDI, VPN, DA, …)
• Le groupe produit est preneur de tout
feedback.
#mstechdays
Sécurité
55.
56. Donnez votre avis !
Depuis votre smartphone sur :
http://notes.mstechdays.fr
De nombreux lots à gagner toutes les heures !!!
Claviers, souris et jeux Microsoft…
Merci de nous aider à améliorer les Techdays !
#mstechdays
Sécurité