using SameBeat.Domain.Encje; namespace SameBeat.Application.Interfejsy; /// Wynik weryfikacji hasla wobec zapisanego hasha. public enum WynikWeryfikacjiHasla { Niepoprawne, Poprawne, /// Haslo poprawne, ale hash zapisany starszym algorytmem -- warto go przeliczyc. PoprawneWymagaRehaszowania } /// /// Opakowanie na Microsoft.Extensions.Identity.Core PasswordHasher -- ukryte za interfejsem, /// zeby Application nie zalezal od konkretnej biblioteki hashujacej. /// public interface IUslugaHaszowaniaHasel { string Haszuj(Uzytkownik uzytkownik, string hasloJawne); WynikWeryfikacjiHasla Weryfikuj(Uzytkownik uzytkownik, string hasloHash, string hasloJawne); }