0

Je travaille sur une section de connexion pour un nouveau projet, ce qui nécessite une authentification de l'utilisateur.Authentification de base HTTP - durée d'essai maximale autorisée?

La façon la plus simple de procéder serait d'utiliser l'authentification de base HTTP. Je l'ai bien implémenté sur le serveur Apache, ssl a également été intorudced pour fournir une meilleure sécurité.

Cependant, une chose me préoccupe, c'est qu'il semble que l'authentification de base ne s'arrêterait pas, peu importe le nombre de fois qu'un utilisateur n'a pas fourni un crentential de nom d'utilisateur/mot de passe valide. Je continuerais à demander ...

Je suppose, puisque chaque fois que le serveur web reçoit les informations d'identification, il doit passer par le fichier de mot de passe pour rechercher si une correspondance existe ou non, il faut une certaine quantité de serveur Ressources. Ma question est, serait-ce un risque de sécurité d'avoir des attaques de DoS par des utilisateurs malveillants?

Si oui, comment puis-je arrêter cela? En ajoutant une configuration/fonctionnalité sur Apache? Ou juste échanger avec une autre méthode d'authentification? Digérer l'authentification?

Un grand merci aux conseils à l'avance.

Répondre

1

Étape 1: Lisez ceci: http://en.wikipedia.org/wiki/Denial-of-service_attack#Prevention_and_response

Étape 2: mettre en œuvre. Créer un ensemble de compteurs indexés par adresse IP. Chaque échec d'une adresse IP augmente le compteur. Le compteur est le temps de sommeil - en secondes. 10 tentatives échouées signifient 10 secondes pour la réponse 401.

+0

Merci pour la suggestion, va y aller certainement et comprendre plus. –

1

Gérez l'authentification http vous-même, tenez compte du nombre de connexions basé sur l'adresse IP (sur une période donnée), puis renvoyez simplement 401 si les limites sont atteintes.

mod_perl 2.0: http://perl.apache.org/docs/2.0/user/handlers/http.html#toc_PerlAuthenHandler

mod_php: http://no.php.net/manual/en/features.http-auth.php

mod_python: http://www.modpython.org/live/mod_python-3.2.8/doc-html/tut-more-complicated.html

+0

Merci pour les liens, je n'ai jamais su où chercher les conseils :) –

Questions connexes