CQRS Login Command, zwracany Token

CQRS Login Command, zwracany Token
0

cześć
mam pytanie jak poprawnie zaimplementować z taki problem

1 - dostaję user name i pass
2 - wywołuję komendę Login
3 - jeśli operacja się powiedzie to dostaje obiekt w którym jest no token, exp date i różne inne informacje

i teraz ten obiekt, w którym są te wszystkie dane zwrócić, zachować, tak aby były dostępne w całej aplikacji

dziękuję z góry

Aventus
  • Rejestracja:około 9 lat
  • Ostatnio:ponad 2 lata
  • Lokalizacja:UK
  • Postów:2235
0

Token powinien zostać zwrócony do klienta, który będzie go przekazywał przy każdym requescie. Po stronie klienta możesz go przechowywać w sesji.

Jeśli w Twoim przypadku klienta (czyli przeglądarki) nie ma to moze zastosuj jakiś singleton przedstawiający użytkownika.

Jesteś pewny że dobrze rozumiesz pojęcie CQRS? To nie ma zbyt wiele wspólnego z logowaniem...


Na każdy złożony problem istnieje rozwiązanie które jest proste, szybkie i błędne.
Zobacz pozostałe 12 komentarzy
WeiXiao
@somekind: W tym miejscu, gdzie podpisujesz/wystawiasz/tworzysz token, to od razu dodawałbym go do tego dictionary<string(token), datetime(wygaśnięcie)>, który dalej byłby wykorzystywany tak jak wyżej napisałem - thoughts?
WeiXiao
@somekind: czekaj 1 request = 1 token? ja myślałem o wystawianiu np. na 30min.
somekind
@WeiXiao: ja mówię o dostępie do tokena po stronie aplikacji na czas przetwarzania requestu, który musi być uwierzytelniony, zaś sam token może być potrzebny do przesłania do innych serwisów podczas przetwarzania tego żądania. W sensie mam somekindAPI, które umożliwia zakupy pluszowych ziemniaków, ale płatnościami zajmuje się jakiś paymentAPI, więc token przysłany w requeście muszę przesłać też tam, dlatego potrzebuje go mieć dostępnego w różnych warstwach swojego API.
somekind
Tobie jak rozumiem chodzi o tworzenie swojego mechanizmu uwierzytelniania, który gdzieś tokeny musi przechowywać i walidować. Ale to jest zupełnie inny problem.
WeiXiao
@somekind: chciałbym mieć większą kontrole nad tym https://auth0.com/blog/securing-asp-dot-net-core-2-applications-with-jwts/ niż, że samo [Authorize] ogarnia to wszystko jakoś pod spodem.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.