LEX, the definitive LDAP Explorer ! [1/4]

Je viens de commencer une série d’articles sur un outil tout à fait extraordinaire découvert il y a peu, au hasard d’échanges informels avec quelques spécialistes LDAP, j’ai nommé LDAP Explorer, ou LEX de son petit nom. Non, il ne s’agit pas d’une option permettant de jouer Lex Luthor dans un jeu en ligne pour mettre sa raclée à Superman, mais bel et bien du meilleur explorateur LDAP du marché !

C’est quoi LEX ?

Comme de nombreux consultants IAM, j’ai forcement dans ma boite à outils un explorateur LDAP. Comme je suis très feignant (oui, je suis feignant), je faisais comme tout le monde, c’est-à-dire :

  • ADSIEDIT fourni par Microsoft et gratuit lorsque j’ai besoin d’un browser LDAP coté Active Directory. Outil développé à la « va vite » et extrêmement basic mais accessible depuis la MMC.
  • LDAP Administrator de la société Softerra et payant lorsque j’ai besoin d’un browser LDAP à utiliser avec un autre service LDAP qu’Active Directory. Outil très puissant, la référence sur le marché depuis de nombreuses années.

Oui bien sûr, il est tout à fait possible d’utiliser LDAP Administrator pour administrer Active Directory, mais il manque quelques fonctions, disons spécifiques à Active Directory et qui rendent cet outil intéressant mais pas un must to have pour l’administration Active Directory (nous reviendrons sur ce point un peu plus loin).

Oui, il est aussi possible d’utiliser des alternatives « gratuites » à LDAP Administrator, mais là on rentre dans un monde rempli de projet SourceForge plus ou moins aboutis, avec des trucs sous JAVA, ce qui me donne des boutons très très rapidement. De plus, lorsque je travaille avec un outil, je veux dire vraiment « travailler », je ne veux pas dépendre d’un bout de code développé par un stagiaire un soir de pleine lune, mes outils professionnels, je préfère les payer et être tranquille. Chacun sa méthode, mais j’ai tendance à me méfier des produits « gratuits ».

C’est là où LEX intervient et m’apporte le meilleur des deux mondes !

En effet, LEX est un explorateur LDAP, tout ce qu’il y a de plus classique, mais il possède la caractéristique de contenir des fonctions très avancées en ce qui concerne l’utilisation et la gestion d’Active Directory. Et bientôt (nous y reviendrons) l’outil pourra également gérer un annuaire Azure Active Directory. Cela m’intéresse fortement…

Premiers pas avec l’outil LEX

Vous pouvez télécharger l’outil ici : http://ldapexplorer.com/en/download.htm

Vous pouvez trouver une description des fonctions principales ici : http://ldapexplorer.com/en/features.htm

Et consulter la documentation ici : http://ldapexplorer.com/en/manual.htm

Installation de LEX et première connexion LDAP

Cet article est basé sur la version 1.5 Build 003 de LEX.

Commençons donc l’installation,à cette étape, rien de bien compliqué, on est sur du bon vieux next / next / next…

Au premier lancement, vous êtes invité à renseigner la clé du logiciel ou à utiliser LEX en mode évaluation :

La différence principale qui existe entre le mode « trial version » et le mode « sous licence » est que seule une version sous licence peut modifier l’annuaire LDAP, en version d’évaluation, vous ne pouvez réaliser que des visualisations. La suite de cet article est réalisée avec la version sous licence, permettant d’exploiter pleinement l’ensemble des fonctionnalités.

Une fois lancé, sur le premier écran, il est alors possible de se connecter à des services LDAP sur le réseau public ou de paramétrer une connexion à un LDAP en interne, dans notre exemple nous allons nous connecter à un contrôleur de domaine Active Directory :

Il est alors possible de définir soi-même le serveur sur lequel se connecter :

Ou d’utiliser le bouton « Detect » qui va rechercher des serveurs LDAP ou des Contrôleurs de domaine AD sur votre réseau :

Ici, on détecte immédiatement les avantages de LEX lorsque l’on veut manipuler AD, il va pouvoir s’adapter à un contexte AD, proposer des informations puis des fonctions spécifiques à Active Directory :

Les autres onglets de la mire de connexion sont assez classiques, il s’agit de pouvoir par exemple filtrer les classes d’objet que l’on veut voir afficher dans l’explorateur LDAP.

Usage de LEX et options spécifiques à Active Directory

Rentrons maintenant dans le vif du sujet, ce qui saute immédiatement aux yeux, c’est que le produit est très « moche » !

Pour information (nous reviendrons plus loin sur cet aspect) une nouvelle version de LEX est en cours de préparation avec notamment une IHM totalement revisitée, avec encore plus de fonctions spécifiques à Active Directory :

Mais pour l’instant, continuons avec la version actuelle.

La sélection d’un objet permet d’afficher les attributs de cet objet dans la zone à droite, ici, nous voyons que les attributs sont typés via des icônes différentes, ce qui fait une première différence à comparaison des éditeurs LDAP classiques, avec l’habitude, si l’on recherche par exemple l’attribut « objetSID », on visualise immédiatement l’icône qui correspond à cet attribut :

Les options d’affichage sont complètes, avec :

Un affichage classique :

Un affichage sur le DN :

On remarque des petits détails, mais qui facilitent la vie de l’administrateur ou de l’architecte AD, ici pas besoin de vérifier un attributs LDAP pour vérifier si le compte est activé ou non, un compte désactivé affichera une icône spécifique, c’est vraiment sur ce type de fonction que LEX se distingue de la concurrence, il apporte une « intelligence » d’affichage Active Directory au lieu de se contenter d’afficher des objets au format LDAP :

Il est également possible de filtrer les objets affichés sans passer par la case requête LDAP, directement via un menu déroulant, typiquement, la liste des objets utilisateurs désactivés est très simple à afficher :

Avec la barre de filtre des attributs, on peut spécifier les attributs affichés : uniquement les attributs avec des valeurs, les attributs multi-value ou non – il existe aussi un système de filtre avancé sur les attributs affichés :

Bien évidemment, les attributs modifiables sont éditables depuis l’explorateur LDAP :

Un bon exemple des particularités de LEX par rapport à un éditeur LDAP classique est la gestion de l’attribut « nTSecurityDescriptor ». Cet attribut contient la liste des ACE (AccessControlEntry) posés sur l’objet, pour faire simple, c’est ce que vous voyez dans l’onglet sécurité de l’objet. Cet attribut n’est pas affiché dans ADSIEDIT, car Microsoft considère que l’onglet Sécurité suffit au bonheur des administrateurs :

Peu de personnes le savent, mais ces informations sur les ACEs sont stockées au sein de l’objet lui-même, dans cet attribut. Si l’on requête cet attribut depuis un explorateur LDAP classique, on reçoit une valeur en binaire ; inexploitable. LEX a donc intégré un convertisseur hexadécimal et un parseur afin de présenter l’attribut et le rendre éditable :

C’est tout bonnement génial.

Un autre très bon exemple des caractéristiques avancées de LEX est l’attribut « userAccountControl ». Quand on requête cet attribut via un explorateur LDAP classique, voilà ce que l’on peut trouver :

L’attribut userAccountControl est en fait construit avec une somme de valeurs qui décrivent certaines options sur le compte utilisateur, par exemple le fait qu’un utilisateur doit changer son mot de passe à la prochaine ouverture de session est contrôlé par cet attribut.

Pour comprendre comment cet attribut est construit et à quoi il peut bien servir, je vous conseille la lecture de ces articles :

https://blogs.technet.microsoft.com/askpfeplat/2014/01/15/understanding-the-useraccountcontrol-attribute-in-active-directory/

https://msdn.microsoft.com/fr-fr/library/ms680832(v=vs.85).aspx

https://support.microsoft.com/fr-fr/help/305144/how-to-use-the-useraccountcontrol-flags-to-manipulate-user-account-pro

A nouveau LEX se démarque en présentant non pas la valeur brute de l’attribut mais une interface permettant de paramétrer individuellement les différents paramètres de comptes, le calcul de la valeur finale (=la valeur de l’attribut via LDAP) sera fait automatiquement par LEX avant enregistrement des choix de l’administrateur au niveau de l’attribut :

Comme nous venons de le voir, LEX est bien plus qu’un explorateur LDAP, il intègre des fonctions qui lui permette quasiment de se substituer à la console ADUC !

Dans la suite de cette série d’articles, nous irons encore plus loin dans la découverte de LEX, croyez-moi, vous n’êtes pas au bout de vos surprises…

Conférence LDAP à Bruxelles les 19 et 20 Octobre 2017

Une conférence exceptionnelle aura lieu à Bruxelles les 19 et 20 Octobre prochains. Il s’agit d’une conférence dédiée à LDAP, et je dirais même à Open LDAP et tous ses dérivés. Le panel de speakers est très impressionnant et le programme me semble de qualité.

Les anciennes conférences étant de qualité, il n’y a pas de raison que cela change cette année 😉

Pour vous inscrire, c’est [ ICI ]

Fournir un véritable service d’annuaire pour les organisations utilisant Google G Suite

La solution de Google, Google G-Suite est une solution très utilisée aux USA, notamment pour son coût extrêmement faible à destination des petites organisations par rapport à la concurrence. Ensuite, c’est une affaire de goût et d’habitude, personnellement, j’ai toujours eu des « difficultés » avec les interfaces proposées par Google, mais c’est un autre débat !

Un des problèmes majeurs que rencontrent les clients Google G-Suite provient du manque de fonctionnalités autour de la gestion des identités, en effet, Google ne propose pas un véritable service d’annuaire en mode SaaS, on sent bien que les fonctions sont uniquement là pour supporter l’usage de G-Suite et point. Il est donc très compliqué pour une organisation de se passer d’un Active Directory local, et généralement les organisations synchronisent leurs informations provenant de l’annuaire Active Directory vers le Google Directory via les outils Google Cloud Directory Sync et G Suite Password Sync. Cette approche ne convient pas aux organisations désirant justement éliminer l’usage d’Active Directory et s’affranchir des frais de gestion et d’administration des serveurs locaux.

Spécialement conçu pour les organisation ayant besoin de beaucoup d’agilité au niveau de la gestion de leur annuaire, JumpCloud propose via un partenariat avec Google de fournir un véritable service d’annuaire pour les client Google G-Suite et propose donc la brique manquante aux clients Google.

Au travers de ce lien « Getting Started with G Suite User Import, Provisioning and Sync« , vous trouverez toutes les informations techniques pour relier votre Directory JumpCloud avec G-Suite. Globalement, la tactique consiste tout d’abord à importer vos utilisateurs depuis l’annuaire Google pour récupérer l’existant, puis de paramétrer JumpCloud comme annuaire faisant autorité sur la gestiond es comptes G-Suite. De cette façon, vous conserverez le meilleur des deux mondes: un annuaire central avec JumpCloud, le provisionning des utilisateurs dans l’annuaire Google et surtout la possibilité d’utiliser vos comptes utilisateurs JumpCloud pour plein d’autres choses (comptes sur les machines clientes, annuaire LDAP central, utilisation d’un service radius, etc.) – vous pourrez même utiliser JumpCloud comme source d’authentification unique via les fonctions de fédération de Google + JumpCloud tel que décrit dans ce schéma macroscopique:

L’apport d’un Directory as a Service tel que JumpCloud à Google G-Suite représente la brique manquante à Google pour proposer une solution de bout en bout, permettant une gestion « moderne » des utilisateurs et des droits d’accès tout en ouvrant vers les possibilités avancées proposées par un DIRaaS.

Si vous êtes un client Google G-Suite, je vous conseille vivement la lecture de cette vidéo démontrant en une dizaine de minutes comment se réalise l’intégration entre JumpCloud et Google G-Suite, étonnant de simplicité:

De plus si vous voulez évaluer gratuitement JumpCloud, vous pouvez utiliser ce [ lien ]

Active Directory Replication Status Tool: Back to the Future !

A l’heure d’AWS, d’Azure AD, de l’IDaaS & autre joyeuseté « Cloudifiante », il est totalement incongru de voir à quel point l’IT interne des entreprises est pauvrement géré, c’est même terrifiant… Surtout quand nous parlons d’Active Directory !

Je viens de finir une mission chez un grand compte (bien sur je garderais pour moi le nom du coupable par charité intellectuelle et conscience professionnelle…) sur la gouvernance et la sécurisation de leur annuaire Active Directory: et oui ! je fais encore de l’Active Directory ! J’en fais même encore beaucoup, mais disons que je sélectionne les missions.

