![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 52 Pomógł: 0 Dołączył: 19.08.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam
W jaki sposób zrobić, aby zablokować dostęp do strony po kilku błędnych logowaniach? PS Jeżeli zna ktoś jakieś skuteczne metody zabezpieczenia logowania (przy użyciu mysql) byłbym wdzięczny ![]() |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 1 Dołączył: 20.02.2007 Ostrzeżenie: (0%) ![]() ![]() |
tworzysz dwa pola 'niepoprawne_logowanie' (1,2,3), 'status_uzytkownika' (1,0)
i jeżeli uzytkownik niepoprawnie wypelni haslo to zwiekszasz pole 'niepoprawne_logowanie' o 1 jeżeli osiągnie wartość trzy to przestawiasz status_uzytkownika z 1 na 0 jeżeli jest to niezarejestrowany użytkownik dodajesz tymczasowy wiersz np. z jego IP
i robisz to co powyżej tylko blokujesz dostęp dla danego adresu IP |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 1 333 Pomógł: 137 Dołączył: 25.03.2008 Skąd: jesteś?? Ostrzeżenie: (0%) ![]() ![]() |
+cookie z info o banie.
Nie ma metody skutecznej w 100% więc musisz się z tym liczyć. -------------------- Mój blog - o wszystkim i niczym ale zazwyczaj związane z informatyką! ;-)
Githube Usługi spawalnicze i monterskie | Park linowy Lublin i Okunince |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 76 Pomógł: 8 Dołączył: 10.11.2010 Skąd: Polska,Katowice Ostrzeżenie: (0%) ![]() ![]() |
Ja bym to trochę inaczej zrobił.
account: bad_login int last_bad_login time i za każdy razem przy nie udanym logowaniu dodajesz +1 do bad_login. Przy logowaniu sprawdzasz. Jeśli bad_login = 2 i kolejna próba jest błędna, sprawdzasz czas ostatniego złego zalogowania. Bo wiadomo że złe logowania muszą odbyć się w jakimś wyznaczonym czasie np. 10 sekund. Jeśli masz bad_login =2 a kolejne jest prawidłowe zerujesz bad_login, a last_bad_login zostaje jako informacje kiedy ostatnio było błędne logowanie. Co do zabezpieczeń. Nie da się w 100% tego zrobić jak napisał ShadowD ale cookie też nie jest dobrą metodą, wtedy wystarczy tylko usunąć cookie i po sprawie. Bardziej bym strzelał w to że klient o danym ip nie może się logować na konta przez określony czas. Czyli jakaś tabela w mysql i po sprawie. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 158 Pomógł: 6 Dołączył: 7.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Według mnie najlepszym sposobem jest blokowanie danego kompa po IP. No bo wyobraź sobie sytuacje gdy ktoś puszcza bota w loginami użytkowników strony o ile gdzieś na stronie można je znaleźć i tym samym blokuje dostęp wszystkim użytkownikom. A blokując po IP zawsze jakoś to utrudniamy, chociaż oczywiście to tylko IP.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 748 Pomógł: 388 Dołączył: 21.08.2009 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
blokowanie całkowite jest trochę bez sensu i nie praktyczne, przecież takie zabezpieczenie robi się przed robotami, a nie przed ludźmi, według mnie najlepiej będzie zbierać do osobnej tabeli: ip oraz timestamp, jeżeli w ciągu ostatnich 24h było więcej niż 3 nie udane logowania, pojawia się dodatkowo recaptcha do przepisania
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 14:45 |