Powiel możliwe:
Strong password regex
Need RegEx for password strength?Sprawdzanie Struny do wystarczająco silnym hasłem
Właśnie zastanawiałem się, jaki jest najlepszy sposób, aby wyszukać ciąg znaków dla określonych kryteriów (wytrzymałość hasło do być specyficzne) można by osiągnąć.
Do tej pory mam prosty:
if(password.Length <= 7)
{
errorMessage = "Your password must be at least 8 characters.";
}
chciałbym móc sprawdzić literami, ale nie jestem pewien, co jest metoda lub procedura. Próbowałem Googling, przeszukując stronę: http://msdn.microsoft.com i przeszukując indeks mojej książki C# (C# Programowanie 3E, autorstwa Barbary Doyle), ale nie mogę znaleźć żadnego.
Wiem, że mógłbym spróbować ...:
foreach(char c in password)
{
if(c!='A' || c!='B' || c!='C' || c!='D' ..... || c!='Z')
{
errorMessage = "Your password must contain at least one capital letter";
}
}
... Ale to byłoby bardzo niechlujny i musiałaby być podwojona, aby sprawdzić, co najmniej jedną małą literę. Jestem pewien, że jest lepszy sposób, aby to zrobić, lub przynajmniej stenogram dla metody, którą pokazałem powyżej.
Ponadto, mogę zdecydować o sprawdzeniu hasła dla znaków specjalnych (wydaje się, że łatwiej zrobić to w powyższym przykładzie niż z dużymi i małymi literami, więc mogę po prostu użyć tego dla znaków specjalnych, jeśli zdecyduję się je wprowadzić). Jeśli istnieje łatwy (lub właściwy) sposób, aby to zrobić, również chciałbym mieć tę wiedzę.
W każdym razie dziękuję bardzo za pomoc, którą każdy może dać.
To nie jest odpowiedź, ale upewnij się, że rozumiesz http://xkcd.com/936/ i http://xkcd.com/792/. Polecam również przeczytanie http://www.codinghorror.com /blog/2010/12/the-dirty-truth-about-web-passwords.html i przeszukując witrynę Jeffa pod kątem innych powiązanych artykułów. Następnie spójrz na Wyrażenia regularne, aby zweryfikować odpowiednią długość/złożoność. – David
Zamiast serii zdań "jeśli ... to", prawdopodobnie będziesz chciał uruchomić hasło za pomocą wyrażeń regularnych. Spójrz na to [odpowiedź SO] (http://stackoverflow.com/questions/3131025/strong-password-regex). Myślę, że zapewnia to Wyrażenie Regularne, które pomoże ci. –
@DarinDimitrov Hej, dziękuję za to, nie widziałem tego linku, ponieważ nie wiedziałem, aby szukać regex (chociaż, wydaje mi się, że to oczywiste). Moje przeprosiny i za link! – VoidKing