Zestawy rozmówBlog

Twoja wymarzona praca? Lets Git IT.
Interaktywna platforma przygotowująca do rozmów technicznych dla nowoczesnych programistów.

XGitHub

Platforma

  • Kategorie

Zasoby

  • Blog
  • O aplikacji
  • FAQ
  • Sugestie

Prawne

  • Polityka prywatności
  • Regulamin

© 2026 LetsGit.IT. Wszelkie prawa zastrzeżone.

LetsGit.IT/Kategorie/Bezpieczeństwo
Bezpieczeństwoeasy

Uwierzytelnianie vs autoryzacja — jaka jest różnica, z przykładami?

Tagi
#authn#authz#security
Wróć do kategoriiPrzejdź do quizu

Odpowiedź

Uwierzytelnianie potwierdza tożsamość użytkownika (np. hasło, OAuth, MFA). Autoryzacja decyduje, do czego ma dostęp (np. rola może edytować faktury). AuthN jest przed AuthZ.

Odpowiedź zaawansowana

Głębiej

AuthN odpowiada na pytanie "kim jesteś?", a AuthZ na "czy masz prawo?":

  • AuthN: hasła, SSO, MFA, urządzenia lub tokeny.
  • AuthZ: role (RBAC), atrybuty (ABAC), sprawdzanie własności, granice tenantów.
  • Autoryzację trzeba sprawdzać przy każdym żądaniu, nie tylko przy logowaniu.
  • Least privilege i jawne deny ograniczają blast radius.

Przykłady

Użytkownik loguje się przez OAuth (AuthN), dostaje token, a API sprawdza rolę i własność zasobu (AuthZ):

GET /invoices/123
AuthN: poprawny token dla user=42
AuthZ: user=42 jest właścicielem invoice=123 lub ma rolę finance_admin

Typowe pułapki

  • Zaufanie tylko do sprawdzeń po stronie klienta.
  • Zbyt szerokie role bez kontroli dostępu do zasobu.
  • Niespójne 403/401 (wycieki informacji).

Pytania uzupełniające na rozmowie

  • Kiedy RBAC, a kiedy ABAC?
  • Jak egzekwujesz izolację tenantów?
  • Jak testujesz reguły autoryzacji?

Powiązane pytania

Bezpieczeństwo
Jak bezpiecznie przechowywać hasła?
#passwords#hashing#security
Bezpieczeństwo
Czym jest threat modeling i jak zrobić lekki threat model dla funkcji?
#threat-modeling#risk#security
DevOps
Jakie są dobre praktyki dla bezpiecznych i małych obrazów Dockera?
#docker#containers
#security
DevOps
Konfiguracja vs sekrety — jak nimi zarządzać w DevOps?
#secrets#config#security