Nouvelles Chroniques d'Amethyste

Penser au Sens, pas au Verbe

Tutoriel Azure Access Panel

Poster un commentaire

Azure Access Panel est un service Azure AD important.

Il s’agit d’un portail Web administré qui permet à un utilisateur ayant un compte dans AAD, organisationnel ou pas, de lancer des applications dans un contexte SSO.

Il n’est pas indispensable d’avoir un abonnement Azure pour accéder au panneau.

 

Le service est entièrement géré par l’administrateur qui contrôle la gestion des droits ainsi que la liste des applications proposées. Toutefois l’utilisateur peut disposer d’un contrôle limité sur certaines options.

Je propose de partir à la découverte de ce service.

2015-05-26_21-50-16

Programme du jour:

  • Architecture et présentation du service
  • Test des 3 modes d’authentification (fédération, mot de passe, SSO existant)
  • Service de découverte d’application
  • Quelques fonctionnalités plus cosmétiques

J’ai également écrit un article sur Azure AD Application Proxy qui n’est pas abordé ici:

https://amethyste16.wordpress.com/2015/06/01/tutoriel-azure-ad-application-proxy/

Prérequis

Vous devez avoir déployé un tenant Azure AD. Si vous ne savez pas le faire:

https://amethyste16.wordpress.com/2014/08/19/provisionner-un-repertoire-azure-active-directory-waad/

 

Le service est pour l’essentiel accessible à toutes les offres, mais certaines fonctionnalités ne sont disponibles qu’en PREMIUM.

Note: Vous pouvez basculer un AD en PREMIUM en version d’essai gratuite pour 90 jours. Dans ce cas il ne faudra pas oublier d’accorder une licence PREMIUM à l’admin global du tenant, autrement il ne verra pas apparaître les nouvelles fonctionnalités sur le portail.

Architecture

Le portail est accessible sur l’application MyApps.

On peut accéder à Access Panel via cette url:

http://myapps.microsoft.com

 

Un même compte peut ainsi disposer de plusieurs Access Panel (AP)  dans différents domaines. Comment fait t’on pour se connecter à un AP particulier?

Voici l’extrait de la fenêtre principal de l’AP d’un compte qui peut être un compte Azure AD, Microsoft (hotmail)…

2015-05-27_16-14-59

Sur la droite du nom du compte on a une petite fenêtre déroulante qui affiche la liste des tenants où le compte est déclaré. On n’a plus alors qu’à choisir le sien et afficher l’AP correspondant.

Un formulaire de connexion sera demandé avec ou non du MFA (Multi Factor Authentication), puis un écran similaire à celui-ci apparaît:

2015-05-26_21-50-16

 

Le menu du haut est variable selon l’offre AAD. On peut en PREMIUM ajouter un logo institutionnel sur l’écran.

Chaque tuile donne accès à une application sans avoir à se ré authentifier. Les applications peuvent être institutionnelles ou bien choisies dans une galerie qui à ce jour compte environ 2400 applis.

Dans l’offre FREE (gratuite) vous pourrez disposer jusqu’à 10 applications. Les offres BASIC et PREMIUM n’ont pas de limites.

 

Les navigateurs raisonnablement récents supportent sans problème My Apps. Lors de la première authentification et selon le modèle d’authentification supporté par l’application, il pourra être installé un plugin: Access Panel Extension. Il est disponible pour IE, Chrome et Firefox.

Pour les périphériques mobiles, on trouve en général une appli dans le store qui évite d’avoir à saisir une url et installer un plugin dans le navigateur. Rechercher sur « Microsoft My Apps« .

Pour IPad:

https://itunes.apple.com/us/app/my-apps-windows-azure-active/id824048653?mt=8

Pour IOS:

https://play.google.com/store/apps/details?id=com.microsoft.myapps

 

Authentification

Le service supporte 3 modèles d’authentification:

  1. SSO par fédération
  2. SSO basé sur des mots de passe
  3. Authentification unique existante

Note: Cela ne signifie pas qu’ils soient tous supportés par l’application Saas cible.

 

Plusieurs cas de figure peuvent alors se présenter.

Application Office 365

Si l’utilisateur dispose d’une licence Office 365, alors les applications Office apparaîtront automatiquement dans My Apps. C’est par exemple mon cas:

2015-05-26_23-31-27

