Lightweight Directory Access Protocol (LDAP)
1
8/10
Lightweight Directory Access Protocol
PROTOCOLES / 1 juin 2017

Développé en 1993 par l’université du Michigan, LDAP signifie Lightweight Directory Access Protocol. C’est un protocole standard dont l’objectif est de gérer des annuaires. il permet d’accéder à des bases d’informations sur les utilisateurs d’un réseau par l’intermédiaire de protocoles TCP/IP. Les bases d’informations sont généralement relatives à des utilisateurs. Mais elles sont parfois utilisées à d’autres fins comme pour gérer du matériel dans une entreprise. L’objectif premier de ce protocole était de remplacer le protocole DAP en l’intégrant à la suite TCP/IP. Le protocole DAP (Directory Access Protocol) permettait d’accéder au service d’annuaire X.500 de l’OSI. Ainsi, DAP est devenu un annuaire natif dès 1995, ne servant plus uniquement à accéder à des annuaires de type X500. Voilà pourquoi LDAP est considéré comme une version allégée du protocole DAP, d’où son nom de Lightweight Directory Access Protocol. LDAP permet de définir la manière dont est établit la communication entre un client et le serveur. En conséquence, il fournit à l’utilisateur des commandes pour se connecter, se déconnecter, rechercher, comparer, créer, modifier ou effacer des entrées. LDAP va également intégrer des mécanismes de chiffrement, tels que SSL ou TLS, et d’authentification comme SASL. Couplés à des règles d’accès, ils permettront…

Vagrant
1
7.7/10
Vagrant
GÉNIE LOGICIEL / 27 mai 2017

Vagrant est un logiciel libre et open-source pour la création et la configuration d’environnements virtualisés. En effet, il permet de créer des machines virtuelles qui seront utilisées pendant la phase de développement d’une application. Elles permettent d’obtenir l’environnement souhaité sans pour autant changer la configuration de la machine du développeur. De plus, la configuration de la machine virtuelle sera simple à exporter ou à importer. En effet, le logiciel va stocker la description complète de l’environnement de développement dans un fichier écrit en Ruby. Développé par Mitchell Hashimoto et John Bender depuis début 2010, le groupe HashiCorp a été créé afin d’assurer le développement du logiciel à temps plein. Ce logiciel s’avère être un outil qui simplifie la création ainsi que la gestion d’environnements virtualisés. Vagrant permet de travailler dans un environnement reproductible avec les mêmes versions quelles que soient les dépendances. Il s’avère d’ailleurs compatible avec la majorité des systèmes d’exploitation actuels, puisqu’il utilise le principe de virtualisation. Ainsi, un développeur travaillant sous Mac aura accès au même environnement qu’un développeur travaillant sous Windows ou , et ceci en conservant son IDE favori. Comment Vagrant fonctionne-t-il ? Vagrant est une surcouche développée sur des solutions de virtualisation telles que…

Web services REST
1
8.7/10
Web Services REST
WEB SERVICES / 25 mai 2017

Les web services REST font partie de la grande famille des services basés sur une technologie permettant à des applications de dialoguer à distance via Internet. Ceci se fait indépendamment des plates-formes et des langages sur lesquelles elles reposent. Pour ce faire, les services Web s’appuient sur un ensemble de protocoles Internet très répandus (XML, HTTP), afin de communiquer. Cette communication est basée sur le principe de demandes et réponses, effectuées avec des messages XML. Les services web sont décrits par des documents WSDL (Web Service Description Language), qui précisent les méthodes pouvant être invoquées, leurs signatures et les points d’accès du service (URL, port). Les services Web sont accessibles via SOAP, la requête et les réponses sont des messages XML transportés sur HTTP. Il existe probablement autant de définitions des Web Services que d’entreprises qui les créent. Mais presque toutes ces définitions ont un certain nombre de points communs. Premièrement, les services web proposent aux utilisateurs du Web des fonctionnalités pratiques grâce à un protocole Web standard (dans la plupart des cas, le protocole utilisé est SOAP). Deuxièmement, les Web Services offrent un moyen de décrire leurs interfaces suffisamment en détail pour permettre à un utilisateur de créer une…

Architectures n-tiers
1
7.7/10
Architectures N-tiers
ARCHITECTURE LOGICIELLE / 25 mai 2017

Les architectures n-tiers ont été pensées pour pallier aux limites des architectures trois tiers et concevoir des applications puissantes et simples à maintenir. Ce type d’architecture permet de distribuer plus librement la logique applicative, ce qui facilite la répartition de la charge entre tous les niveaux. Cette évolution des architectures trois tiers met en œuvre une approche objet pour offrir une plus grande souplesse d’implémentation et faciliter la réutilisation des développements. Théoriquement, ce type d’architecture supprime tous les inconvénients des architectures précédentes. Elle permet l’utilisation d’interfaces utilisateurs riches et sépare nettement tous les niveaux de l’application. Elle offre de grandes capacités d’extension et facilite la gestion des sessions. L’appellation “n-tiers” peut laisser penser que cette architecture met en œuvre un nombre indéterminé de niveaux de services. Mais ces niveaux restent à un nombre maximum de trois (les trois niveaux d’une application informatique). En fait, l’architecture n-tiers qualifie la distribution d’applications entre de multiples services et non la multiplication des niveaux de service. Ainsi, les trois niveaux d’abstraction d’une application sont toujours pris en compte. Rôle de la POO dans les architectures n-tiers Cette distribution est facilitée par l’utilisation de composants métier, spécialisés et indépendants, introduits par les concepts orientés objets…

Google App Engine
1
6.5/10
Google App Engine
GÉNIE LOGICIEL / 24 mai 2017

Une “Platform as a Service”, ou PaaS, est une catégorie de services de Cloud computing qui fournit la plateforme et l’environnement informatique nécessaire aux développeurs pour mettre en place leurs différents services et applications sur Internet. Google App Engine est la solution de PaaS (Platform as a Service) fournie par Google. Le but principal d’App Engine est d’offrir la mise à l’échelle automatique des applications. Ceci peut se faire en allouant les ressources en fonction de la fluctuation du trafic. App Engine fournit un environnement de développement Java basé sur la technologie standard Servlet. Google App engin fournit également une solution de persistance non relationnelle adaptée aux applications “dans le cloud”. Les nombreux services App Engine (Mail, Memcache, Tasks, Users…) offrent ainsi un écosystème riche. C’est cet écosystème qui facilite l’hébergement et le développement d’applications en bénéficiant de l’infrastructure de Google. Google App Engine constitue une alternative rationnelle à des besoins de plus en plus courants : haute disponibilité, réplication, pics de fréquentation saisonniers. Google App Engine est gratuit jusqu’à un certain niveau de ressources consommées. Actualités récentes de Google App Engine En mars 2017, Google a annoncé qu’une nouvelle version révisée d’App Engine était disponible. L’annonce a eu lieu…