Contrôle d'accès avec

Varnish Plus
Un coup d'oeil sur certains défis et considérations
Carlos Abalde, Roberto Moreda
{caba...
Agenda
๏ Notre voyage particulier pour la conception et
le déploiement de solutions de contrôle d'accès
basé sur Varnish P...
Qui sommes nous?
๏ Allenta Consulting
‣ http://www.allenta.com
๏ Partenaire d’intégration Varnish Software
๏ Spécialisée s...
Theo rencontre
Varnish Paywall
Salut, je suis Theo!
Qui est Theo?
๏ Selon Wikipedia, Théophraste Renaudot est le nom du
fondateur de la publicité et de la presse française
๏ ...
Theo a quelques souhaits
๏ Transition vers un modèle par abonnement
‣ Modèle d'abonnement flexible / extensible
- Abonnemen...
… beaucoup de souhaits!
๏ Composants Plug & Play séparés
‣ Des changements minimes au backend existant
๏ Solution haute pe...
Qu’est ce que c’est
Varnish Paywall?
๏ Une partie de Varnish Plus
‣ Logique de contrôle d'accès déplacée au niveau de
la m...
Qu’est ce que c’est
vraiment Varnish Paywall?
๏ Certaines sous-routines VCL , quelques VMODs
OSS et un VMOD spécifique de c...
Au-delà des journaux
๏ Varnish Paywall n’est pas un produit spécifique aux
médias traditionnels
๏ Varnish Paywall signifie l...
Varnish Paywall est aussi
pour…
๏ Alice, qui gère un site qui offre certains rapports
seulement aux clients premium
๏ Bob, ...
Theo rencontre Cosme
Qui est Cosme?
๏ Cosme est un ingénieur travaillant chez Allenta
๏ Il a travaillé sur des solutions de contrôle d'accès
ba...
Comptage anonyme
๏ “Je ne veux pas déranger mes lecteurs
occasionnels. Faisons le NYT style. Exiger
l’authentification seul...
Comptage anonyme
๏ Comptage basé sur les cookies n’est pas resistant
‣ Est-ce un réel problème du point de vue de
l'entrep...
Comptage anonyme
๏ Comptage côté serveur
‣ https://github.com/Valve/fingerprintjs2
๏ Pas une vraie solution
‣ Aussi facilem...
État du paywall
๏ “Où sont stockées les données de comptage?”
๏ “L'équipe de systèmes a posé des questions sur
l'évolutivi...
État du paywall
๏ Memcached
‣ https://github.com/varnish/libvmod-memcached
๏ Redis
‣ https://github.com/carlosabalde/libvm...
État du paywall
๏ Twemproxy
‣ https://github.com/twitter/twemproxy
‣ Proxy avec sharding léger pour MC et Redis
๏ Redis Se...
État du paywall
๏ Redis Cluster
‣ http://redis.io/topics/cluster-tutorial
‣ Sharding et réplication automatique pour Redis...
SEO
๏ “Google devrait être capable d'indexer tout le
contenu de mon site”
๏ “Il suffit de détecter le robot par la lecture d...
SEO
๏ Google punit la dissimulation de contenu
๏ FCF exige que tous les utilisateurs qui cliquent sur un
résultat de reche...
SEO
๏ Les utilisateurs peuvent avoir accès , même lorsque
leurs quotas sont épuisés ou ils ne se sont même pas
authentifiés...
Et bien plus…
๏ Exclusions de contrôle d'accès
๏ Détection de la fraude
๏ Stratégie d’essai et déploiement
๏ Paywall API e...
Conclusions
Conclusions
๏ Varnish Paywall est un puissant kit de paywall
‣ Grande flexibilité
‣ Contrôle d'accès fonctionnant à une vit...
Merci!
Comment fonctionne
Varnish Paywall ?
๏ Headers HTTP personnalisées
‣ X-Pw-Access-Control…
๏ Services API
‣ Service d'autor...
Exclusions
๏ “Les adresses IP de ces sociétés devraient
complètement contourner le paywall. Nous
avons des accords B2B ave...
Exclusions
๏ Il est tout à fait raisonnable de contourner la
logique du paywall basé sur:
‣ Une ACL Varnish
‣ Certains HTT...
Détection de la fraude
๏ “Que faire si un certain client achète un
abonnement illimité, puis partage avec tous ses
amis su...
Détection de la fraude
๏ Vous pouvez être en mesure de détecter la fraude dans
votre composant de gestion des utilisateurs...
Allenta
Allenta
Allenta
Allenta
Allenta
Prochain SlideShare
Chargement dans…5
×

Allenta

252 vues

Publié le

Paris Summit

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
252
Sur SlideShare
0
Issues des intégrations
0
Intégrations
3
Actions
Partages
0
Téléchargements
7
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Allenta

  1. 1. Contrôle d'accès avec
 Varnish Plus Un coup d'oeil sur certains défis et considérations Carlos Abalde, Roberto Moreda {cabalde,moreda}@allenta.com Paris, Varnish Summit 2015
  2. 2. Agenda ๏ Notre voyage particulier pour la conception et le déploiement de solutions de contrôle d'accès basé sur Varnish Plus ๏ Contenu ‣ Varnish Paywall ‣ Défis et considérations ‣ Conclusions
  3. 3. Qui sommes nous? ๏ Allenta Consulting ‣ http://www.allenta.com ๏ Partenaire d’intégration Varnish Software ๏ Spécialisée sur Varnish Paywall ‣ Projets en Italie, Irlande et Argentine
  4. 4. Theo rencontre Varnish Paywall
  5. 5. Salut, je suis Theo!
  6. 6. Qui est Theo? ๏ Selon Wikipedia, Théophraste Renaudot est le nom du fondateur de la publicité et de la presse française ๏ Il est aussi le héros de cette présentation ๏ Theo est encore un autre éditeur inquiet de la baisse des revenus publicitaires dans les médias en ligne ‣ Evolution des modèles traditionnels basés sur des annonces? ‣ Instrument alternatif de monétisation de contenu en ligne?
  7. 7. Theo a quelques souhaits ๏ Transition vers un modèle par abonnement ‣ Modèle d'abonnement flexible / extensible - Abonnements au compteur (metered subscriptions) - Abonnements partiels (partial subscriptions) ๏ Modèle freemium ๏ Contenu propre (owned contents)
  8. 8. … beaucoup de souhaits! ๏ Composants Plug & Play séparés ‣ Des changements minimes au backend existant ๏ Solution haute performance et évolutive ‣ Ne dégradez pas UX courante ๏ Solution sur site ‣ Un contrôle complet du produit
  9. 9. Qu’est ce que c’est Varnish Paywall? ๏ Une partie de Varnish Plus ‣ Logique de contrôle d'accès déplacée au niveau de la mise en cache ‣ Livraison du contenu payant rapide et flexible ๏ Solution double “boîte à outils” ‣ Puissant niveau de contrôle d'accès ‣ Technologie de mise en cache avancée
  10. 10. Qu’est ce que c’est vraiment Varnish Paywall? ๏ Certaines sous-routines VCL , quelques VMODs OSS et un VMOD spécifique de contrôle d'accès ๏ En option, ‣ Certain stockage haute performance ‣ Certains compteurs Varnish Custom Statistics ‣ Certains atouts JavaScript
  11. 11. Au-delà des journaux ๏ Varnish Paywall n’est pas un produit spécifique aux médias traditionnels ๏ Varnish Paywall signifie le déplacement du contrôle d'accès à la limite du niveau de la mise en cache ‣ Exécuter la logique de contrôle d'accès à la vitesse Varnish Plus ‣ Améliorer le hit-ratio ‣ Simplifier la logique de backend
  12. 12. Varnish Paywall est aussi pour… ๏ Alice, qui gère un site qui offre certains rapports seulement aux clients premium ๏ Bob, qui a été demandé d'accélérer un service payant de streaming de musique ๏ Emma, qui dirige un site de photos limité à 5 téléchargements par jour et par utilisateur authentifié ๏ …
  13. 13. Theo rencontre Cosme
  14. 14. Qui est Cosme? ๏ Cosme est un ingénieur travaillant chez Allenta ๏ Il a travaillé sur des solutions de contrôle d'accès basé sur Varnish Plus depuis quelques années ๏ Cosme discute avec Theo de certains défis et considérations habituels lors de l'ajout d'une paywall à un site existant ‣ Comptage anonyme, des options de stockage, SEO…
  15. 15. Comptage anonyme ๏ “Je ne veux pas déranger mes lecteurs occasionnels. Faisons le NYT style. Exiger l’authentification seulement après que 10 articles aient été consultés pendant le mois en cours” ๏ “J'ai lu que le paywall du NYT n’est pas resistant, utilisant un bookmarklet simple. Est-ce le cas?” ๏ “Que pensez-vous de l'aide des empreintes digitales du navigateur pour identifier les utilisateurs anonymes ?” “Faisons le NYT style”
  16. 16. Comptage anonyme ๏ Comptage basé sur les cookies n’est pas resistant ‣ Est-ce un réel problème du point de vue de l'entreprise? ‣ Limiter le contenu éligible pour l'accès anonyme - Accent sur l'engagement des clients ๏ Sauvegardes de cookies dans le stockage local, DOM… - https://github.com/samyk/evercookie Comptage basé sur les cookies
  17. 17. Comptage anonyme ๏ Comptage côté serveur ‣ https://github.com/Valve/fingerprintjs2 ๏ Pas une vraie solution ‣ Aussi facilement contournable ‣ Collisions - Appareils mobiles, ordinateurs clonés… Empreintes digitales du navigateur
  18. 18. État du paywall ๏ “Où sont stockées les données de comptage?” ๏ “L'équipe de systèmes a posé des questions sur l'évolutivité du stockage pour l'état du paywall. Est ce le cas or qu’en est-il de ça?” ๏ “Et que dire de HA? Quelles sont les
 options ici?” “Où sont stockées les données de comptage?”
  19. 19. État du paywall ๏ Memcached ‣ https://github.com/varnish/libvmod-memcached ๏ Redis ‣ https://github.com/carlosabalde/libvmod-redis ‣ Persistance ‣ API plus riche et puissance de script LUA Memcached vs. Redis
  20. 20. État du paywall ๏ Twemproxy ‣ https://github.com/twitter/twemproxy ‣ Proxy avec sharding léger pour MC et Redis ๏ Redis Sentinel ‣ http://redis.io/topics/sentinel ‣ Surveillance, notifications et basculement automatique Évolutivité et des options HA
  21. 21. État du paywall ๏ Redis Cluster ‣ http://redis.io/topics/cluster-tutorial ‣ Sharding et réplication automatique pour Redis ๏ Dynomite ‣ https://github.com/Netflix/dynomite ‣ Mise en œuvre de Dynamo pour MC et Redis Évolutivité et des options HA
  22. 22. SEO ๏ “Google devrait être capable d'indexer tout le contenu de mon site” ๏ “Il suffit de détecter le robot par la lecture du header HTTP User Agent, vous vérifiez l'adresse IP en utilisant le DNS VMOD, et laissez 
 l'accès à tous les contenus” “Autoriser l'accès à Google à tous les contenus”
  23. 23. SEO ๏ Google punit la dissimulation de contenu ๏ FCF exige que tous les utilisateurs qui cliquent sur un résultat de recherche de Google devraient être autorisés à voir le texte intégral du contenu qu'ils essaient d'accéder ‣ Ce texte doit être identique au contenu qui a été montré au robot Google le temps d'indexation ‣ Les éditeurs sont autorisés à limiter le nombre 
 d'accès en vertu de la politique FCF à 5 accès par utilisateur chaque jour “First Click Free Policy” de Google pour la recherche Web
  24. 24. SEO ๏ Les utilisateurs peuvent avoir accès , même lorsque leurs quotas sont épuisés ou ils ne se sont même pas authentifiés ๏ Exclusion contournable basée sur header Referrer ‣ Problème bien connu de FT et d'autres journaux ‣ Qu'en est-il des teasers? - Même URL réécrite en interne par Varnish - Pas utile pour des contenus freemium Implications de FCF
  25. 25. Et bien plus… ๏ Exclusions de contrôle d'accès ๏ Détection de la fraude ๏ Stratégie d’essai et déploiement ๏ Paywall API et agent ๏ Statistiques d'utilisation ๏ …
  26. 26. Conclusions
  27. 27. Conclusions ๏ Varnish Paywall est un puissant kit de paywall ‣ Grande flexibilité ‣ Contrôle d'accès fonctionnant à une vitesse Varnish ๏ Double solution ‣ Technologie de la mise en cache avancée ‣ Puissant niveau de contrôle d'accès
  28. 28. Merci!
  29. 29. Comment fonctionne Varnish Paywall ? ๏ Headers HTTP personnalisées ‣ X-Pw-Access-Control… ๏ Services API ‣ Service d'autorisation… ๏ Cookies avec signature cryptographique ๏ Stockage haute performance
  30. 30. Exclusions ๏ “Les adresses IP de ces sociétés devraient complètement contourner le paywall. Nous avons des accords B2B avec eux” ๏ “Les vues web utilisées par nos applications mobiles officielles devraient également contourner le paywall” ๏ “Tout clic sur le contenu paywalled fait de Facebook ou Twitter devrait également contourner le paywall” “Et maintenant quelques exceptions”
  31. 31. Exclusions ๏ Il est tout à fait raisonnable de contourner la logique du paywall basé sur: ‣ Une ACL Varnish ‣ Certains HTTP headers ad-hoc avec une signature HMAC générée en utilisant un secret partagé entre Varnish et les applications mobiles ๏ Contourner la logique du paywall basée sur le header referrer HTTP est faible et doit être analysée avec soin Méfiez-vous des faux HTTP headers
  32. 32. Détection de la fraude ๏ “Que faire si un certain client achète un abonnement illimité, puis partage avec tous ses amis sur Facebook?” ๏ “Que faire si un bureau utilisant un proxy NAT achète un seul abonnement illimité à tous les employés dans le bâtiment?” “Partage d’abonnements au compteur”
  33. 33. Détection de la fraude ๏ Vous pouvez être en mesure de détecter la fraude dans votre composant de gestion des utilisateurs ‣ Limite du nombre / taux de sessions par utilisateur ‣ Forcer des validations supplémentaires / bloquer des utilisateurs quand un comportement suspect est détecté ๏ Varnish Paywall peut aider si vous n'êtes pas capable
 de faire cela ‣ Redis “sorted set” pourrait limiter le nombre de SIDs et IPs par utilisateur pendant un certain laps de temps Limitation du taux

×