Applications configurées avec un SSO par une fédération

Azure AD n’a pas les hashes des mots de passe et donc renvoie l’authentification à Windows Server Active Directory.

Un utilisateur ne pourra voir ces applications, que si un administrateur lui a explicitement donné l’accès. Dans ce modèle, saisir le login sera suffisant.

Applications configurées avec un SSO par mot de passe

Tous les utilisateurs de l’AD verront automatiquement ces applications. C’est dans ce mode que le plugin Access Panel Extension sera nécessaire et automatiquement installé. Ce plugin sert à gérer de manière sécurisée l’authentification.

Lors de la première connexion, le login/mot de passe de l’application Saas sera stocké de façon sécurisée dans Azure. L’utilisateur n’aura plus besoin de les ressaisir, son compte Azure AD suffira, le service se chargera de gérer l’authentification.

Deux cas peuvent se présenter:

  1. L’administrateur gère les informations d’authentification
    Le cas de figure est par exemple celui où l’administrateur n’autorise que la connexion au compte Twitter de l’entreprise. Il ne souhaite évidemment pas distribuer les informations de login. L’utilisateur se connectera, mais ne verra jamais les credentials.
    Cette opération peut être laborieuse pour un grand nombre d’utilisateurs. En offre PREMIUM on a la possibilité de connecter non pas des utilisateurs, mais un groupe d’utilisateurs.
  2. L’utilisateur gère les informations d’authentification
    Dans ce cas on permet à l’utilisateur de se connecter à l’application Saas avec son compte personnel.

Authentification unique existante

C’est l’application Saas qui gère son SSO.

Démonstration des modèles d’authentification

Testons les 3 modèles d’authentification. On se limitera au cas des applications de la galerie. Les applications organisationnelles nécessitent des actions côté code et ce scénario sort du cadre de cet article. Je proposerai un exemple concret dans un article dédié.

 

Note: La procédure d’installation est globalement la même pour toutes les applications de la galerie, mais les étapes et la nature des configurations requises peuvent varier.

On trouvera dans cette documentation, une documentation spécifique pour quelques unes des applications les plus courantes:

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

Premier exemple (SSO avec mot de passe)

Le tenant Azure AD héberge les comptes suivants:

2015-05-26_23-55-46

On se rend dans le menu APPLICATIONS:

2015-05-26_23-57-12

On clique sur ADD AN APPLICATION:

2015-05-26_23-58-16

Dans le cadre de cet article nous n’allons démontrer que la deuxième option: ADD AN APPLICATION FROM THE GALLERY. C’est la plus simple.

D’autres articles sont en préparation pour les deux autres, mais il y a déjà ceux là qui traitent de la première option:

https://amethyste16.wordpress.com/2014/11/07/lauthentification-ws-federation-avec-azure-windows-active-directory/

https://amethyste16.wordpress.com/2014/08/23/mettre-en-place-lauthentification-avec-visual-studio-2013-partie-ii/

 

 

Comme le suggère le libellé, nous allons injecter dans le panel une application pré-packagée trouvée dans une galerie déjà très riche:

2015-05-26_23-59-40

Il y a 2482 applications prépackagées et la liste évolue régulièrement. La qualité du packaging est variable, cela dépend beaucoup des capacités de l’appli ciblée.

 

On sélectionne Twitter (utiliser le filtre en haut à droite).

2015-05-27_00-01-24

Faire OK. L’installation démarre.

2015-05-27_00-02-38

 

L’étape 1 a été préconfigurée par l’assistant. La plupart du temps on n’a pas besoin de modifier ce choix. Si je clique sur le bouton de configuration toutefois:

2015-05-27_00-06-24

Il s’affiche la liste des modèles d’authentification supportés par l’application Saas parmi les 3 modèles supportés.

Gardons le choix par défaut et passons à l’étape 2:

2015-05-27_00-38-45

 

On sélectionne All Users puis on clique sur le bouton 2. Les utilisateurs du tenant apparaissent.

Un clic sur un utilisateur active la commande ASSIGN:

2015-05-27_00-40-20

On clique dessus.

2015-05-27_00-41-27

C’est ici que l’on décide si les credentials sont saisis par l’utilisateur ou bien l’administrateur. Disons que l’administrateur gagne:

2015-05-27_00-42-46

On fait la saisie puis OK.

