Schematy autentykacji w servisach

Schematy autentykacji w servisach
KO
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 466
0

Cześć,
W funkcji ConfigureServices w pliku Startup.cs mamy przekazywany obiekt services, który ma metodę AddAuthentication, która zawiera następujące opcje:

Kopiuj
option.DefaultAuthenticateScheme = "Bearer";
option.DefaultScheme = "Bearer";
option.DefaultChallengeScheme = "Bearer";

Czy mogę prosić o wyjaśnienie do czego są te schematy - czy nazwa jest dowolna czy musi być jakaś określona? Nie bardzo rozumiem idei tych nazw i do czego służą.
Z góry bardzo dziękuję.

Aventus
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: UK
  • Postów: 2235
2

Scheme pozwala na rejestrowanie różnych rodzajów uwierzytelniania i autoryzacji. Tak jak w przypadku powyżej może to być token JWT (Bearer) ale dodatkowo możesz zarejestrować np. ciasteczka sesji (session cookies). Najlepiej używać do tego stałych zdefiniowanych w biblioetece, np. JwtBearerDefaults.AuthenticationScheme.

Więcej informacji znajdziesz w oficjalnej dokumentacji: https://docs.microsoft.com/en-us/aspnet/core/security/authentication/?view=aspnetcore-5.0#authentication-scheme

KO
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 466
0

Okey, dziękuję. Czyli nie mogę tutaj wymyślić swojej własnej nazwy tylko musi to być przewidziana wcześniej przez tą funkcję?

SO
  • Rejestracja: dni
  • Ostatnio: dni
2

Możesz i czasami nawet musisz.
Na przykład wtedy jak dodajesz dwa razy schemat JwtBearer.

Ale nazwy, które podajesz w tym miejscu muszą się zgadzać z nazwami których używasz przy dodawaniu schematów.

KO
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 466
0

Ok, dziękuję. Może to głupie pytanie, ale w którym miejscu dodaję schematy?

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.