1 Auteur : EL BAKKOURY Yassine Maître de stage : VANDERPERRE Pascal Superviseur
1 Auteur : EL BAKKOURY Yassine Maître de stage : VANDERPERRE Pascal Superviseur de stage : TAYMANS Rémy RAPPORT DE STAGE D’INSERTION PROFESSIONELLE Du 15 septembre au 30 octobre 2020 2 Remerciements Je remercie Marc Pirenne de m’avoir proposé un stage au sein de son entreprise et de m’avoir bien accueilli dans son équipe. Je tiens également à remercier Pascal Vanderperre, mon maître de stage, pour son investissement ainsi que son accompagnement et son suivi régulier. Enfin, je remercie Mr. Rémy Taymans, pour sa supervision de mon stage. 3 Table des matières Introduction ................................................................................................................................ 4 Description de l’entreprise ......................................................................................................... 5 Projets réalisés ........................................................................................................................... 7 Conclusion ................................................................................................................................ 21 Annexe ...................................................................................................................................... 22 Sources ..................................................................................................................................... 23 4 Introduction Au cours de la 2ème année du Master en sciences de l’ingénieur industriel à l’ECAM, les étudiants sont amenés à suivre un stage d’insertion en entreprise, d’une durée minimale de 6 semaines au début de l’année académique, dans le but de s’insérer dans l’entreprise en prenant connaissance de ses objectifs et de son organisation générale ainsi que de se familiariser au travail quotidien de l’ingénieur par la participation à un ou plusieurs projets concrets avec un haut degré d’autonomie et d’initiative en essayant également de mettre en pratique des connaissances acquises à l’ECAM. Mon stage s’est déroulé à Noviat, une entreprise IT située à Bruxelles. A cause des conditions de la crise du coronavirus, j’ai du travailler totalement à distance durant presque toute la durée du stage en prenant quotidiennement contact avec mon maître de stage. 5 Description de l’entreprise Noviat est une entreprise située à Bruxelles, fondée en 2009 par Mark Pirenne et Luc de Meyer. C’est une entreprise partenaire de Odoo SA, une autre entreprise belge ayant développé un ERP (Enterprise Resource Planning) open-source comprenant de très nombreux modules permettant de répondre à de nombreux besoins de gestion des entreprises. Odoo Odoo est un logiciel ERP open-source développé par l’entreprise belge portant le même nom (Odoo SA). Cet ERP est composé de plusieurs modules ayant pour but de simplifier la gestion des entreprises en leur permettant d’avoir toutes leurs données centralisées dans une seule base de données. Le logiciel Odoo existe en deux versions : Odoo Community qui est un logiciel gratuit contenant les fonctionnalités de base d’Odoo et Odoo Enterprise qui est payant et apporte des fonctionnalités supplémentaires à Odoo Community. Afin de s’adapter aux différents processus de productions des entreprises, Odoo SA fournit également un service de personnalisation pour Odoo Enterprise. Noviat, comme d’autres société partenaires de Odoo SA, fournit quant à elle des services de développement et de personnalisation pour le logiciel Odoo Community. Noviat est également membre de l’OCA (Odoo Community Association), une organisation qui promeut l'utilisation généralisée d'Odoo et soutient le développement collaboratif des fonctionnalités d'Odoo. Le fait d’être membre permet également à Noviat d’avoir une certaine renommée en tant qu’intégrateur Odoo. 6 Clients de l’entreprise De manière générale, Noviat aide des entreprises du secteurs privées en intégrant des solutions pour différents modules d’Odoo Community afin d’optimiser la gestion informatisée de l’ensemble de leurs processus commerciaux. Cependant, Noviat travaille également avec des sociétés du secteur public comme la Ville de Liège et la Commune d'Ixelles qui souhaitent intégrer l’ERP dans leur administration. Pour ce dernier type de client, Noviat a développé l'ARP (Administration Ressource Planning), un ERP conçu spécialement pour le secteur public. 7 Projets réalisés Objectifs du stage L’objectif général du stage consiste à participer à la réalisation d’un projet qui respecte les exigences de l’entreprise. Le projet principal de mon stage consistait à implémenter une authentification itsme dans un serveur Odoo version 13 communautaire standard. Cela m’a demandé de faire plusieurs recherches afin de comprendre le fonctionnement du protocole d’itsme et également de me familiariser un peu avec le logiciel Odoo. Suivi du stage Semaine 1 : installation de l’environnement + découverte Odoo Semaine 2 : recherche documentaire + prise de contact avec itsme Semaine 3 : tests avec la sandbox Semaine 4 : problème clé JWS Semaine 5 : simulation de l’authentification avec 2 serveurs externes pour contourner le problème de clé JWS Semaine 6 : recherche documentaire sur le protocole de signature Découverte de Odoo Mise en place de l’environnement : Avant de pouvoir commencer à travailler sur le projet du stage, il m’a fallu tout d’abord installer l’environnement de travail. Etant sur Windows 10, j’ai tout d’abord du installer le Virtual Box, un logiciel de virtualisation, afin de pouvoir travailler sur Ubuntu 20.04 en machine virtuelle. 8 Lors de l’installation du logiciel Odoo sur Ubuntu, j’ai dû également installer et configurer PostgreSQL, le système de gestion de base de données utilisé par Odoo. Création de module : Lorsque l’on veut créer un nouveau module à l’aide de la commande odoo-bin scaffold <nom du module> <emplacement du module>,un nouveau fichier est généré contenant les différent composant du module. Le module apparait également dans la liste des modules, après avoir relancer le serveur Odoo. La structure d’un module Odoo est basée sur le motif d'architecture logicielle MVC (modèle-vue-contrôleur). On retrouve trois composants essentiels dans ce type d’architecture : • Les modèles : contiennent les données à afficher, chaque type d’objet utilisé par un module a son propre modèle décrit dans un fichier python. • Les vues : affichent les données quelles reçoivent du contrôleur en fonctions des paramètres données. • Le contrôleur : gère les relations entre les modèles et les vues, chaque controlleur possède une URL correspondant à une page web. Découverte de itsme Avant de commencer le développement avec l’API de itsme, j’ai commencé par tester l’application sur mon smartphone et j’ai fait une analyse des différents cas d’utilisation de l’application. Qu’est-ce que itsme ? itsme est un système d’authentification sécurisé, développé par Belgian Mobile ID (un groupement de plusieurs banques belges et d'opérateurs télécoms), permettant de 9 prouver une identité d’approuver des transactions et de signer des documents de manière simple efficace et en toute sécurité sur de nombreuses plateformes numériques des autorités publiques ou d'entreprises privées. Actuellement, l’application est disponible en Belgique et au Luxembourg et compte plus de 2 millions d’utilisateurs (ce nombre avait augmenté de 30% durant les mois de mars, avril et mai marqués par la crise du coronavirus), soit près de 25% de la population active en Belgique. Cas d’utilisation : Concrètement, l’application itsme facilite grandement le processus d’authentification d’un utilisateur en lui permettant de se passer de la multitude d’identifiants, mots de passe et lecteurs de carte actuels. Avant de pouvoir s’identifié avec l’application, il faut tout d’abord avoir créer un compte à l’aide de la carte ID ou bancaires, du lecteur de cartes et du téléphone. Lors de la création du compte l’application demande à l’utilisateur de choisir un code itsme à 5 chiffres afin de sécuriser son identité numérique. Lorsqu’un utilisateur décide de se connecter sur un site web en utilisant l’authentification itsme, il clique sur le bouton dédié et est ensuite rediriger vers une page ou il doit s’identifier à l’aide du numéro de téléphone associé à son compte itsme. 10 Après avoir entré son numéro de téléphone, l’utilisateur reçoit une notification dans l’application itsme et 3 minutes pour confirmer l’action et doit ensuite entrer son code itsme à 5 chiffres. Si le code est correct l’utilisateur est identifié sur le site web. Dans certains cas (example: banque ING) : Pour certains sites, comme celui de la banque ING, le compte itsme doit être lié au compte du site avant de pouvoir s’authentifier avec l’application. A la différence du cas précédant, lorsque l’utilisateur clique sur le bouton d’authentification itsme, il n’est plus redirigé vers une page ou il doit indiquer son numéro de téléphone, et reçoit directement une notification sur l’application. 11 Description du protocole d’authentification Avant de pouvoir commencer l’intégration, j’ai prit contact avec les membres de l’équipe de développement de itsme afin de leur décrire notre projet dire que l’on souhaite éffectué des tests en utilisant leur sandbox. Après validation du projet, l’équipe nous envoie un fichier contenant 2 paramètres : un client_id et un service_code, qui seront utilisé lors de la configuration des requêtes. Il faut également avoir généré une clé privé et une clé public à l’aide de la commande yo itsme. La clé privée doit ensuite être signée afin d’obtenir un objet JWS qui sera encryptée à l’aide de la clé public pour finalement obtenir un objet JWE. 12 Diagramme de séquence : Requête d’autorisation (GET) : Lorsque l’utilisateur choisi de s’authentifier avec itsme, le site web envoi une requête qui va rediriger l’utilisateur vers la page d’identification itsme ou il devra entrer son numéro de téléphone. authorization_endpoint = https://e2emerchant.itsme.be/oidc/authorization • client_id = code fourni par itsme • response_type = "code" • scope = "openid service : [fourni par itsme]" • redirect_uri = lien vers lequel l’utilisateur est redirigé après authentification sur l’application Réponse de la requête : Après que l’utilisateur confirme l’action sur l’application itsme, il reçoit un code d’autorisation en étant redirigé vers l’url contenue dans le paramètre ‘redirect_uri’ : • code = authorization code Réponse uploads/Management/ rapport-de-stage-ma2.pdf
Documents similaires
-
24
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Jui 27, 2021
- Catégorie Management
- Langue French
- Taille du fichier 1.3392MB