Et hop:

2015-05-27_00-44-10

 

Note: Une autre option consiste à choisir plusieurs comptes à la fois. Cette fois la popin est la suivante:

2015-05-27_00-46-06

 

Si je me rends sur My Apps:

2015-05-27_00-47-15

Note: les menus GROUPES et APPROBATIONS apparaissent parce que je suis en PREMIUM. Dans cette offre on peut autoriser un utilisateur à demander d’ apparaître dans un groupe géré par d’autres utilisateurs.

On est en mode SSO par mot de passe, le plugin devra être installé, mais si ce n’est pas déjà le cas:

2015-05-27_00-49-13

Cliquer sur le bouton et suivez les instructions.

Autrement vous accédez directement à la page Twitter.

 

Poursuivons notre exploration. Si on sélectionne l’AAD dans le portail et que l’on se rend dans l’onglet APPLICATIONS:

2015-05-27_09-33-34

L’application Twitter est bien là. Cliquons dessus, on arrive sur le panneau bien connu:

2015-05-27_00-02-38

Le panneau de contrôle propose des options de surveillance de l’activité:

2015-05-27_09-35-38

Un click sur VIEW USAGE REPORT montre ceci:

2015-05-27_09-38-38

C’est un avertissement de confidentialité expliquant que l’on accède à des données personnelles. Que vous continuez ou pas dépend de la politique de confidentialité de votre organisation.

Un autre onglet intéressant est CONFIGURE:

2015-05-27_09-43-23

La partie RULES concerne le la configuration MFA qui sort du cadre de cet article.

Un administrateur peut restreindre l’accès à certaines application à un groupe d’utilisateurs ou au contraire l’interdire.

 

Note: Ces dernières fonctionnalités font partie de l’offre PREMIUM. En offre FREE on aurait juste:

2015-05-27_09-47-55

Ni gestion de groupes, ni configuration.

Un exemple d’authentification fédérée

Un des objectifs de cet exemple, outre le voir fonctionner au moins une fois, est de montrer également deux choses:

  1. Ce modèle est complexe à configurer
  2. L’application Saas doit avoir été explicitement prévue pour cela
  3. En conséquence, toutes les applications ne le prennent pas en charge

Dans tous les cas, la configuration côté Saas ne s’invente pas, vous aurez besoin d’une documentation que fournit en général l’éditeur. Dans mon exemple c’est Microsoft qui me l’a fournit:

https://msdn.microsoft.com/library/azure/dn308593.aspx

Prérequis

Salesforce sera notre exemple. C’est une des applications où le packaging a été le mieux soigné.

Avant de commencer il faudra ouvrir un compte d’essai gratuit ici:

https://developer.salesforce.com/signup

 

On doit ensuite établir un domaine Salesforce. La procédure est ici:

https://help.salesforce.com/HTViewHelpDoc?id=domain_name_setup.htm&language=en_US

 

Note: basculez l’interface Salesforce en anglais depuis la configuration du profil, se sera plus facile! Pour info, Setup est en haut à droite de l’écran. Mais il existe une version française du tutoriel précédent.

 

N’oubliez pas d’activer le domaine. Il ne suffit pas de l’avoir réservé.

Configuration

Nous allons ajouter Salesforce:

2015-05-27_10-08-28

 

On constate que le packaging est différent de celui de Twitter:

2015-05-27_10-09-25

Si je sélectionne la première étape de l’assistant de configuration:

2015-05-27_10-10-27

Les 3 modèles d’authentification sont supportés. Nous choisissons le premier proposé:

2015-05-27_10-28-02

On entre l’url de son locataire Salesforce sous le format:

Domain est le domaine Salesforce créé lors des prérequis. Si vous l’avez oublié, Domain Management/My Domain:

2015-05-27_12-35-32

 

On continue. L’écran suivant dépend de l’url qui a été saisie.

 

Avec l’url développeur:

2015-05-27_10-41-28

Avec l’url entreprise (et c’est celle qui servira pour les tests):

2015-05-27_10-42-59

Il suffit de suivre les étapes.

On télécharge le certificat.

On se connecte à son locataire Salesforce et dans Setup/Administer/Security Controls on repère le menu Sign-On settings:

2015-05-27_10-54-13

Le panneau suivant s’ouvre:

2015-05-27_10-55-08

