1. Authentication (Uwierzytelnienie)
a) BasicAuthentication, password-based Authentication - BRAK, POTRZEBA BY NP. DODAĆ CUSTOM MIDDLEWARE
b) Login-Based Authentication (SessionAuthentication) - DOMYŚLNY MECHANIZM W DJANGO
c) Remote User Authentication (Zdalne uwierzytelnianie)
d) JWT Token-Based Authentication (JWT authentication token)
e) OAuth2 Authentication
f) Custom Authentication Backends (Własne backendy)
2. Authorization (Autoryzacja)
a) login_required Decorator
b) DjangoModelPermissions
c) DjangoObjectPermissions (extends DjangoModelPermissions, additional lib needed like: django-guardian)
d) Customized Role-Based Access Control (RBAC) solution
1. Authentication
a) BasicAuthentication, password-based Authentication
b) Login-Based Authentication (SessionAuthentication)
c) Token-Based Authentication (Simple version from DRF: TokenAuthentication)
d) JWT Token-Based Authentication (JWT authentication token)
e) OAuth2/OpenID Connect
2. Authorization
a) Django's login_required Decorator (dedicated for Session-based typical Frontend Web APP, no good for APIs)
b) DRF builtin permission classes (AllowAny, IsAuthenticated, IsAdminUser, IsAuthenticatedOrReadOnly)
c) DjangoModelPermissions
d) DjangoObjectPermissions (extends DjangoModelPermissions, additional lib needed like: django-guardian)
e) Customized Role-Based Access Control (RBAC) solution