Słyszałem kilka powodów przechowywania haszowanych haseł w bazie danych. Jednak w interfejsach API uwierzytelnień są prawie zawsze dostępne opcje przechowywania haseł jako zwykłego tekstu lub szyfrowania.Dlaczego miałbyś chcieć przechowywać w bazie danych hasło w postaci zwykłego tekstu lub zaszyfrowane (nie hashed)?
Czy istnieje jakikolwiek powód, dla którego chcesz zapisać hasło jako zwykły tekst lub zaszyfrować w bazie danych?
Uwaga Aby być jasne, wiem, że przechowywanie nie zakodowane hasła są prawie zawsze złej. (O ile wiem, w każdym razie) Moje pytanie brzmi, dlaczego większość API uwierzytelniania zawierają opcje do przechowywania haseł zaszyfrowanych lub zwykły tekst.
Wyjątkowo kiepskie wymagania klientów są jedynym powodem, dla którego mogę myśleć. –
Nie ma żadnego dobrego powodu. Zawsze. Nie ma nic gorszego niż przesłanie zapomnianego formularza na stronie internetowej i podanie hasła pocztą e-mail. Ugh. –
Earlz - Aby wyjaśnić, pytasz, dlaczego ciągi połączeń zezwalają na zwykłe hasła tekstowe lub uwierzytelnianie IIS? Nie dlaczego programiści mogą to zrobić (jeśli wiedzą lepiej)? – Kobi