On clique sur EDIT:

2015-05-27_10-56-23

On coche SAML Enabled et on fait SAVE.

SAML est un des 3 formats de jetons que supporte Azure AD:

  1. Saml-P
  2. OAuth
  3. WS-Federation

On va ensuite configurer le SSO:

2015-05-27_10-57-48

On clique sur NEW, puis renseigne le formulaire:

2015-05-27_10-59-56

 

  1. Saisir le nom SSO, par exemple le nom de sa société. Cette saisie renseigne également la zone API Name (2)
  2. Automatiquement renseigné
  3. Copier ISSUER URL trouvée dans le panneau de configuration du portail Azure
  4. Mettre ici une des urls du tenant Salesforce (j’ai mis celle entreprise)
  5. Récupérer le certificat *.cer téléchargé dans l’étape qui précède
  6. Sélectionner Assertion contains User’s salesforce.com username
  7. Sélectionner Identity is in the NameIdentifier element of the Subject statement
  8. Copier REMOTE LOGIN URL trouvée dans le panneau de configuration du portail
  9. Choisir HTTP Redirect

 

Faire SAVE.

On reste sur le portail Salesforce, mais on se rend dans le menu Administer/Domain Management/My Domain:

2015-05-27_11-13-35

Repérer ceci:

2015-05-27_11-14-49

Cliquer sur EDIT:

2015-05-27_11-15-49

Cocher le nom de son jeu de sa configuration SAML (amethyste dans mon cas) et décocher les autres éventuels. On peut aussi s’amuser à charger un logo.

On fait ensuite SAVE.

Revenons maintenant ici:

2015-05-27_10-42-59

Confirmer en cochant la case puis OK. On retourne ici:

2015-05-27_10-09-25

On passe à l’étape 2:

2015-05-27_11-24-44

Les informations se trouvent chez Salesforce.

Aller dans My Settings:

2015-05-27_11-30-26

 

Se rendre dans Personal/Reset My Security Token:

2015-05-27_11-31-34

On clique sur le bouton et on attend le mail qui contient les informations nécessaires pour remplir le formulaire.

On fait OK.

2015-05-27_11-41-04

On confirme et cette étape est terminée!!!!!!

 

On est prêt pour la dernière étape de l’assistant. On l’a déjà fait avec l’exemple Twitter d’ailleurs.

2015-05-27_11-45-04

On fait une assignation pour chaque utilisateur concerné:

2015-05-27_11-47-17

Faire OK. Il faut ensuite attendre une dizaine de minutes pour que ce soit prêt.

Côté My Apps:

2015-05-27_12-00-47

Et on valide que tout fonctionne en cliquant sur la tuile Salesforce.

Exemple d’authentification unique existante

Mon exemple sera Github.

2015-05-27_12-57-16

On sélectionne Existing SSO.

2015-05-27_12-58-36

On saisit cette url:

https://github.com/login

C’est l’url qui amène vers la page de connexion. On fait OK.

On assigne ensuite les utilisateurs, il s’affiche:

2015-05-27_13-01-57

On clique YES. Il ne reste plus qu’à tester:

2015-05-27_13-03-20

L’Octocat est bien là! Cliquons dessus. On constate que l’on arrive sur le formulaire de login de l’application.

Dans ce contexte on n’a pas de SSO, mais c’est très variable selon la qualité du packaging. Parfois le formulaire se remplit automatiquement par exemple, parfois on ne le voit pas.

Découverte d’applications

Ce service est disponible avec les 3 offres AAD.

Il permet à l’utilisateur de découvrir les applications cloud utilisées par les utilisateurs. Il peut ensuite décider si cela vaut la peine de les pousser dans MyApps.

Le service est basé sur un agent à déployer sur les postes des utilisateurs. On accède ensuite à un portail qui affiche le résultat de cette surveillance:

http://appdiscovery.azure.com

L’agent ne surveille que les noms de domaine des requêtes Http et Https, absolument rien de plus.

Autres configurations

Dans l’espace CONFIGURE de chaque application on trouve:

2015-05-29_01-04-23

 

Côté Panel:

2015-05-29_01-05-56

Une tuile Obtenir plus d’application est ajouté:

2015-05-29_01-07-20

On n’a qu’à cliquer sur la tuile de l’appli pour l’ajouter à son Panel.

 

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