ASP.NET logowanie po kliknieciu w link na e-mail.

0

Witam
Dostałem "bojowe" zadanie od mojego szefa

Klient loguje się -> dostaje E-Mail z kodem czy linkiem ważnym przez minutę i oczywiście jednorazowym. Wpisuje kod czy też klika na link i dopiero wtedy może wejść do katalogu. Zalogować może się tylko raz. Jeśli zamknie krzyżykiem (jeśli się da to komunikat) albo zwiesi mu się komputer to dzwoni z prośbą o odblokowanie. Tak jak rozmawialiśmy przez telefon. Czas ważności klucza powinien być regulowany gdzieś w opcjach programu, tak jak w programie musi być opcja „ODBLOKUJ KLIENTA”.

i tak się zastanawiam jak to zrobić bo nad logiką się nie zastanawiam bo jej tu nie ma przynajmniej dla mnie. Tak sobie wymyśliłem ze przy kliknięciu klawisza loguj bedzie wysyłany na maila login haslo i dokładna godzina ale to wszystko zakodowane a po kliknieciu linka takiego bedzie to wszystko odkodowywane i data bedzie porównywana z aktualna data czy nie przekroczono minuty. Ale zeby taki link byl jednorazowy to moze do jakieś tabelki zapisywać te linki ("zakodowane dane") i sprawdzać czy już takiego czegoś nie ma. Może ktoś robił coś takiego podobnego choć wątpie i zna może jakiś prostszy sposób tak jak np. z generowaniem linku aktywacyjnego na e-mail podczas rejestracji gdzie w zasadzie nic nie trzeba robić tylko zaznaczyć opcje zeby tak to środowisko asp.net (kontrolka do rejestracji) robiła.

Pozdrawiam

2

tak sobie wymyśliłem ze przy kliknięciu klawisza loguj bedzie wysyłany na maila login haslo i dokładna godzina ale to wszystko zakodowane a po kliknieciu linka takiego bedzie to wszystko odkodowywane i data bedzie porównywana z aktualna data czy nie przekroczono minuty.

A co jeśli ktoś zmieni datę na swoim systemie? Nie wiem co przesyłasz w tym linku, ale wnioskuje że to dość wrażliwe dane - w takim razie zabezpieczenie 'client side' to zły pomysł...

Hmm, mógłbyś zapisać do jakiejś tabelki zapisywać trójkę link -> data wysłania -> czy ktoś wszedł. Lepszego pomysłu nie mam, co nie znaczy że się lepiej nie da.

0

Nie wiem czy wysyłanie tego mailem to jest dobra opcja bo 1min to niekiedy się mi maile nie odświeża na skrzynce.

Ale jak tak chcesz zrobić to pomysł MSM wydaje się dość dobry.

Lepszą opcją byłyby kody wysyłane przez sms, tak jak to jest w przypadku przelewów bankowych.

1 użytkowników online, w tym zalogowanych: 0, gości: 1