Partage
  • Partager sur Facebook
  • Partager sur Twitter

Empêcher l'accès d'un site

Partage de connexion et autres

    21 décembre 2022 à 22:49:38

    Bonjour,

    Je suis entrain de créer un site web (presque terminé) qui donne un accès full gratuit de 14 jours et qui devient payant pour certaines fonctionnalités à partir de 15 jours.

    Je ne m'étais pas posé la question avant, mais comment empêcher qu' une seule et même personne crée des mails indéfiniment pour accéder gratuitement aux fonctionnalités ?

    J'ai vu que Netflix utilise les moyens suivants :

    - Limiter le nombre de terminaux simultanément connectés: Netflix peut limiter le nombre de terminaux qui peuvent être connectés à un compte en mme temps. Par exemple, un abonnement standard permet à un seul terminal d'être connecté en même temps, tandis qu'un abonnement premium permet à plusieurs terminaux d'être connectés simultanément. Cela peut empêcher les utilisateurs de partager leur compte avec trop de personnes.

    - Demander aux utilisateurs de vérifier leur adresse email: Netflix peut demander aux utilisateurs de vérifier leur adresse email lors de l'inscription et lors de la connexion à leur compte. Cela peut aider à s'assurer que seuls les utilisateurs légitimes ont accès au compte et à empêcher les utilisateurs de partager leur compte avec des personnes qui n'ont pas accès à leur adresse email.

    - Utiliser des captchas: Netflix peut utiliser des captchas lors de la connexion à un compte pour vérifier que l'utilisateur est bien un humain et non un robot. Cela peut aider à empêcher les utilisateurs de partager leur compte avec des programmes automatisés.


    Comment limiter des connections simultanées sachant qu'on peux falsifier les données à envoyer ? 

    La vérifications de mail : si je prête mes informations de connexion à un ami et que je reçois une demande de confirmation, je n'ai qu'à valider la demande, puisque initialement je suis d'accord j'ai bien voulu lui fournir mes identifiants et mot de passe.

    quelqu'un a t-il une piste car je suis perdu à ce niveau.. 

    Merci d'avance.

    • Partager sur Facebook
    • Partager sur Twitter
      23 décembre 2022 à 17:05:43

      Bonjour,

      Même pour Netflix aujourd'hui c’est un sujet qu’ils n'arrivent toujours pas à résoudre entièrement.

      Cependant, la méthode la plus basique et simple dans un premier temps c'est de récupérer un identifiant venant du point de livraison utilisé par l'utilisateur, donc son modem. Et cet identifiant c'est l’IP. Malheureusement, VPN, VPS, IP changeantes et autres raisons t'empêcheront d'utiliser uniquement cette méthode pour t'assurer de l'unicité des utilisateurs. D'où l'utilité de combiner cela avec un cookie qui lui aussi peut-être manipulé alors attention.

      Limiter le nombre de terminaux simultanément connectés

      Je pense ici qu'ils s'envoient simplement une information depuis le front qui informe le back via API que la fenêtre est active avec les informations du compte. Lorsque le nombre de fenêtres activent autorisés est dépassé, il empêchent tout nouvel appel à l'API aux autres demandeurs sur ce compte tant qu'aucune autre fenêtre sur une IP différente n'est fermée. De plus, ils doivent combiner un ID dans un cookie pour identifier les différents appareils du PDL pour combiner avec l'IP. Exemple IP+IDCookie. Les deux combinés leurs permettent d'identifier un appareil précis par IP. Si le cookie n'existe plus ou pas (suppression ou nouveau device), ils le créent avant toute autre action et comptabilise cette combinaison IP/Cookie dans les appareil connectés.

      Demander aux utilisateurs de vérifier leur adresse email

      Très simple. Exemple. Lors d'une inscription :

      • Ajout d'une entrée en BDD avec un champ « isActive » à false et d'un champ « activationGUID » contenant un GUID unique.
      • Envoie d'un courriel avec un lien https://monsite/account/activate/guid (ou autre lien contenant le guid)
      • Au clic, dans ton controller tu passe isActive à true pour la ligne contenant le GUID en query/param de l'URI dans ta BDD

      Tu peux combiner avec une date de fin qui supprime la ligne de l'utilisateur en BDD s'il n'active pas son compte dans un délai raisonnable. Combinable avec un CRON qui s'exécute à une certaine heure de la journée pour faire ce nettoyage ou un EVENT MySQL.

      Tu oblige ce champs isActive à être vrai pour l'authentification et voilà.

      Utiliser des captchas: Netflix

      Il y a mille et une façon de se protéger des « bots ». Concernant les captchas tu as différents systèmes qui existent. Pour exemple, celui de google et sa documentation reCaptcha

      J'espère que ça t'aidera

      -
      Edité par MaxenceS 23 décembre 2022 à 17:09:43

      • Partager sur Facebook
      • Partager sur Twitter

      Empêcher l'accès d'un site

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown