Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Spring social

270 views

Published on

Presentation Spring Social

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Spring social

  1. 1. RÉALISÉ PAR : FAGROUD FATIMA ZAHRA NABILA MORCHID Encadré par: DR. BENLAHMAR El Habib
  2. 2. Plan: Introduction Comment les API sont sécurisés ? Spring Social Créer des applications connectées avec Spring Social
  3. 3. Problématique  La gestion de l'enregistrement et de l'authentification des utilisateurs sur un site Web est difficile :  les utilisateurs doivent se souvenir d'une autre paire de nom d'utilisateur / mot de passe  les développeurs doivent implémenter une gestion sécurisée des informations d'identification utilisateur
  4. 4. Réseaux sociaux  Les réseaux sociaux sont désormais incontournables pour toute diffusion de contenu  On distingue:  réseaux professionnels  réseaux de partage  réseaux personnels  réseaux sociaux d’entreprise
  5. 5. Statistiques d’utilisation des réseaux sociaux
  6. 6. Login Social  les sites Web ont commencé à utiliser le login social  Les utilisateurs peuvent se connecter au site Web à l'aide de leurs comptes de réseaux sociaux
  7. 7. OAUTH  Open Authorization  protocole libre qui permet d’autoriser une application client à utiliser l’API sécurisée d’une autre application pour le compte d’un utilisateur  Dernière version est : OAUTH2
  8. 8. OAUTH
  9. 9. OAUTH
  10. 10. Rien de tout cela n'est votre problème… ... si vous utilisez Spring Social
  11. 11. Spring Social  Extension de Spring Framework  But : permettre et faciliter la connectivité avec d’autres systèmes fournisseurs de services (les réseaux sociaux) via leurs API
  12. 12. Famille du projet Spring Social
  13. 13. Principales composantes du Spring Social  ConnectController :  Exécute OAuth "danse  Gère les requêtes pour "/ connect / {providerId}  Redirige le navigateur vers la page d'autorisation de l'API.  Echange le code d'autorisation d'un jeton d'accès.  Recherche un ConnectionFactory pour un fournisseur d'API donné et l'utilise pour créer une connexion.  Stocke la connexion dans la base de données via un ConnectionRepository.
  14. 14. Principales composantes du Spring Social  Connection Factory Locator :  Recherche un ConnectionFactory par l'ID du fournisseur d'API  Connection Factories :  Crée des connexions.  Connaît également les spécificités relatives à la mise en œuvre OAuth d'un fournisseur d'API.  Connection Repository :  Stockages Connexions dans une base de données pour une utilisation future  Connaît également les spécificités relatives à la mise en œuvre OAuth d'un fournisseur d'API.  API Bindings :  Faire des demandes à une API pour le compte de l'application, en s'assurant que l'en-tête Autorisation est sur chaque demande
  15. 15. Composantes de connexion du Spring Social  ProviderSignInController :  un contrôleur Spring MVC qui effectue un flux similaire à celui de ConnectController, sauf qu'il entraîne finalement une authentification au lieu d'une nouvelle connexion.  SocialAuthenticationFilter :  un filtre de sécurité de spring qui se branche dans la chaîne de filtrage de Spring Security pour la connexion du fournisseur(avec les applications qui utilise spring security)
  16. 16. Étapes de connexion avec Spring Social  Création d’un projet source pour le code client fournisseur.  Développement ou intégration d’une liaison Java à l'API du fournisseur.  Création d’un modèle ServiceProvider.  Création d’un ApiAdapter qui mappe l'API native du fournisseur sur le modèle de connexion uniforme.  Création d’un ConnectionFactory
  17. 17. Création d'un projet source pour le code client fournisseur  Un module client Spring Social est un projet Java standard qui construit des jars uniques, par ex. Spring-social-twitter.jar.  Il est recommandé que le code d'un nouveau module client Spring Social réside dans le package de base org.springframework.social.  {ProviderId}, où {providerId} est un identifiant unique qui doit être attribué au fournisseur de services auquel on doit ajouter le support.  quelques exemples des fournisseurs déjà pris en charge par le cadre : Provider ID Artifact Name Base Package Facebook spring-social-facebook org.springframework.social.facebook Twitter spring-social-twitter org.springframework.social.twitter
  18. 18. Développement d'une liaison Java avec l'API du fournisseur  le type d'API de service central, Twitter, se trouve dans le paquet api ainsi que ses types d'opérations de support et les types d'objets de transfert de données.  La première implémentation de cette interface, TwitterTemplate, se trouve dans le paquetage api.impl.  le paquet de connexion contient les implémentations de différents SPI de connexion
  19. 19. Création d’un modèle ServiceProvider  Un client se liant à une API sécurisée telle que Facebook ou Twitter nécessite des informations d'autorisation d'utilisateur valides pour fonctionner  Ces lettres de créance sont généralement obtenues en demandant à votre demande d'autoriser une «danse» avec le fournisseur de services.  Spring Social fournit l'abstraction <A> ServiceProvider pour gérer cette "danse d'autorisation".
  20. 20. Configuration Spring Social (XML)
  21. 21. Rien de tout cela n'est votre problème… ... si vous utilisez Spring Boot
  22. 22. Spécifications des informations d’identification de l’application  On ajoute les informations d’indentification de l ’application dans le fichier application.properties Exemple: spring.social.auto_connection_views=true spring.social.facebook.appId=PUT_YOUR_FACEBOOK_APP_ID spring.social.facebook.appSecret=PUT_YOUR_FACEBOOK_SECRET_CODE

×