Cześć, chciałbym dodać bardzo prostą autentykację do mojego projektu.
W bazie mam pole login (int), password(string)
w jednym z controllerów zwracam (po podaniu poprawnych danych)
token (który tworzy się w bazie, ma swój "deadline"), ale teraz chciałbym, aby ten token był wysyłany w wielu kontrolerach.
Co zrobić, aby uniknać ręcznego dodawania tokena i sprawdzania w każdym z zapytań (na poziomie kontrolera) czy token jest prawidłowy?
Kontroler autentykacji miałby metodę sprawdzającą, czy podany token zgadza się z id-usera (tu już jakaś logika, przykładowo każdy zalogowany user może korzystać z serwisu X, natomiast z serwisu Y, gdzie operuje na loginie (id) musi sie zgadzać id-usera i token)
chciałbym uniknąć takiej postaci w każdej z kontrolerów
public void DoSomething([FromHead]string token, [FromBody] SomeData data)
{
if(! (authService.Confirmed(token, data.UserId))
throw new SecuiryException(...)
}
mam BasicController po którym dziedziczą wszystkie inne controllery,
ale jak zrobić, żeby przy każdym zapytaniu w każdym controllerze magicznie działał mój basicController który by na starcie robił autentykację?