Le pauvre responsable Active Directory n’en peut plus, je dois dire qu’il a fort à faire… vous vous voyez jongler avec 3 parpaings en équilibre sur un château de cartes avec un bandeau sur les yeux ? vous voyez l’idée ? c’est son pain quotidien… Je ne suis pas sur que la direction générale est bien conscience du danger, mais bon c’est un autre problème, moi perso, j’ai présenté mes recommandations au CTO, il en fera bien ce qu’il veut.

Pendant cette mission, il a fallut comprendre pourquoi la réplication AD ne fonctionnait pas, ou peu… Alors oui, on peut faire du « repadmin /showrepl * /csv > replsd.csv » à tour de bras et s’amuser avec Excel pour filtrer tout cela; oui, il y a plein de moyens de superviser la chose; oui. Mais le pauvre responsable Active Directory voulait juste un tool tout simple qui le sauve de la bankrupt les soirs de pleine lune…

C’est alors que je me suis rappelé d’un tool Microsoft, et il se trouve que ce software a été mis à jour il y a quelques mois: Active Directory Replication Status Tool (ADREPLSTATUS) – téléchargeable [ ICI ]

Il s’agit d’un outil vraiment sympa, avec une interface graphique remaniée qui permet d’analyser de façon très précise les réplications AD – les options de filtre sont vraiment très nombreuses et les résultats exportables dans un fichier CSV (pour les fans d’Excel 😉

La barre de menu est très claire:

Les options permettent de lancer un scan ciblé:

et de visualiser très simplement les résultats afin de permettre un diagnostic:

Bref, un outil vraiment sympa, mis à jour pour Windows Server 2016, et bien sur, plus le modèle de réplication est complexe, plus il est utile !

Bons tests de votre côté !

Une nouvelle vidéo expliquant les protocoles utilisables dans le Cloud dans un contexte DIRaaS

JumpCloud vient de mettre en ligne une vidéo très intéressante exposant les différents services et fonction que doit proposer un annuaire Cloud de type DIRaaS, en listant les différents protocoles utiles dans ce type de mécanismes.

L’idée est de bien comprendre comment migrer l’ensemble des services ou interactions de services habituellement portés par un annuaire local (LDAP, Radius, etc…) vers un annuaire de type Cloud et d’assimiler la liste des protocoles utiliser.

A la vue de cette vidéo, on se rend bien compte de la puissance du système, obtenir l’ensemble des services habituelles d’un Active Directory ou d’un OpenLDAP sous forme de service SaaS.

Retrouvez mes présentations lors de l’évènement aOS Grenoble !

Le 22 mai 2017, de nombreux experts IT se sont réunis sur Grenoble afin de présenter différents concepts autour des nouvelles technologies et des tendances informatiques actuelles. Cet évènement était organisé par la communauté aOS. Les sessions couvraient des sujets aussi variés que le développement dans Azure, la téléphonie sur IP ou les infrastructures Cloud. Pour ma part, j’ai réalisé une première présentation sur la Digitalisation des environnements de travail (Workplace Digitalization) et une deuxième sur la gestion des identités dans le cloud.

Vous pouvez retrouvez ces deux présentations sur ce lien docs.com:

 

Azure Information Protection: ce n’est pas encore très clair pour tout le monde !

En début de semaine, j’ai longuement échangé avec un client à propos des solution de chiffrement de documents disponibles sur le marché. Il m’est apparu que les choses étaient très confuses dans son esprit (désolé Olivier 😉 ).

Il y a beaucoup de confusion entre les différentes possibilités offertes par les multiples fournisseurs qui se sont positionnés sur ce marché. Bien évidemment, l’utilisation de plus en plus massive des solutions Cloud, que ce soit au niveau de l’email, des intranets ou du stockage de documents rend cette approche quasi obligatoire, car la sécurité périmétrique ne sert plus à rien en terme de protection de la donnée ou de protection de la propriété intellectuelle.

Dans l’ancien monde, le monde « on-premises », Microsoft fournissait déjà une solution nommée « Active Directory RMS », permettant de protéger (chiffrer) les documents Office et les emails Outlook produits par l’entreprise. Cette solution était assez efficace techniquement mais rendait les échanges inter-entreprises (avec un partenaire commercial par exemple) assez complexes à réaliser.

L’arrivée de Azure Information Protection (ex Azure RMS) a ouvert de nouveaux horizons en termes de protection des données et de l’information, mais il s’avère que nombre de clients ne comprennent pas bien certains aspects. L’objectif de ce post est de rapidement fournir quelques pistes afin de mieux comprendre les aspects AIP côté client (=device).

Petit rappel, la fonction AIP peut s’acquérir via les plans EMS 3 & 5 de Microsoft:

Le plan EMS E3 propose globalement (je fais simple…) les fonctions qui étaient anciennement portées par Azure RMS, à savoir la technologie de chiffrement elle-même – le plan EMS E5 rajoute globalement (je fais simple à nouveau…) les fonctions de classification – Ici, le challenge de Microsoft sera de lier au maximum ces deux technologies, permettant à l’utilisateur de choisir une classification, qui protégera automatiquement (en fonction de cette classification) les documents ou emails.

Rappelons également que la technologies AIP/RMS permet de protéger du contenu produit dans des technologies Microsoft (docx, pptx, email, etc.) mais aussi de protéger des documents qui ne sont pas produits avec des outils Microsoft (txt, PDF ou Autocad par exemple). Ce lien très utile décrit les différents formats pris en compte par AIP, que ce soit au niveau du module de protection ou au niveau du module de classification.

Lorsque d’un destinataire va recevoir un contenu protégé par AIP, il devra utiliser un « client » AIP/RMS lui permettant de faire le lien entre une authentification (=son identité) et l’application des règles d’accès au contenu décidées par le créateur du contenu (accès en lecture, en écriture, possibilité de copier/coller ou pas, etc.).

La technologie AIP/RMS nécessite donc un « client » côté device afin de déchiffrer un contenu. A ce niveau il y a globalement deux cas possibles pour déchiffrer et accéder au contenu selon les règles d’accès décidées par l’auteur du contenu:

Ce lien décrit les différentes possibilités en croisant les différents formats de fichiers avec la plateforme du device (=son OS) – ici par exemple, les différents clients AIP/RMS utilisables sur sur plateforme Windows en fonction des formats de fichiers:

De plus, vous retrouverez sur ce lien, la possibilité de télécharger Microsoft Azure Information Protection Viewer ( AZInfoProtectionViewer.exe ) pour Windows qui permettra a un client de consommer (=ouvrir) un contenu protégé par AIP/RMS même si il ne possède pas lui même une application intégrant un client AIP/RMS natif:

En conclusion, il faut bien assimiler plusieurs éléments:

  • AIP permet de protéger du contenu « Microsoft » mais aussi des documents hors format Microsoft (PDF, txt, etc.)
  • AIP fonctionne sur Windows, Mac, Android & iOS (avec quelque différences subtiles entre ces différents OS) – à noter aucun fournisseur tiers ne s’est lancé dans une aventure AIP sur Blackberry, mais il exite des possibilité pour supporter des clients AD RMS sur Blackberry
  • AIP intègre des fonctions de chiffrement & classification mais aussi d’autres fonctions extrêmement intéressantes comme le tracking des documents protégés par exemple
  • AIP permet d’échanger assez simplement du contenu protégé avec des personnes en dehors de l’organisation (au contraire de AD RMS)
  • La personne qui consomme le contenu, c’est à dire la personne qui accède au document/email protégé n’a pas besoin de licence AIP ni besoin d’avoir une application native AIP/RMS, elle peut télécharger le client AIP Viewer pour accéder au contenu protégé

Enfin, cette technologie évolue très très rapidement côté Microsoft, en effet, il s’agit d’une technologie clé pour permettre l’adoption des solutions Cloud tout en protégeant l’accès à l’information de l’organisation.

Si vous avez des questions ou des besoins sur AIP, n’hésitez pas à me contacter. J’ai créé dernièrement un nouveau Workshop d’une demi-journée ou une journée dédié à AIP et qui permet de comprendre comment fonctionne cette technologie et les différentes possibilités offertes pour une organisation.

McAfee propose un jeu en ligne pour sensibiliser à la sécurité

L’éditeur McAfee, fidèle à son fondateur, propose un petit jeu en ligne bien décalé pour sensibiliser les personnes aux problématiques de sécurité, gestion des mots de passe, protection des documents, etc.

Le GamePlay ne vous tiendra pas en haleine pendant des heures, mais le concept est assez amusant – qq copies d’écran:

Le jeu est accessible en ligne [ ICI ]

Annonce de la fusion des portails d’administration pour les fonctions AIP (Azure RMS & Labeling)

Une annonce majeure de la part de Microsoft, attendue depuis longtemps !

Microsoft va proposer une interface de gestion commune des fonctions de protections (ex Azure RMS) et des fonctions de Labeling (ex Secure Island) ainsi qu’un client unifié pour les postes et périphériques mobiles.

Bien sur, cette nouvelle interface de gestion sera disponible depuis la version V2 du portail d’administration Azure: https://portal.azure.com

La stratégie est maintenant de considérer la protection comme une option de la fonction de classification. Je milite pour cette approche depuis longtemps, car c’est la seule possible d’un point de vue structurel & organisationnel – il faut comprendre que la protection RMS n’a pas de sens sans la fonction de classification, car l’utilisateur créateur de contenu est le seul chaînon capable de « définir » la protection via le choix d’une classification (classification au sens large du terme).

Les fonctions de classification et de protection des données non structurées sont absolument essentielles dans le cadre de l’adoption des technologies de Cloud Public. Il s’agit donc de se préparer au déploiement de ce type de fonction, c’est absolument essentiel.

Plus d’information sur le blog EMS: https://blogs.technet.microsoft.com/enterprisemobility/2017/04/26/azure-information-protection-unified-administration-now-in-preview/

Et sur ce lien: https://aka.ms/DanPlastina

 

Rejoignez nous à l’événement aOS de Grenoble le 22 mai prochain !!!

Rejoignez nous à l’événement aOS de Grenoble le 22 mai prochain dans les locaux SUPINFO Grenoble !!! [Plan d’accès ICI] Cet événement est véritablement exceptionnel, car c’est le premier événement aOS sur Grenoble, et il n’y en aura pas d’autre avant un bon moment !

Pour ma part je parlerais de deux sujets passionnants:

(1) Une première session à 14h sur la Digitalisation du Workplace où j’évoquerais l’utilisation des objets connectés en liaison avec l’usage des espaces collaboratifs via les technologies Microsoft, au programme: Office 365, Exchange Online, Gestion des salles de réunion, Objets connectés, etc.

(2) Une deuxième session à 15h sur la gestion des identités dans le cloud en compagnie de Maxime Rastello: Ce sera l’occasion de comprendre et de comparer les 3 solutions présentées comme leader par le Gartner sur le sujet IDaaS ainsi que de comprendre les différences entre les technologies d’IDaaS et de DIRaaS.

Le programme du 22 mai:

Pour vous inscrire: https://www.eventbrite.fr/e/billets-journee-aos-grenoble-22-mai-2017-32376068693?aff=es2

 

Le National Institute of Standards and Technology (NIST) met à jour ses recommandations sur « Digital Identity Guidelines »

Le National Institute of Standards and Technology (NIST) est un institut américain délivrant régulièrement des documents de spécifications et des recommandations à l’attention de l’ensemble des autres organisations gouvernementales américaines. Même si les documents publiés ne sont pas exclusivement orientés sur les aspects sécurité (comme par l’exemple l’ANSSI en France) de nombreuses recommandations traitent de ces sujets, et de nombreux documents sont publiés pour aider les organismes américains à l’implémentation de solutions fiables et standardisées.

Le NIST a récemment publié un brouillon (Draft) de trois documents importants traitant de Digital Identity:

Document SP 800-63A: Digital Identity Guidelines – Enrollment and Identity Proofing Requirements

 

 

Document SP 800-63B: Digital Identity Guidelines – Authentication and Lifecycle Management

 

 

Document SP 800-63C: Digital Identity Guidelines – Federation and Assertions

 

 

Ces trois documents, même à l’état de brouillon, sont une véritable mine d’or (et je pèse mes mots…) pour toute personne travaillant dans la sécurité informatique et dans le domaine de la gestion des identités. Le premier document donne par exemple les grandes lignes en ce qui concerne la gestion des identités de façon globale, le deuxième réalise un focus sur les méthodologies d’authentification et fournit des conseils sur les règles de sécurité liées aux mots de passe alors que le troisième traite particulièrement des technologies de Fédération d’Identité.

Ce que j’apprécie particulièrement dans ces documents, c’est qu’ils ne sont pas uniquement un recueil bête et méchant de bonnes pratiques mais liste de façon exhaustives les technologies associées et les standards du moment – par exemple le document traitant de la fédération d’identité ne se contente pas de recenser les bonnes pratiques à suivre autour de la fédération mais liste l’intégralité des termes à connaître et à utiliser – le grand intérêt est que du coup on peut choisir de considérer le document du NIST comme document de référence sur les termes à employer, et dans un monde aussi confus que la Fédération d’Identité par exemple, cela ne fait pas de mal de s’appuyer sur un lexique de référence…

Bref, c’est un peu long, mais c’est à lire absolument…

Quel intérêt à utiliser Ping Identity avec Azure AD Premium ?

 

Il y a quelques mois, Microsoft annonçait son partenariat avec Ping Identity pour renforcer son offre Azure AD Premium:

Mais cette annonce coïncidait avec l’annonce quelques semaines auparavant de la mise en preview d’une fonction de App Gateway au niveau d’Azure AD Connect (fonctionnel mais toujours en preview à ce jour). Ainsi, beaucoup de mes clients et contacts me demandaient au fil des semaines quel pouvait être l’intérêt pour eux d’utiliser Ping Identity alors que Microsoft fournissait maintenant une App Gateway permettant non seulement de publier des applications on-prem au niveau du portail Azure AD Premium sans l’obligation d’ouvrir des ports au niveau des firewall mais également de jouer des authentification sur l’annuaire Active Directory local sans déployer ADFS. Nous allons essayer de répondre à cette question dans cette article.

Déjà, revenons quelques instant sur l’offre Ping Identity. Ping Identity est l’entreprise leader dans le domaine des solutions de fédération d’identité pour les entreprises. Cette entreprise américaine a vraiment été un des pionniers en la matière, principalement pour les organisations avec des besoins complexes ne pouvant pas être couverts avec ADFS et Shibboleth. Mais depuis environ 18 mois, les offres Ping Identity ont été progressivement dépassées par les solutions de IDentity as a Service, qui rappelons le, propose notamment un système de fédération multi-tiers en mode SaaS. Ping Identity a essayé de réagir sur le segment IDaaS, mais leur architecture produit n’a pas convaincu, laissant le champs libre à Microsot, Centrify et Okta sur le marché IDaaS. Il fallait donc régir pour ce leader établi  de la fédération d’identité.

En septembre dernier, Microsoft annonçait donc son partenariat avec Ping Identity:

En parallèle, Microsoft proposa en private preview puis en public review la fonction App Gateway intégrée à Azure AD Connect avec notamment les possibilités suivantes:

  • Fournir un accès aux applications internes sans modification des firewall, des routeurs ou des reverse proxy
  • Sécurisation de l’accès aux applications internes via un mécanisme de « reverse VPN » basé sur la fonction bus d’Azure
  • Publication d’applications web internes utilisant IWA (Integrated Windows Authentication)
  • Publication d’applications Web utilisant « form-based access »
  • Publication d’applications publliées via la fonction Remote Desktop Gateway

Ces avancées notoires permettant nottamment à Microsoft de rattraper son retard sur la fonction Cloud Gateway proposé par Centrify via son offre IDaaS.

Que peut donc me fournir Ping Identity en plus de ces fonctions déjà très intéressantes ?

La raison principale de ce partenariat est de pouvoir traiter des applications web internes utilisant l’authentification de type headers HTTP.

Pour ce, il sera nécessaire d’installer un composant supplémentaire PingAccess au niveau du réseau local, ce composant communiquant avec Azure AD Premium et le connecteur Azure AD Connect:

Pour ce, il est possible directement au niveau de la console Azure AD Premium de publier de telles applications en indiquant quelles seront accédées en passant par le composant PingAccess:

Un des intérêts de cette combinaison est de « contourner » les options de sécurité assez faibles d’une authentification par headers Http en utilisant des APIs Azure spécifiquement développées pour faire communiquer Azure AD Premium et PingAccess: ainsi, il sera possible de définir des règles d’accès et de rôles qui seront transposées et traduites par le composant PingAccess depuis le RBAC Azure:

Quel avenir pour ce partenariat ?

Euhm… bonne question ! Pour ma part je ne suis pas convaincu par le fait que cette fonction sera suffisante a faire décoller le partenariat technologique et commercial, surtout que pour l’instant le modèle de pricing de PingAccess pour Azure AD est assez obscure, Ping Identity n’étant pas spécialement connu pour le côté bon marché de ses produits… (bon, après ce sont de très bons produits, tout se paye). De plus, au travers de mes différentes missions de consulting sur la partie IDaaS, ce type d’authentification (Headers Http) n’étaient pas la priorité des clients…

Un point stratégique important est de comprendre que les offres de IDaaS vont petit à petit éliminer le besoin de solution de fédération d’identité installées localement (ADFS, Shibboleth, Ping, ForgeRock, etc.) et vont remplacer sous forme de service SaaS l’ensemble des composants de fédération. Bien sur, pour des besoins très spécifiques, notamment en ce qui concerne des scénarios complexes dans des grandes entreprises, les passerelles de fédération d’identité installées localement ont encore de beaux jours devant elles, mais dans 5 ou 6 ans ? Pas certain !

Bon, à la fin, cela serait peut-être plus simple si Microsoft rachetait Ping Identity, non ? 😉

Quel avenir pour One Identity ? (ex Quest)

 

Les plus vieux d’entre vous connaissent vraisemblablement l’historique truculent et les tribulations sans fin des actifs de la société Quest Software.

A l’origine cette société a racheté et vendu le produit Toad pour les DBA Oracle dans le monde entier. Toad, véritable vache à lait de la société, a permis à Quest Software de constituer un véritable trésor de guerre, très conséquent (voir très très très conséquent…), permettant à Quest Software de réaliser massivement des acquisitions de sociétés IT et de produits tiers sur le marché des startup américaines, constituant au fil du temps un portfolio impressionnant de produits technologiques destinés aux entreprises. Cette démarche d’acquisition fut à la fois la force et la faiblesse de Quest Software car il n’y avait aucun ciment technologique commun entre les différentes acquisitions aboutissant à un éventail de produits totalement désynchronisés d’un point de vue stratégique et technique.

La solution ActiveRoles a fait partie de ces acquisitions, permettant ainsi à la société de rentrer dans le domaine de la gestion des identités et des accès, notamment en environnement Microsoft. Ensuite, Quest Software a essayé de rationaliser sa stratégie liée à la gestion de l’identité en constituant une « marque » One Identity sensée représenter l’ensemble de la gamme gestion des identités au sein de Quest Software.

S’en est suivi le rachat de Quest Software par DELL, et là, franchement, cela a été un jeu de massacre, les produits non rentables commercialement ont plus ou moins été abandonnés, de nombreuses ressources tant techniques que commerciales sont aller voir ailleurs, et l’activité de la division DELL Software a petit à petit périclité… L’exemple typique est l’abandon d’investissement dans la gamme ex-Vintela, laissant à Centrify le champs libre sur le marché du bridge AD et de la gestion des privilèges sur Unix et Linux. Le nombre de migration ex-Vintela vers Centrify a alors été impressionnant…

DELL a ensuite décidé de rendre sa « liberté » à Quest afin de reprendre du poil de la bête. Désirant certainement modifier sa stratégie, la nouvelle société Quest a ensuite  décidé de se séparer de la division Gestion des Identités, appelée One Identity, afin de constituer une structure juridique indépendante de Quest. Tout ceci est assez surprenant, mais je ne connais pas tous les détails de la « transaction » ni les objectifs cachés de cette décision.

Un nouveau site est en ligne afin de présenter cette nouvelle entité juridique et les activité de One Identity: https://www.oneidentity.com/

 

Ce site web présente les produits historiques de la gamme de Quest Software en ce qui concerne la gestion des identités:

J’avoue que je ne sais plus trop quoi penser de ces produits…ni de leur avenir à moyen terme. De sources sures, les développeurs originels de ces différentes solutions se sont majoritairement fait la malle… Donc…

Quelle est la stratégie globale à moyen et long terme de cette nouvelle entité ?

Quel support technique pour les clients ?

Quel support commercial & technique pour les partenaires ? (abominable à l’époque de Quest Software)

Tout ceci est encore un peu nébuleux pour moi… et je n’ose imaginé ce qu’il en est pour les clients…

Pourtant certains produits, si ils sont véritablement repris en main, modifiés et adaptés aux nouvelles contraintes en terme d’IAM, possèdent un énorme potentiel, je pense notamment au couple Identity Manager +  Active Roles qui pourraient devenir une alternative crédible à MIM dans des grosses PME ou des ETI.

Si cette nouvelle entité possède les moyens de ses ambitions, cela mérite véritablement de garder un œil sur les futures mises à jour de ces produits et de suivre l’évolution de tout ceci dans les prochains mois.

A suivre donc, pour le meilleur ou pour le pire, nous verrons bien  😉

 

40 minutes pour tout comprendre de Microsoft EMS

Microsoft Cloud Platform vient de poster une vidéo de présentation de Microsoft EMS (Enterprise Mobility & Security) extrêmement bien réalisée. La vidéo mêle la présentation globale de chaque module EMS et les enjeux rattachés en termes de productivité ou de sécurité ainsi que des démonstrations techniques extrêmement bien ciblées.

En 40 minutes, cette vidéo permet à chacun de comprendre le positionnement d’EMS et les fonctionnalités principales des différents modules. cette vidéo est tellement simple qu’elle peut même être envoyée à un manager, c’est dire !  😉

L’ensemble des modules est passé en revue, Azure AD Premium, AIP, Conditional Access, etc.

La vidéo est accessible ici:

 

 

Activer une fonction MFA telle que Google Authenticator sur un système Linux ou MacOS

 

L’authentification forte à deux facteurs (MFA) est une solution commune pour sécuriser l’accès aux applications SaaS. Mais il est aussi parfois nécessaire de sécuriser via MFA l’accès aux systèmes qu’ils soient exécutés sur le LAN ou sur une plateforme IaaS telle que Azure ou AWS.

L’idée est ici par exemple de sécuriser via un facteur d’authentification supplémentaire (en plus d’un password) l’exécution d’une sessions SSH sur un système Linux. JumpCloud nous permet de faire cela sur les systèmes Linux et MacOS en utilisant un MFA totalement gratuit et très répendu, Google Authenticator. Je ferais prochainement un tutoriel pour implémenter cette fonction car pour moi ceci est une demande courante de nombreux clients que je rencontre.

En attendant, voici deux vidéos présentant cette fonction sur un système Linux et un système MacOS:

Vidéo sur Linux:

Vidéo sur MacOS:

Okta rachète Stormpath

La nouvelle est tombée hier, la société Okta a réalisé l’acquisition de la société Stormpath. Pour ceux qui ne connaissent pas Strompath, la société propose une solution d’AUTHentification as a Service à destination des développeurs Web.

Attention, on ne parle pas ici d’une solution complète IDaaS comme  le propose déjà Microsoft, Centrify ou Okta, mais d’une brique à destination des développeurs permettant d’intégrer dans des services ou des applications web n’importe quel type d’authentification directement au niveau du code de l’application. Typiquement la solution Stormpath ne propose pas son propre annuaire Cloud (du moins pas du même niveau fonctionnel que Microsoft/Centrify/Okta) mais va permettre d’utiliser de nombreuses sources d’authentification différentes en intégrant au passage des mécanismes d’authentification forte ou de SSO:

Je m’étais intéressé à cette société quand elle avait fournie une Gateway permettant d’utiliser directement dans les applications SaaS un modèle d’authentification basé sur Active Directory ou LDAP:

Un modèle technique extrêmement intéressant axé sur les développeurs mais vraisemblablement un modèle trop réducteur pour résister aux points lourds de l’IDaaS qui commencent à proposer ce type d’API en standard dans leurs propres solutions. Voir par exemple chez Centrify:

Centrify Cloud API Guide: http://developer.centrify.com/site/global/documentation/api_guide/index.gsp
Centrify Cloud API Reference: http://developer.centrify.com/site/global/documentation/api_reference/index.gsp

Reste à savoir la raison de ce rachat de la part d’Okta. Pour moi la raison majeure n’est pas au niveau des APIs d’intégration (Okta a commencé à travailler sur ses propres APIs depuis quelques mois) mais au niveau de la technologie de gateway avec les éléments on-premises tels qu’un annuaire LDAP, Active Directory ou même un ADFS. En effet, sur cette brique majeure pour une entreprise d’une certaine taille, Okta était bien mal équipé… voulant imposer une vision à l’Américaine basée sur une approche pure Cloud Public à ses clients.

A noter, que la plupart des analystes ne sont pas d’accord avec moi et mettent en avant la partie API – voir par exemple: https://techcrunch.com/2017/03/06/okta-stormpath/ – ceci est normal puisque Stormpath est majoritairement connu pour cela… Mais pour moi ce n’est pas la raison principale, à moins que les équipes interne d’Okta aient vraiment fait du mauvais travail depuis quelques mois..

Il sera intéressant de suivre et comprendre comment les technologies Stormpath vont être intégrées à l’environnement Okta… Quelles briques technologiques vont être abandonnées… A suivre…

Comment Microsoft peut il vous accompagner dans votre démarche de certification ou conformité ?

Travaillant actuellement pour une grande organisation internationale désireuse de différentes certifications afin d’atteindre certains principes de conformité, je me suis trouvé pris à parti lors du dernier comité de pilotage. Lors d’une réunion garnie de chefs à plumes, le CISO du client, du haut de son piédestal, de ses certitudes et de son Anglais parfait d’Oxford m’a demandé comment les technologies Microsoft pouvaient aider son organisation dans cette démarche… La question ne m’avait jamais été posée sous cette angle… Bon il faut dire que le personnage n’avait pas l’air super fan des technologies Microsoft, cela sentait le piège… son œil malicieux était vif et brillant…

J’ai travaillé sur de nombreux projets PCI-DSS, des projets ISO, etc… souvent les solutions implémentées en réponse à ces demandes étaient réalisées via un ensemble de technologies différentes: Active Directory, Centrify, principes de moindre privilège, FreeBSD, système d’audit et de tableaux de bord, FIM/MIM, méthodologie BPM, scripts, utilisation de cartes à puce, etc. Jamais un RSSI ne m’avait « attaqué » sous l’angle « moqueur » du tout Microsoft…

Suite à sa demande et à quelques recherches, je suis tombé sur un site web de Microsoft vraiment intéressant proposant une source d’information quasi exhaustive sur le « comment Microsoft me permet d’avancer dans mon projet de Compliance »: https://www.microsoft.com/en-us/trustcenter/compliance/complianceofferings

Tout n’est pas parfait, mais ce site a le mérite d’exister. Il permet en effet de sélectionner les différents type de certification par type ou par région du monde:

Après une brève description de la certification, exemple ici avec ISO27001:

Le site permet d’obtenir tout d’abord des informations concernant les certifications obtenues par les produits ou services Microsoft dans le domaine considéré:

Puis de consulter de nombreuses sources additionnelles:

Bien évidement, en fonction de la certification, les données proposées et la structure de présentations diffèrent quelque peu.

Pour ceux qui recherchent sur la certification PCI-DSS, notamment dans le cadre de l’utilisation des services Azure, Microsoft met à disposition un fichier Excel vous permettant de définir, en fonction des objectifs PCI-DSS, quels sont les éléments sous la responsabilité de Microsoft et quels sont les éléments sous votre responsabilité. Très utile pour structurer son approche conjointe Cloud + PCI-DSS:

Je vous rappelle également l’existence d’un outil souvent méconnu de Microsoft, Security Compliance Manager (SCM), qui est une boite à outils extraordinaire pour ce type de projet – de plus l’outil est totalement gratuit et peut fournir des modèles prêts à l’emploi à utiliser via les GPOs, DSC ou SCCM afin d’appliquer des modèles de « compliance » sur les workstations ou les serveurs. Une nouvelle version de SCM prend d’ailleurs en compte Windows Server 2016 et Windows 10: https://technet.microsoft.com/fr-fr/solutionaccelerators/cc835245.aspx

Bref, une mine d’or pour ceux qui travaillent sur des projet de certification et de conformité.

Et bien oui, Microsoft pouvait bel et bien aider mon RSSI imbus de lui même…

En pièce jointe de cet article, en bonus, je vous ai rajouté un document réalisé par McAfee sur la liste des événements à auditer au sein d’Active Directory dans le cadre d’un projet PCI-DSS. Néanmoins ce document peut s’utiliser dans d’autres projets de conformité ou même dans une démarche toute simple de sécurisation ou de réduction de la surface d’attaque Active Directory: wp-pci-guidance-microsoft-windows-logging

Pour rappel: https://www.microsoft.com/en-us/trustcenter/compliance/complianceofferings

Bonne recherche et bonne lecture !

European Identity Cloud Conference 2017

Comme tous les ans, le cabinet de conseil Kuppingercole organise un évènement Européen centré sur la gestion des identités et le cloud. Cette année, l’EiC se tiendra du 9 au 12 mai 2017 à Munich, en Allemagne.

L’agenda vient d’être mis en ligne, vous le retrouverez [ ICI ]

Certains speakers sont de grande qualité, comme tous les ans Kim Cameron sera de la partie. Je préfère vous prévenir, ce n’est pas donné, mais c’est le prix de l’excellence ? non ? 😉

 

 

RegTechLab délivre un panorama des startups qui comptent dans l’IAM

Le cabinet RegTechLab a réalisé une étude très intéressante, en identifiant 187 startups qui comptent dans le domaine de la gestion des Identités et des Accès sur la scène internationale.

Ils ont catégorisé ces 187 startups en 7 segments:

  • Gestion des attributs

  • Authentification/Autorisation

  • Identity Access Management (IAM)

  • Identité Digitale

  • Identité pour l’Internet des Objets
  • Solution de monitoring
  • Technology Providers

Honnêtement, je trouve la segmentation pas très bien choisie, mais bon, c’est une erreur de jeunesse.

Au final, c’est un travail assez minutieux, il faudrait maintenant que RegTechLab puisse réaliser une étude plus en profondeur de chaque segment, puis de chaque startup.

Vous retrouverez l’intégralité de l’article sur ce lien: https://www.regtechlab.io/the-identity-startup-landscape

 

Meetup MUG à Tours – Microsoft Azure & co

J’anime le 08/02/2017 à 19h sur Tours un meetup sur Microsoft Azure, au programme:

•  Le Cloud – késako

•  IaaS, PaaS & SaaS

•  Microsoft Azure

•  Relation entre Azure et Office 365

•  La gestion des identités dans Microsoft Azure

Venez nombreux sur place, afin d’échanger, discuter Cloud, Azure et nouvelles technologies !

Pour s’inscrire: https://www.meetup.com/fr-FR/Meetup-Mug-Tours/events/235774905/?wt.mc_id=AID541758_QSG_SCL_12885

Merci encore au MUG Tours pour m’accueillir en tant que speaker.

Une vidéo pour rappeler les fondamentaux des différentes sources d’identités utilisables avec Office 365

Cette vidéo ne contient pas une révolution en termes d’informations, mais peut-être utile afin de montrer à un quelqu’un qui débute sur Office 365 les différentes options pour s’authentifier sur ce service en ligne. L’approche très didactique peut aussi être utilisée pour réaliser qq slides de présentation présentant les grandes lignes de la gestion des identités sur Office 365.

Le coussin FreeBSD – je suis Fan !

Bon, le sérieux et le professionnalisme n’empêchent pas de devenir dingue avec des petites choses de la vie… En faisant deux/trois vérifications/recherches sur des éléments de sécurité liés à FreeBSD, je suis tombé par hasard sur le coussin FreeBSD… Franchement, c’est trop fort ! Il m’en faut un absolument.

Il y a même un tuto pour faire le votre – En plus, c’est presque WAF:


 

JumpCloud: un Webinar pour découvrir le DIR as a Service

J’ai déjà réalisé une série d’article pour l’offre Directory as a Service (DIRaaS) de JumpCloud. JumpCloud va bientôt réaliser un Webinar le 26 janvier pour présenter les concepts liés au DIRaaS et bien sur l’offre JumpCloud.

Si vous planifiez d’utiliser des services cloud publics ou si vous en utilisez déjà, ce séminaire pourra fortement vous intéresser.

Inscription au séminaire: http://go.jumpcloud.com/webinar-secure-modern-office-no-active-directory.html

ITcast: Episode 38 – MS Cloud Summit, Global Azure Bootcamp et identités

Pour ceux qui ne connaissent pas encore ITcast (http://itcast.io/), il s’agit d’un podcast audio animé par la fine équipe Maxime Rastello & Pascal Sauliere – voir ici pour pour les auteurs: http://itcast.io/a-propos/

ITcast passe en revue deux fois par mois l’actualité IT & communautaire IT. J’ai eu la joie de participer au dernier épisode, merci encore à Maxime & Pascal pour leur invitation !

Pour lire le podcast: http://itcast.io/podcast/episode-38-ms-cloud-summit-global-azure-bootcamp-identites/

Directory as a Service (DIRaaS) : Découverte de JumpCloud [4/4]

Directory as a Service (DIRaaS) : Découverte de JumpCloud [4/4]

Au travers de ce quatrième et dernier article, nous allons découvrir comment utiliser l’annuaire JumpCLoud comme un LDAP as a Service.

Activation et paramétrages de base du service « LDAP service »

Tout d’abord, il faut activer la fonction, pour ce, il faut se rendre dans la section SETTINGS et activer la fonction via le bouton ON/OFF :

Une fois que la fonction est activée, cela génère un « Organization ID », cet ID est utilisé pour identifier l’instance LDAP de l’organisation au niveau du service JumpCloud, une connexion vers cet ID sera renvoyé au niveau de la branche de notre organisation. En effet, chaque entité cliente de JumpCloud utilise le même annuaire LDAP mais avec des branches complètement indépendantes. Dans notre exemple, notre branche sera :

o=585322a6bc0b5b5c277062ee,dc=jumpcloud,dc=com

Il faut ensuite créer un compte LDAP qui servira de compte de service pour la connexion sur l’annuaire LDAP :

Et lui donner un mot de passe :

Bien sûr, il est possible d’activer la fonction « LDAP BINDING USER SERVICE ACCOUNT » pour n’importe lequel des utilisateurs, disons que dans notre exemple, nous considérons que la connexion doit être réalisée par un compte de service, comme le ferait une application cherchant des attributs dans le LDAP par exemple.

Test du service LDAP

Pour tester la connexion, nous allons utiliser une browser LDAP, il en existe de nombreux, mais nous utiliserons le freeware LDAP Browser 4.5 téléchargeable ici : http://www.ldapadministrator.com/download.htm

Il suffit d’installer le client LDAP sur une machine Windows et de lancer l’utilitaire puis de créer une nouvelle connexion :

La connexion doit avoir les caractéristiques suivantes :

Host (serveur LDAP) : ldap.jumpcloud.com

Port : 389

Base DN : ou=Users,o=585322a6bc0b5b5c277062ee,dc=jumpcloud,dc=com

Ici, 585322a6bc0b5b5c277062ee est notre organisation ID que l’on peut récupérer depuis la section SETTINGS de l’interface web de JumpCloud :

Il faut ensuite indiquer le compte de service avec lequel nous allons nous connecter sur l’annuaire LDAP et son mot de passe :

Dans notre exemple, le principal utilisé pour la connexion est:

uid=ldapservive,ou=Users,o=585322a6bc0b5b5c277062ee,dc=jumpcloud,dc=com

Nous avons ensuite accès à l’annuaire LDAP:

Avec par exemple, l’objet Sylvain Cortes :

Rajouter des groupes LDAP

Il est possible de rajouter des groupes LDAP dans l’annuaire en utilisant la fonction TAGS.

Définir un nom pour le TAG, qui sera aussi le nom du groupe LDAP et activer la fonction « Create LDAP groups for this tag » :

Puis rajouter des membres au groupe :

Il est alors possible de vérifier la présence du groupe et de ses membres depuis le browser LDAP :

Ce groupe LDAP pourra alors être utilisé depuis une application se basant sur des groupes LDAP pour fournir l’accès à certaines partie de l’application par exemple.

Les attributs utilisateurs : attention, rien à voir avec LDAP !

Dans l’interface de modification des comptes utilisateurs, il est possible de rajouter des attributs :

Attention, pour l’instant, ces attributs sont uniquement exploitables via l’API JumpCLoud et ne sont pas rajoutés dans le schéma LDAP. Il est prévu dans la roadmap de pouvoir rajouter des attributs LDAP et donc de rendre le schéma extensible, ce qui serait une fonction bien utile !

Voilà, cette série d’articles destinés à la découverte de l’offre JumpCloud est terminée. Je réaliserai vraisemblablement deux autres articles sur les fonctions avancées : les TAGS et la fonction de SSO via Fédération. En sachant que cette dernière fonction, pour moi, s’éloigne quelque peu de la fonction mise en avant qui est du DIRaaS et se rapproche plutôt des fonctions de IDaaS que l’on retrouve chez Microsoft, Okta et Centrify.

Si vous avez des questions sur le sujet ou si vous avez un projet allant dans ce sens, n’hésitez pas à me contacter par email ou via mon compte twitter : http://www.identitycosmos.com/sylvain-cortes_mvp

Directory as a Service (DIRaaS) : Découverte de JumpCloud [3/4]

Directory as a Service (DIRaaS) : Découverte de JumpCloud [3/4]

Dans la deuxième partie de cet article, nous avons évoqué l’intégration des systèmes Windows et Linux dans l’annuaire JumpCloud. Nous allons maintenant explorer une autre fonction intéressante de cet annuaire : la fonction Serveur RADIUS as a Service.

Paramétrage du service RADIUS

Dans une première étape, nous allons activer le RADIUS as a Service dans l’interface JumpCloud :

Il faut fournir un nom à notre service RADIUS, ici : jumpcloud_radius1

Il faut indiquer l’adresse IP publique du réseau qui va interagir avec le serveur RADIUS, il s’agit de l’adresse IP publique utilisée au niveau de votre routeur ou firewall pour la connexion à votre fournisseur de services Internet – vous pouvez traditionnellement trouver cette adresse IP dans l’interface de configuration de votre routeur/firewall.

Un « SHARED SECRET » est généré pour vous, mais vous pouvez tout à fait définir le vôtre, il est possible de visualiser le secret en cliquant sur le bouton représentant un œil afin de faire un copier/coller.

L’onglet TAGS permettrait d’associer des groupes d’utilisateurs avec ce serveur RADIUS afin de restreindre l’utilisation de ce service à des utilisateurs en particulier – ici nous ne paramétrons aucun TAGS, donc tous les utilisateurs de l’annuaire peuvent utiliser le service RADIUS.

Test du service RADIUS

Pour tester l’authentification sur le service RADIUS, il est possible de réaliser le test avec un client RADIUS de test. L’un de mes favoris est le client qui a été réalisé par la défunte société MasterSoft : NTRadPing test Utility. L’outil est encore téléchargeable sur le site de Novell, ici : http://www.novell.com/coolsolutions/tools/downloads/ntradping.zip

Dans l’interface, il suffira d’indiquer les informations suivantes :

Radius Server : 104.154.91.253 ou 104.196.54.120

Port Radius : 1812

Radius Secret Key : il faut ici copier/coller le « SHARED SECRET » que l’on a configuré dans l’étape précédente dans l’interface JumpCloud

Il faudra ensuite renseigner le login et mot de passe d’un utilisateur présent dans l’annuaire JumpCloud et qui a le droit d’utiliser le service Radius configuré.

Il ne reste plus qu’à appuyer sur le bouton « Send » pour tester la connexion et la réponse du serveur. Si la réponse est « response : Access-Accept » c’est que tout va bien et fonctionne correctement.

Si le mot de passe renseigné n’est pas correct, le message serait le suivant :

La plupart des articles pouvant guider sur le paramétrage du service Radius se trouvent sur ce lien : https://support.jumpcloud.com/customer/portal/topics/926833-radius-as-a-service/articles

Bien évidement l’usage classique d’un service Radius serait de permettre à des utilisateurs de s’authentifier auprès un point d’accès wifi avec leur login et mot de passe provenant de l’annuaire Cloud.

Directory as a Service (DIRaaS) : Découverte de JumpCloud [2/4]

Directory as a Service (DIRaaS) : Découverte de JumpCloud [2/4]

Dans la première partie de cet article, nous avons évoqué la prise en main de la solution ainsi que la création des comptes utilisateurs, nous allons maintenant explorer l’intégration des systèmes Windows et Linux dans l’annuaire JumpCloud.

Référencement de systèmes (OS) dans l’annuaire JumpCloud

Il est possible de renseigner des systèmes, c’est-à-dire des OS dans l’annuaire JumpCloud. JumpCloiud est compatibles avec des clients Windows, MacOS et Linux. Il faut alors installer un agent JumpCloud sur le système qui fera office de client pour l’annuaire, un peu comme un client Active Directory pour un système Windows ou un client Active Directory sur un système Linux ou MacOS grâce à la technologie Centrify.

Le client jumpCloud communique avec une session sur le port 443 avec l’annuaire JumpCloud, la communication depuis l’annuaire JumpCloud vers l’OS se fera via cette connection sécurisée, il n’y a donc pas besoin d’ouvrir de port entre l’extérieur et l’intérieur de l’entreprise car cette session sur port 443 est initiée depuis le client JumpCloud :

Vous trouverez ici la liste des systèmes supportés par le client JumpCloud : https://support.jumpcloud.com/customer/portal/articles/2390451-jumpcloud-agent-compatibility-and-system-impacts

Vous trouverez ici la liste des ports TCP/IP nécessaire pour la communication entre le client JumpCloud et l’annuaire JumpCloud : https://support.jumpcloud.com/customer/portal/articles/2390681

Pour rajouter un système depuis l’interface d’administration :

Référencement d’un système Windows

Choisir l’onglet Windows, télécharger le client JumpCloud :

Le lien de téléchargement direct est : https://s3.amazonaws.com/jumpcloud-windows-agent/production/JumpCloudInstaller.exe

Bien évidemment, nous prendrons ici comme exemple un PC sous Windows 10 qui est en Workgroup et qui n’est donc pas intégré dans un domaine. Nous explorerons au travers de prochains articles la liaison possible entre une infrastructure Active Directory existante et JumpCloud, mais dans tous les cas, il n’est pas possible d’installer l’agent JumpCloud sur une machine Windows liée à un domaine Active Directory (c’est-à-dire qui possède un compte machine dans un annuaire Active Directory).

Installation de l’agent :

Copier/Coller la clé disponible depuis l’interface web JumpCloud :

Réaliser un redémarrage du système après la fin de l’installation. Après le premier redémarrage, le système Windows apparait dans l’interface :

En cliquant sur le bouton détails, il est possible de visualiser les attributs principaux de la machine :

Par défaut, les utilisateurs présents dans l’annuaire sont vus dans l’interface mais ils n’ont pas le droit de se connecter sur le système, il faut donc sélectionner explicitement les utilisateurs que l’on autorise sur ce système en les sélectionnant et en cliquant sur le bouton « save system » :

Le système des TAGS nous permettrait d’automatiser cette sélection explicité, mais nous découvrirons cela dans un prochain article.

L’utilisateur provenant de l’annuaire JumpCloud est alors créé dans la base SAM locale de la machine :

Comme il a été décidé que cet utilisateur possède des droits d’administration sur les machines de l’annuaire JumpCloud, il est aussi rajouté automatiquement dans le groupe des Administrateurs locaux de la base SAM :

Le compte utilisateur créé possède les propriétés suivantes :

Il est maintenant possible de s’authentifier avec le compte utilisateur JumpCloud sur la machine Windows en utilisant le mot de passe du directory JumpCloud :

Un nouveau profil utilisateur est créé sur la machine lors de la première authentification :

Changement du mot de passe de l’utilisateur et impact sur le système Windows

Via l’interface en ligne, l’utilisateur final peut changer son mot de passe depuis son portail utilisateur :

L’administrateur peut lui aussi réinitialiser le mot de passe d’un utilisateur de l’annuaire :

Le nouveau mot de passe devra être conforme aux exigences liées à la politique de mot de passe définies dans le portail administrateur :

Le nouveau mot de passe sera alors automatiquement poussé sur le système lors de la prochaine connexion avec l’agent du système.

Référencement d’un système Linux

Ici les tests seront réalisés avec une CentOS 7.

Lors de la première étape, nous allons indiquer que pour un même utilisateur, nous souhaitons avoir le même UID sur les différents systèmes Linux sur-lesquels nous allons provisionner ce compte – de cette façon, quand un compte utilisateur sera provisionné sur des systèmes Linux différents, l’UID associé sera toujours le même. Voir cet article : https://support.jumpcloud.com/customer/en/portal/articles/2439908-manually-assigning-uid-gid-to-users

Pour cela il faut se rendre dans la partie SETTINGS :

Puis désigner l’UID et GID pour les utilisateurs qui vont se connecter sur les différents systèmes Linux :

Maintenant, tout est prêt pour rajouter un système Linux :

Sur le système Linux, passer en root (su) pour vérifier que vous êtes bien en root, taper la commande « id », l’id retourné doit être «zéro»:

Ouvrir un terminal sur le système Linux, puis Copier/Coller la commande qui se trouve dans l’interface JumpCloud dans la fenêtre de terminal sur le système Linux :

L’installation de l’agent se déroule, le système doit avoir accès à Internet pour télécharger le package de l’agent.

Il est possible de redémarrer le système Linux pour s’assurer que tout fonctionne bien au démarrage, mais le système doit apparaitre sur l’interface de JumpCloud sans redémarrage :

Ensuite, il faut rajouter l’utilisateur que l’on souhaite provisionner sur le système (sans passer par le système des TAGS que nous verrons dans un prochain article) :

Après un redémarrage de l’agent JumpCloud :

service jcagent stop

service jcagent start

Le nouvel utilisateur est créé avec le bon UID/GID dans le fichier /etc/passwd :

Après avoir ouvert une session sur le système avec le nouveau compte, il est possible de vérifier son ID :

Pour avoir un statut de l’agent depuis le système Linux :

service jcagent status

Pour des détails sur le fonctionnement de l’agent sous Linux, voir l’article suivant : https://jumpcloud.desk.com/customer/portal/articles/2399128

Dans notre prochain article, nous allons explorer les fonctions liées à RADIUS et l’annuaire JumpCloud.

Directory as a Service (DIRaaS) : Découverte de JumpCloud [1/4]

Directory as a Service (DIRaaS) : Découverte de JumpCloud [1/4]

Les différents fournisseurs de services d’identités hébergés dans le cloud se sont concentrés soit sur les fonctions de Identity as a Servive (IDaaS) ou de Cloud Access Security Broker (CASB), mais très peu ont tenté de proposer une véritable offre d’annuaire (DIRaaS) sous forme de SaaS.

Les seuls qui ont tenté la chose sont pour moi Microsoft (avec l’offre Azure Directory Services, nécessitant Azure Active Directory comme back-end), Amazon (AWS Directory Service, mais avec de nombreuses limitations techniques) et la société JumpCloud.

L’approche de JumpCloud est tout à fait innovante, car ils se positionnent comme des « pure player » fournisseur de DIRaaS et non pas comme fournisseur de IDaaS (bon, dans les faits, ils n’ont pas pu s’empêcher de mettre une brique de SSO basée sur SAML…). En effet l’idée est ici de fournir un « véritable » annuaire, dans le cloud qui est compatible par exemple avec LDAP ou RADIUS et demain pourquoi pas avec Kerberos.

L’idée de JumpCloud est donc de fournir un annuaire sous la forme d’un service. La difficulté de cet exercice réside dans le fait que les annuaires modernes ne sont pas simplement des annuaires LDAP – si l’on prend Active Directory par exemple, l’intégration avec Kerberos, la gestion des certificats ou dans une moindre mesure le lien Radius sont tout à fait remarquables. De plus, les annuaires modernes doivent pouvoir servir d’IdP pour les applications désirant consommer un service de fédération pour l’authentification des utilisateurs.

L’exercice de style n’est donc pas simple pour JumpCloud, voyons donc comment ils s’en sortent dans une série de quatre articles traitant de la découverte de cette offre en ligne. Si j’ai des retours positifs, j’aborderais ensuite dans une courte série de deux articles les fonctions avancées.

Pour se créer un compte d’évaluation, il faut se rendre sur cette page : https://jumpcloud.com/signup – une fois le formulaire rempli et le traditionnel lien de confirmation par email cliqué, le compte d’administration est prêt et l’on peut se connecter sur l’interface de gestion.

JumpCloud laisse à disposition une liste de « QuickStart Guide » pour bien prendre les choses en main – la liste de ces guides est accessible ici : https://support.jumpcloud.com/customer/portal/topics/947955-getting-started/articles

Le premier login administrateur sur le service JumpCloud

Voici le lien pour se connecter sur l’interface de gestion : https://console.jumpcloud.com/login

Il faut bien comprendre qu’il y a deux parties dans la mire de login, la partie « user » à gauche et la partie « administrator » à droite, il faut faire le bon choix car l’interface qui sera proposée derrière est différente en fonction de ce choix :

Une fois connecté à l’interface d’administration, un menu apparait sur la gauche permettant de sélectionner la zone d’administration, la partie de droite changera en fonction de ce choix.

  • USERS : Gestion des comptes utilisateurs, qu’ils soient créés directement dans l’annuaire manuellement ou qu’ils proviennent d’une synchronisation (depuis Active Directory par exemple)
  • SYSTEMS : Gestion des OS qui seront connectés à l’annuaire (Windows, Linux et MacOS) et qui pourront recevoir des règles de gestion depuis l’annuaire JumpCloud
  • TAGS : La gestion des TAGs permet de multiples choses, mais notamment l’association d’utilisateurs à des ressources ou à des objets (groupes)
  • APPLICATIONS : C’est la partie SSO vers des applications compatibles avec SAML (fédération d’identité)
  • COMMAND : Permet de programmer l’exécution de commandes sur les systèmes (OS) gérés dans l’annuaire
  • RADIUS : Utilisation d’un service serveur RADIUS as a Service

Création du premier utilisateur dans l’annuaire JumpCloud

La première connexion à l’interface d’administration permet de créer immédiatement des utilisateurs depuis la section USERS :

Ici nous allons choisir de créer un utilisateur qui aura des droits d’administration, il sera donc « Global Administrator », il pourra invoquer sudo sur les systèmes Linux et mais devra s’authentifier. De plus, l’utilisateur aura le droit de faire un Bind LDAP et de réaliser des recherches sur l’annuaire via LDAP. Enfin, nous lui définissons son mot de passe.

Un point important, ici, « Global Administrator » ne signifie pas que ce compte a des droits d’administration sur le service JumpCLoud en tant que tel, mais uniquement qu’il a des droits avancés sur les systèmes sur lesquels il pourra s’authentifier.

Après avoir cliqué sur le bouton « save user », nous avons notre premier utilisateur dans l’annuaire JumpCloud :

Quand on regarde les détails de sa fiche utilisateur, il est possible de constater que l’utilisateur à bien un « LDAP DISTINGUISHED NAME »:

Il est tout à fait possible de modifier ses attributs existants, par exemple son email :

Premier login utilisateur

Si maintenant on utilise cet utilisateur pour se connecter à l’annuaire JumpCloud en précisant qu’il s’agit d’un login utilisateur via l’URL suivante : https://console.jumpcloud.com/login

Nous constatons que l’utilisateur peut de lui-même éditer un certain nombre d’attributs ou de champs dans l’annuaire (attributs qui lui sont liés bien sur) :

Et qu’il a accès à des applications, la possibilité de rajouter des clés ainsi que la possibilité d’activer le MFA via Google Authenticator :

Distinction entre les comptes utilisateurs et les comptes administrateurs JumpCLoud

Attention, il faut bien comprendre qu’il y a trois types de comptes :

Type de compte Stockage Etendue d’administration
Administrateurs de l’instance JumpCloud Dans une base des administrateurs séparées de la base de l’annuaire en tant que tel Administrators

Administrators with Billing

Command runner

Command runner with Billing

Utilisateurs de l’entreprise Dans l’annuaire JumpCloud Aucune
Utilisateurs de l’entreprise avec des droits d’administration sur les systèmes Dans l’annuaire JumpCloud Certaines droits d’administration sur les systèmes eux-même

Base de comptes des Administrateurs JumpCloud:

La base de comptes des utilisateurs dans l’annuaire JumpCloud (représente les utilisateurs « end users » de l’entreprise :

Il est donc tout à fait possible d’avoir deux comptes avec le même login, un qui est administrateur JumpCloud et l’autre qui représente l’utilisateur au sens « end-user » avec deux mots de passe différents, lors de l’authentification en ligne, il faudra choisir sur quelle base de comptes (users ou administrators) se connecter :

Voilà ce premier article nous a permis de prendre en main la solution JumpCloud et de comprendre les bases de comptes utilisées. Dans le prochain article nous explorerons l’intégration des OS Windows et Linux au sein de cet annuaire.

Azure AD Pass-Through Authentication et Seamless SSO par Maxime Rastello

Maxime Rastello est consultant & MVP, il s’est fait une spécialité de la partie Azure et notamment des processus et des fonctions liées à l’IAM ou à la sécurité dans Azure. Depuis peu, il a commencé une série de vidéos, dites « Deep-Dive ». C’est vraiment très bien fait et didactique, le format entre 15 et 30 minutes est parfait pour approfondir le sujet mais sans que cela devienne assommant. La dernière vidéo en date porte sur deux nouvelles fonctions en preview, qui de mon point de vue, vont révolutionner l’usage d’Azure Active Directory dans le monde des entreprises et notamment dans les PME ou ETI: Azure AD Pass-Through Authentication et Seamless SSO.

Pour suivre sa chaîne YouTube: https://www.youtube.com/channel/UCL9JIy1auTKjwESwa3XCJ7g/videos

Pour le suivre sur Twitter: @MaximeRastello

Pour retrouver sa dernière vidéo sur Azure AD Pass-Through Authentication et Seamless SSO:

 

Le MIT lance un projet pour la documentation de Kerberos: MIT Kerberos Documentation

kerb_doc

La documentation, c’est toujours un problème ! Toutes les organisations ont du mal à gérer la documentation technique, cela prend du temps, ce n’est jamais à jour, il faut corriger, etc.

Le MIT (inventeur du protocole Kerberos) a décidé de créer un projet pour mieux gérer la documentation de son serveur Kerberos et des éléments périphériques à Kerberos.

Rappelons seulement que le MIT est « l’inventeur » de la première mouture de Kerberos qui existe maintenant selon différentes déclinaisons (Heimdal, Shishi, Microsoft) mais qui reste la référence en la matière, avec un système extrêmement stable et modulaire. Nous en sommes maintenant à la version 5 du protocole Kerberos.

Le MIT a mis en ligne un nouveau format pour la documentation accessible ici: http://web.mit.edu/kerberos/krb5-latest/doc/index.html – c’est plus aéré, plus clair, mieux découpé par section:

kerb_doc_a

De plus, le MIT a lancé un projet afin que chacun puisse éditer, corriger ou faire évoluer la documentation: http://k5wiki.kerberos.org/wiki/Projects/Kerberos_Documentation – Pour ma part, j’aurais préféré un projet sur Github, comme Microsoft le fait avec la documentation Azure, car le système d’édition et de mise à jour basé sur Doxygen n’est pas tout simple à implémenter…

Pour rappel, de nombreuses ressources existent côté MIT, n’hésitez pas à les consulter si vous utilisez Kerberos dans votre organisation, que ce soit avec MIT Keberos ou Microsoft Kerberos:

kerb_docb

 

Si qq est  intéressé par un projet de traduction en Français de la documentation, ne pas hésiter à me contacter sur mon compte Twitter, ce serait un beau projet communautaire à réaliser !

Quel futur pour Active Directory et Azure Active Directory ?

eic_kimcameron

La 10ème conférence European Identity & Cloud (eic) est terminée. Elle a été très riche en sessions techniques ou stratégiques. Un des points culminants de cet événement a été la présentation de Kim Cameron sur le futur des technologies Active Directory (en local donc) et Azure Active Directory (dans le cloud donc).

Pour ceux qui ne connaissent pas Kim Cameron, il s’agit de « monsieur identité » chez Microsoft, il est Chief Architect of Identity et donne la mesure et bâtie la stratégie de Microsoft en ce qui concerne la gestion des identités. Son blog est une référence sur ce sujet dans le monde anglophone: http://www.identityblog.com/

Dans cette session, Kim Cameron a tenté de présenté des pistes pour les décideurs IT, leur donnant sa vision du futur et de la cohabitation des technologies Active Directory et Azure Active Directory, en faisant notamment un focus sur le service Azure AD Directory Services permettant d’exposer Azure Active Directory au travers de services généralement utilisés localement sur un Active Directory local (kerberos, LDAP, etc.).

Pour ma part, je pense que dans 2 ou 3 ans, le couple Azure Active Directory + Azure AD Domain Services permettra de fournir un ensemble de services équivalents à ce que nous connaissons actuellement avec un Active Directory local, il s’agit vraisemblablement du futur des annuaires dans le cloud, avec une multitude d’applications ou de systèmes qui pourront se connecter et utiliser ce service global. Sans vouloir faire le « Microsoft Fan Boy » de base, il n’y a aucun équivalent à cette offre chez les autres fournisseurs cloud, Microsoft est en train de créer une offre de services IAM dans le cloud sans aucun concurrent valable ou valide. Cela est même assez étonnant de voir la pauvreté de l’offre Amazon et Google dans ce domaine…

Vous pouvez consulter la présentation de Kim Cameron ici:

 

Module PowerShell V2 pour Azure Active Directory disponible en GA

aad_v2_powershell

Comme vous le savez certainement, il est tout à fait possible de manipuler les objets Azure Active Directory via PowerShell. Jusqu’à maintenant, la version V2 (au sens PowerShell) n’était disponible qu’en preview. Depuis quelques jours, le module powershell AAA V2 est disponible en ‘GA’.

Pour info, certaines commande disponible dans la version Preview, n’ont pas encore été intégrées dans la version publique délivrée (ce n’est qu’une question de temps, mais il est toujours possible d’installer le module Peview pour bénéficier de ces commandes en attendant leur intégration définitive).

Pour l’instant, voici la liste des commandes disponibles:

Get-AzureADAdministrativeUnit
New-AzureADAdministrativeUnit
Remove-AzureADAdministrativeUnitSet-AzureADAdministrativeUnit
Add-AzureADAdministrativeUnitMember
Get-AzureADAdministrativeUnitMember
Remove-AzureADAdministrativeUnitMember
Add-AzureADApplicationPolicy
Add-AzureADScopedRoleMembership
Get-AzureADScopedRoleMembership
Remove-AzureADScopedRoleMembership
Confirm-AzureADDomain
New-AzureADDomain
Remove-AzureADDomain
Set-AzureADDomain
Get-AzureADVerificationDnsRecord
Get-AzureADApplicationPolicy
Remove-AzureADApplicationPolicy
Get-AzureADPolicy
New-AzureADPolicy
Remove-AzureADPolicy
Set-AzureADPolicy
Get-AzureADPolicyAppliedObject
Add-AzureADServicePrincipalPolicy
Get-AzureADServicePrincipalPolicy
Remove-AzureADServicePrincipalPolicy
Get-AzureADServiceConfigurationRecord
New-AzureADDirectorySetting
Remove-AzureADDirectorySetting
Set-AzureADDirectorySetting
Get-AzureADObjectSetting
New-AzureADObjectSetting
Remove-AzureADObjectSetting
Set-AzureADObjectSetting

Informations sur le module PowerShell AAD V2 [ ICI ]

 

 

Série d’articles interressants sur Azure AD par un MVP Français

mvp Seyfallah Tagrerout, MVP Français travaillant à la base sur les technologies de virtualisation, commence une série d’articles sur Azure Active Directory.

C’est accessible aux débutants, bien documenté et surtout c’est en Français !

Vous pouvez consulter les deux premiers articles ici:

https://seyfallah-it.blogspot.fr/2016/06/azure-ad-part-1.html

https://seyfallah-it.blogspot.fr/2016/06/azure-ad-part-2-letude-qui-prepare.html?m=1

La page d’accueil de son blog: https://seyfallah-it.blogspot.fr/ – focus sur les technologies de virtualisation, mais pas que.

MIM 2016 & SAP

mim_sapTravaillant actuellement sur un projet implémentant la gestion du cycle de vie des utilisateurs SAP et des rôles SAP depuis MIM, il me semblait intéressant de créer un article court pour rappeler les possibilités de gestion des objets SAP via MIM.

Pour appel, SAP possède sa propre base de compte utilisateurs, lorsque un utilisateur final utilise l’interface web ou le GUI lourd SAP pour se connecter à l’instance SAP, il doit utiliser un compte étant dans cette base. Cette base permet aussi de gérer la partie SoD et la partie RBAC au niveau de SAP lui-même.

Même si cela ne rentre pas dans le cadre de cet article, rappelons que MIM ne permet pas de faire du SSO, mais éventuellement du CSO au niveau de l’authentification SAP, et à minima de gérer le cycle de vie des comptes, voir de créer les « triggers » qui vont bien au niveau de la base SAP pour assurer les mécanismes SoD & RBAC propres à SAP. En effet, le « connecteur » MIM pour SAP intègre maintenant la gestion des rôles au sens SAP du terme.

Si vous recherchez à faire du SSO sur SAP, je ne saurais que trop vous conseiller de réaliser cela en utilisant le protocole Kerberos, de cette façon vous aurez un système fiable, intégré à Active Directory et générique à l’échelle de votre SI. Juste une information importante, utiliser Kerberos pour gérer l’authentification sur la base SAP ne vous épargne pas de devoir créer les comptes utilisateurs dans la base propriétaire SAP, donc SSO ou pas SSO, MIM vous sera utile.

Si vous utilisez SAP sur un serveur Windows et que vous désirez faire du SSO, je vous conseille cette vidéo:

Si vous utilisez SAP sur un serveur Unix/Linux et que vous désirez faire du SSO, je vous conseille cette vidéo:

Mais revenons à nos moutons, le gestion de cycle de vie des utilisateurs dans la base SAP.

Depuis FIM 2010, et donc pour MIM 2016, le connecteur pour SAP est un connecteur générique utilisant des Web Service. Le connecteur SAP pour MIM 2016 est compatible avec les versions SAP ECC 5 & ECC 6.

Tout d’abord il faut télécharger le connecteur web services pour MIM 2016, il est accessible [ ICI ]

La documentation pour le connecteur Web Service est accessible [ ICI ] – A vérifier, mais il ne me semble pas avoir vu une documentation mise à jour spécifiquement pour MIM 2016

De plus, dans le package des connecteurs web services, Microsoft fournit un outil supplémentaire, le « Web Service Configuration Tool » permettant de créer un projet .wsconfig qui pourra être publié directement dans le répertoire \Synchronization Service\Extensions\

Exemple de configuration d’un projet sur un web service intégrant un WorkFLow via le Web Service Configuration Tool:

mim_web_service_configuration_tool

La documentation décrit les différents templates utilisables au travers des web services, pour SAP, il s’agit notamment des objet User SAP, Group SAP et Role SAP. La documentation Microsoft aborde les aspects FIM/MIM mais très peu les prérequis ou la configuration côté SAP, quand on est pas un spécialiste SAP, et je suis très loin d’être un spécialiste SAP, la documentation est un peu juste sur ce point – mieux vaut être accompagné par un « vrai » architecte SAP sur le projet afin de bien comprendre le modèle de données et les particularités des services web sur cette plateforme.

Pour compléter la documentation Microsoft, je vous conseille fortement de lire les articles suivants:

Integrate SAP HR and Active Directory using Forefront Identity Manager (FIM) SAP Connector for WS – article écrit par Salvatore Pellitteri, MVP Microsoft lui aussi, et qui a l’avantage de réaliser un step by step très complet.

#  Integrating SAP Web Services with MIM – (part 1) – article écrit par Ingólfur Arnar Stangeland, consultant travaillant sur les technologies de sécurité proposées par Microsoft, cet article est le premier d’une série et possède l’avantage d’être récent et focus sur la version MIM 2016.

How to Create a Web Service Connector for SAP in FIM/MIM – (part 1) – et How to Create a Web Service Connector for SAP in FIM/MIM – (part 2)  – série de deux articles écrite par Tracy Yu, employé de Microsoft – ces articles font le focus sur la version MIM 2016.

Il ne me souhaite plus qu’à vous souhaiter bonne lecture – je devrais poster dans les mois qui viennent un complément à cet article avec un step by step en Fr sur la partie MIM/SAP.

 

 

Ubuntu: Mise à jour de la documentation intégration Kerberos/LDAP

ubuntu_kerberos_ldap

Comme vous le savez certainement, il est possible d’utiliser un annuaire LDAP comme conteneur des utilisateurs utilisés dans un royaume Kerberos. Sous Active Directory, cette « association » se fait naturellement, Active Directory proposant cette fonction de native et transparente pour les administrateurs.

Dans le monde Linux/Unix, cela est très différent, il faut expressément paramétrer le royaume Kerberos pour que celui-ci utilise un back-end LDAP pour stocker les informations utilisateurs, ensuite, en terme de protocole, on est sur du connu, Kerberos pour la partie authentification, LDAP pour la partie autorisations.

Franchement, quand on a compris le concept, ce n’est pas très compliqué, je dois avoué que l’avantage sur Unix/Linux, est une plus grande séparation des fonctions, donc une meilleure compréhension globale de l’architecture: Comme les choses ne sont pas faite automatiquement, et bien du coup, on comprend précisément les différences entre Kerberos et LDAP, cela rend vraisemblablement les choses plus simple à conceptualiser pour les débutants même si bien sur cela occasionne un paramétrage supplémentaire non nécessaire sous Active Directory.

Les concepts sont identiques sur l’ensemble des plateformes Linux mais chaque distribution a bien sur ses petites particularités. Ubuntu a mis jour dernièrement la documentation présentant cette intégration: dans ce scénario, les comptes utilisateurs sont donc créés dans LDAP, si la réplication LDAP est paramétrée, on a donc « l’équivalent » d’une réplication multi-maitres comme des contrôleurs de domaine Active Directory (enfin presque…) et un royaume Kerberos qui peut s’appuyer sur l’annuaire LDAP au lieu de s’appuyer sur une base de données Berkeley (ce qui est la configuration native d’un royaume Kerberos) pour stocker les objets utilisateurs.

La documentation pour Ubuntu, en Français est accessible [ ICI ]

Pour une référence plus générique et globale, vous pouvez aussi consulter la documentation MIT Kerberos [ ICI ]

 

 

Bien commencer avec Azure Active Directory: Azure Active Directory Proof Of Concept Playbook

azure_ad_poc

Beaucoup de mes partenaires et clients me demandent: « comment tester, évaluer et comprendre en quelques jours se qu’est et comment fonctionne Azure Active Directory ? » – en qq mots, comment faciliter la mise en oeuvre d’un POC sur la solution. Microsoft a conçu et met régulièrement un jour un document de référence qui permet « assez facilement » de réaliser ce test: « Azure Active Directory Proof of Concept Playbook.pdf »

Ce document a un grand intérêt car il contient l’ensemble des informations importantes pour la réalisation d’un POC Azure AD et surtout il contient la liste des autres documents ou articles de référence permettant facilement de comprendre les concepts périphériques pour aller un peu plus loin dans la compréhension si c’est la volonté de la cellule IT réalisant cette évaluation.

Le document possède la structure suivante:

azure_ad_poc_doc_contenu

 

Par exemple, comme indiqué, le document contient toutes les références « externes » nécessaires aux différentes étapes, par exemple ici, la liste des prérequis pour la réalisation du POC avec les liens externes nécessaires:

azure_ad_poc_doc_contenu_a

Bref, un très bon point de départ pour ceux qui veulent explorer et comprendre Azure Active Directory.

Rappel du lien pour le document: [ ICI ]

 

 

 

Les différents scénarios possibles selon la topologie d’entreprise avec Azure AD Connect

adconnect je suis tombé qq peu par hasard sur un article (US) qui me semble intéressant pour un architecte débutant dans les problématiques de synchronisation liées à Azure AD Connect. Cet article liste les différentes topologies d’entreprise existantes possibles, et les scénarios d’implémentation Azure AD Connect pour chaque situation. Quand un scénario n’est pas supporté officiellement par Microsoft, cela est notifié dans l’article, ce qui est important et parfois qq peu obscure à décrypter (supporté ou pas supporté…) pour les débutant.

Bref, l’article n’est pas révolutionnaire en soi, mais constitue un bon point de départ pour un consultant déchiffrant ce nouveau monde. L’article est disponible ici: https://azure.microsoft.com/en-us/documentation/articles/active-directory-aadconnect-topologies/

Bonne lecture 😉

Comprendre les fonctions PAM de MIM et les nouveautés sur PAM apportées par MIM SP1

privilaged-access

 

La gestion des privilèges et des accès à des comptes d’administration est une problématique récurrente chez les clients d’une certaine taille. Plus l’infrastructure grossie, plus les applications sont nombreuses, plus les services IT sont découpés (merci ITIL…) plus les comptes dits « à pouvoir » se multiplient dans l’écosystème IT des entreprises.

Ici, point de salut avec le Cloud, IT locale ou délocalisée, le nombre de comptes à privilèges ne réduit pas dans le nuage, parfois, il augmente, car la situation actuelle est hybride, de l’IT locale et de l’IT dans le nuage, donc multiplication des comptes à privilège, représentant  des populations d’administrateurs ou de responsables IT parfois différentes.

De nombreuses solutions sur le marché existent pour gérer ces comptes, j’ai commencé un article qui parcourra les différents modèles, mais je voulais mettre en avant la solution proposée notamment par Microsoft car elle a un caractère innovant.

De prime abord, la fonction PAM proposée par MIM semble lourde, elle l’est. En effet, le principe est globalement (je fais simple) de créer une forêt dédiée à la gestion des comptes ou des groupes qui contiennent des comptes à privilèges. On parle ici d’un forêt « bastion », oui vous avez bien lu, il faut une nouvelle forêt, et cela peut rebuter les comptes de tailles moyennes, car cela signifie, de nouvelles procédures, des outils de backup, de supervision, etc…

Mais, pour les comptes d’une certaine taille, je dirais au delà de 10 000 comptes, cette approche d’architecture peut apporter des avantages:

1/ on utilise ici des technologies connues & fiables: Active Directory

2/ la solution sera de facto compatible avec tous les systèmes acceptant  Active Directory comme référentiel de comptes et de groupes, les technologies Microsoft bien sur, mais aussi, Linux, Unix, MacOS, etc… ca commence donc à devenir intéressant

3/ la solution se base sur des protocoles reconnus, tel que Kerberos par exemple

Je vous conseille cette page sur le site de documentation de Microsoft: https://docs.microsoft.com/en-us/microsoft-identity-manager/pam/privileged-identity-management-for-active-directory-domain-services qui décrit les fonctionnalités dans les grandes lignes et l’infrastructure afférente.

Les nouveautés du SP1 de MIM 2016.

Bon, le SP1 de MIM 2016 apporte des choses intéressantes à la solution, comme par exemple le support officiel des différentes browsers web du marché, mais concernant le module PAM, ce qui me semble le plus intéressant, c’est la possibilité de scripter l’intégralité de l’installation du module PAM via PowerShell. Cela ouvre de nouveaux horizons car les scripts de configurations ne s’arrêtent pas uniquement à la partie PAM de MIM mais prennent aussi en compte les paramètres nécessaires comme la partie Active Directory, le SID filtering, la partie Silo Active Directory, etc…

mimsp1_pam_powershell

Il est donc imaginable, soyons fous, de déployer des instances dédiées pour des environnements différents au sein d’une même entreprise; pourquoi pas modéliser la chose sous forme d’appliance prête à l’installation et dont le setup final se ferait via une interface web pilotant le PowerShell ?

Si la gestion des privilèges est dans votre périmètre, et que vous travaillez dans une entreprise de plus de 10 000 employés, regardez la solution PAM de MIM, elle peut être une voie parmi d’autres…

 

 

 

 

Gestion des clés SSH via Key Manager Plus

key_manager_plus
key_manager_plus

ManageEngine est plus connu pour ses solutions autours de l’infrastructure Microsoft dans le monde des PME/PMI et depuis quelques année pour ses solutions MSPs et réseau. Je ne connaissais pas le produit « Key Manager Plus » qui est un outil de gestion des clés SSH, qui comme chacun le sait est une des plaies de l’administration courante dans les entreprises utilisant SSH.

Les fonctions du produits sont globalement présentées sur cette page: https://www.manageengine.com/key-manager/features.html. Au delà du marketing, le produit à l’air très intéressant.

L’outil semble très graphique:

key_manager_plus_demo

La gestion des clés SSH semble complète:

key_manager_plus_ssh

Une fonction audit retrace l’ensemble des usages:

key_manager_plus_audit

Bref, l’outil semble complet. Après il faut surtout vérifier si il correspond à des besoins de grands comptes, en effet, les différents produits ManageEngine que j’ai pu croisé sont très adaptés à la PME/PMI, pour un grand compte c’est généralement un peu léger… Hors la gestion des clés SSH est généralement une grande « douleur » chez les grands comptes. Il convient donc de tester la chose. Ca tombe bien, l’outil est téléchargeable pour évaluation, il est possible de récupérer une version d’évaluation [ ici ].

Enfin,une démo en ligne du produit est disponible [ ici ].

Dès que j’ai 2 heures à tuer, je teste la bête !

Azure AD Application Gallery

Azure AD Application Gallery
Azure AD Application Gallery

Comme vous le savez déjà si vous travaillez avec les concepts de fédération d’identité et d’IDentity as a Service (IDaaS), notamment via Azure AD Premium, il est parfois difficile de connaître la liste des applications supportées ainsi que le mode de fédération ou de SSO que ces applications SaaS acceptent. Microsoft publie un site web « Azure AD Application Gallery » permettant de consulter la liste des applications supportées et de déterminer quel type de SSO elles sont capables de « comprendre ».

Pour faire simple, il existe 4 types d’applications SaaS selon la terminologie utilisée par Microsoft – notons toutefois, que les protocoles acceptés par l’application ne dépendent pas directement de Microsoft mais de l’application elle même, il y a toutes les chances pour que les « capacités » de l’application en termes de SSO ou de Fédération soient exactement les même quelques soit la solution d’IDaaS employée:

# Application de type « federated SSO only »: ces applications supportent la fédération et le SSO via la fédération de façon basique, généralement elles requièrent de mettre en œuvre un système de provisioning des comptes coté applicatif,  rappelez vous que la fédération d’identité ne vous élimine pas le fait de devoir créer les comptes côté applicatif de façon à lister les personnes acceptées et pouvoir définir le profiling applicatif (en gros qui a droit à quoi dans l’application)

# Application de type « federated SSO and provisioning »: ces applications supportent la fédération et le SSO via la fédération, et permettent aussi de gérer le provisioning des comptes via la solution d’IDaaS elle-même. Ici, on définie des règles, et la création des comptes, voir l’appartenance aux bons groupes côté applicatif, se fait via la solution IDaaS, plus besoin de penser un système de provisioning en parallèle.

# Application de type « federated SSO and consent »: ces applications supportent la fédération et le SSO via la fédération, et supportent la fonction « consent » – pour faire simple, cela permet à un utilisateur lorsqu’il utilise la passerelle de fédération d’accepter que ces identités soient utilisées et passées à l’applications SaaS pour valider son identité. Ce mécanisme est assez peu utilisé, permet sous certaines législation de demander la permission à l’utilisateur de transmettre son identité à l’application demandée. Qq explications sur le « consent » dans cet article: https://identitynetworks.wordpress.com/2009/03/09/ready-able-and-willing-federated-consent/

# Application de type « password SSO only »: ces applications ne supportent pas la fédération, et ne sont capable de faire du SSO que sur la transmission d’un couple username+password. Il y a un effet de bord principal à ce type d’authentification, c’est lorsque l’on veut utiliser le service d’IDaaS depuis un périphérique de type smartphone ou tablette, mais ceci est un autre débat, je ferais un article prochainement sur ce sujet. Ici, il faudra alors mémoriser le couple username+password ou éventuellement se baser sur l’authentification AD, mais il faudra alors aligner ce couple avec le compte dans l’application SaaS.

Sur l’interface « Azure AD Application Gallery », il suffit de choisir le type d’applications que l’on veut lister, et le site vous propose la liste des applications supportées par Azure AD Premium dans ce cadre. Par exemple:

consent_federation_applications

 

 

Contrer l’attaque pass-the-hash grâce à Windows 10 et Windows Server 2016: Credential Guard

hacker-1280x600

L’attaque « pass-the-hash » est un phénomène connu depuis quelques années, Microsoft a eu quelques difficultés à trouver des solutions efficaces et universelles pour contrer ce type d’attaque. Fort heureusement Microsoft a intégré dans le couple Windows 10 / Windows Server 2016 les outils pour permettre de gérer ce type d’attaque de façon efficace, et c’est plutôt du bon boulot !

Pour en savoir un peu plus sur pass-the-hash:

Une mini-site complet sur le site de Microsoft décrivant en détails pass-the-hass: https://technet.microsoft.com/en-us/dn785092.aspx

Pass-the-Hash attack : compromise whole corporate networks P1

Pass-the-Hash attack : compromise whole corporate networks P2

Pass-the-Hash attack : compromise whole corporate networks P3

 

Credential Guard de Microsoft, permettant notamment de contrer pass-the-hash:

https://technet.microsoft.com/en-us/itpro/windows/keep-secure/remote-credential-guard

https://technet.microsoft.com/en-us/itpro/windows/keep-secure/credential-guard

 

Si vous travaillez dans la sécurité ou si vous gérez un environnement Active Directory dans un contexte de sécurité avancé, je vous conseille de consulter et assimiler ces différents concepts.

 

 

19 & 20 Octobre 2016: OCG Identity Security Summit

ocgidentitysummit

Les 19 & 20 Octobre prochains, OCG (Oxford Computer Group) organise son évènement annuel sur la gestion des identités et la transformation digitale. Pour ceux qui ne connaissent pas OCG, il s’agit ici de l’acteur Européen principal dans le monde de l’IAM version Microsoft. Le premier jour sera consacré à la partie technique autour de la gestion des identités et de la sécurité, le deuxième jour verra un focus sur la transformation digitale liée à l’IAM.

Cette année, un invité de marque: Brad Anderson qui est VP chez Microsoft. Informations complémentaires et inscriptions [ici]

 

Microsoft Identity Manager 2016 SP1 – MIM 2016 SP1

mim2016_features

 

Microsoft vient d’annoncer la mise à disposition du SP1 pour MIM 2016.

Outre des correctifs de « problèmes » inhérents à la notion de service pack, le SP1 de MIM complète la solution de gestion des identités de Microsoft avec les éléments suivants:

  • Support de Windows 2016 Server, SharePoint 2016 et SQL Server 2016 (ce n’est pas encore mis à jour dans la page de support de configuration accessible ici https://docs.microsoft.com/en-us/microsoft-identity-manager/plan-design/microsoft-identity-manager-2016-supported-platforms mais c’est bien le cas pourtant)
  • Compatibilité étendue à d’autres navigateurs web pour le portail MIM 2016: Edge, Chrome, Safari et Firefox sont maintenant rajoutés à la liste de compatibilité officielle qui contenait uniquement Internet Explorer (ok, oui ca marchait, mais c’est une question de support officiel, maintenant les tests ont été réalisés chez Microsoft)
  • Le service de notification et de workflow de MIM 2016 supporte maintenant Office 365 et plus seulement Exchange Server (ok, je sais on pouvait bricolé un serveur SMTP local pour contourner certaines limitations, mais maintenant on peut directement utiliser Office 365)
  • La fonction PAM (gestion des privilèges sous la forme d’une forêt dédiée à un bastion) supporte maintenant Windows Server 2016 et le niveau fonctionnel de forêt Windows 2016
  • Fourniture de script pour automatiser le déploiement de MIM 2016 PAM dans une forêt bastion – A tester, pour vérifier jusqu’où il est possible d’aller en terme d’automatisation

Le CD de MIM 2016 SP1 est disponible en download depuis MSDN, il n’y a pas pour l’instant la possibilité de télécharger uniquement le SP1, mais cela va venir, c’est encore frais.

 

 

Migration de Samba vers un Proxy Active Directory

samba_logo

 

Les solutions de Active Directory Bridge proposent généralement une intégration avec Samba, permettant notamment une configuration automatisée des paramètres Winbind et des paramètres nsswitch.conf liés à Winbind. Ainsi le mapping des utilisateurs peut se faire avec des comptes utilisateurs Active Directory et non pas avec des comptes utilisateurs locaux au système UNIX/Linux. Certaines solutions, telle que Centrify, propose une intégration encore plus poussée avec Active Directory permettant en quelques clics un intégration de l’authentification kerberos sur Samba et en fournissant des GPOs pour paramétrer les détails de la configuration Samba sur les différents serveurs Samba – mais le revers de la médaille est qu’il faut alors utiliser les package Samba fournis par Centrify.

Depuis peu, Centrify propose de remplacer leur distribution Samba spécifique par une fonction « ADbindproxy ». ce nouveau service « centrifydc-samba » permet d’utiliser les packages standards fournis par le système d’exploitation (en version samba 4 néanmoins) et de relier le service Samba standard avec une zone d’utilisateurs créées dans Active Directory en gardant tous les avantages de ce type de configuration: intégration kerberos, mot de passe unique, etc…

Une vidéo de présentation courte (15 minutes) permet de mieux comprendre le fonctionnement de ce nouveau composant:

 

 

Format des URLs dans les forums Microsoft

URLBonjour à toutes et tous, c’est le retour de congés, beaucoup de choses à faire, mais il faut bien s’y remettre ! Je suis tombé un peu par hasard sur un article décrivant le format des URLs dans les forums Microsoft, et cela est très instructif. Comme vous le savez, les forums techniques en général et les forums Microsoft en particulier sont une mine d’information pour toute personne qui est à la recherche d’informations techniques, le partage de connaissance est une chose importante dans notre métier. Vous pourrez consulter cet article, qui décrit en détail les URLs des forums, je suis certain que cela pourra vous aider dans vos recherches !

XACML is dead or not ?

xacml.plain.logo

 

Depuis maintenant plusieurs années, je m’intéresse à l’évolution du « standard » XACML, en me posant bcp de questions… En effet, d’un point de vue technologique, je pense qu’il s’agit d’une excellente manière de gérer les rôles applicatifs au sein des grandes entreprise. Pour faire simple, XACML est plutôt un langage structuré (basé sur XML) qui permet de décrire des rôles et surtout des politique de contrôle d’accès – ces politiques peuvent être simples, très complexes et peuvent se baser sur des éléments dynamiques ou contextuels: par exemple mes « droits » définis dans le code XACML peuvent s’adapter en fonction de l’adresse IP que j’ai, ce qui permettrait d’adapter mes droits si je suis sur le LAN ou depuis un VPN, etc. Encore une fois, d’un point de vue technique, je pense que c’est le top, c’est un peu monolithiques, mais au final on peut gérer des cas très complexes – le problème est que l’adoption (en tout cas en France) de ce standard est très faible – il y a peu de changements depuis 4 ans, quelques POC, mais pas de mise en production – en effet, le problème majeure est qu’il faut écrire une partie des applications « in house » pour bénéficier de XACML, il y a déjà peu d’entreprises qui font du profiling applicatif dans un annuaire LDAP, alors XACML…on imagine… Je suis retombé sur un article d’un consultant Forester qui date maintenant de 3 ans, voir: http://blogs.forrester.com/andras_cser/13-05-07-xacml_is_dead – ce qui est amusant c’est que l’on pourrait avoir écrit l’article hier 😉 Les commentaires sont extrêmement intéressants également, un peu partisans, mais intéressants !

Donc que conseiller ? XACML or not XACML ? et bien je ne sais pas… Je pense que je conseillerais à une entreprise (à partir de 50 000 users) d’au moins faire un POC de la technologie, et de comparer avec le mode de profiling et de contrôle d’accès actuel. De plus, je pense que nous ne verrons jamais des plug-in applicatifs « sur étagère » (ce qui est bien dommage…) genre un plug-in XACML pour SharePoint, pour SAP, pour Apache, etc… ce qui sous-entend que chaque entreprise devra écrire et maintenir le module XACML pour chaque application importante.

Quels liens pour aller plus loin:

https://en.wikipedia.org/wiki/XACML

https://www.axiomatics.com/ (pour moi le seul fournisseur XACML qui respectent vraiment les standards OASIS avec Oracle)

https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=xacml