Authentication
This package contains views related to login, logout and password reset functionality as well as 2FA authentication:
Account Activation View
- class integreat_cms.cms.views.authentication.account_activation_view.AccountActivationView(**kwargs)[source]
Bases:
PasswordResetConfirmView
View to set a new password and activate and account.
- dispatch(*args: Any, **kwargs: Any) HttpResponse [source]
The view part of the view. Handles all HTTP methods equally.
- Parameters:
*args (Any) – The supplied arguments
**kwargs (Any) – The supplied keyword arguments
- Returns:
The rendered template response or a redirection to the login page
- Return type:
HttpResponse
- form_valid(form: SetPasswordForm) HttpResponse [source]
If the form is valid, show a success message.
- Parameters:
form (SetPasswordForm) – The supplied form
- Returns:
A redirection to the
success_url
- Return type:
HttpResponse
- success_url = '/login/'[source]
If the password was successfully reset, redirect to the login
- template_name = 'authentication/account_activation_form.html'[source]
The template which should be rendered
- token_generator = <integreat_cms.cms.utils.account_activation_token_generator.AccountActivationTokenGenerator object>[source]
The generator for activation tokens (use
AccountActivationTokenGenerator
instead of the default one to make sure password reset tokens are not accepted for account activation and vice versa)
Login View
- class integreat_cms.cms.views.authentication.login_view.LoginView(**kwargs)[source]
Bases:
LoginView
View to extend the default login behavior from
LoginView
with multi-factor-authentication.- form_valid(form: AuthenticationForm) HttpResponseRedirect [source]
This function overwrites
form_valid()
which is called if the login form is valid. In case the user has mfa-keys configured, the login is delegated toWebAuthnLoginView
. Else, the default methodlogin()
is used to log the user in. After that, the user is redirected toLOGIN_REDIRECT_URL
.- Parameters:
form (AuthenticationForm) – User login form
- Returns:
Redirect user to mfa login view or to
LOGIN_REDIRECT_URL
- Return type:
HttpResponseRedirect
- redirect_authenticated_user = True[source]
A boolean that controls whether or not authenticated users accessing the login page will be redirected as if they had just successfully logged in.
- template_name = 'authentication/login.html'[source]
The template to render (see
TemplateResponseMixin
)
Logout View
- class integreat_cms.cms.views.authentication.logout_view.LogoutView(**kwargs)[source]
Bases:
LogoutView
View to log off a user
- dispatch(request: HttpRequest, *args: Any, **kwargs: Any) HttpResponse [source]
This function sends message, if logout was successful
- Parameters:
request (HttpRequest) – The current request
*args (Any) – The supplied arguments
**kwargs (Any) – The supplied keyword arguments
- Returns:
passes form to dispatch function
- Return type:
HttpResponse
Password Reset Confirm View
- class integreat_cms.cms.views.authentication.password_reset_confirm_view.PasswordResetConfirmView(**kwargs)[source]
Bases:
PasswordResetConfirmView
View to confirm that the password should be reset
- dispatch(*args: Any, **kwargs: Any) HttpResponse [source]
The view part of the view. Handles all HTTP methods equally.
- Parameters:
*args (Any) – The supplied arguments
**kwargs (Any) – The supplied keyword arguments
- Returns:
The rendered template response or a redirection to the password reset page
- Return type:
HttpResponse
- form_valid(form: SetPasswordForm) HttpResponse [source]
If the form is valid, show a success message.
- Parameters:
form (SetPasswordForm) – The supplied form
- Returns:
form validation
- Return type:
HttpResponse
- success_url = '/login/'[source]
If the password was successfully reset, redirect to the login
- template_name = 'authentication/password_reset_confirm.html'[source]
The template which should be rendered
Password Reset View
- class integreat_cms.cms.views.authentication.password_reset_view.PasswordResetView(**kwargs)[source]
Bases:
PasswordResetView
View to extend the default login behaviour from
LoginView
with multi-factor-authentication.- dispatch(*args: HttpRequest, **kwargs: Any) HttpResponseRedirect | TemplateResponse [source]
The view part of the view. Handles all HTTP methods equally.
- Parameters:
*args (HttpRequest) – The supplied arguments
**kwargs (Any) – The supplied keyword arguments
- Returns:
The rendered template response or a redirection
- Return type:
HttpResponseRedirect | TemplateResponse
- email_template_name = 'emails/password_reset_email.txt'[source]
The full name of a template to use for generating the email with the reset password link.
- form_class[source]
The form for the password reset
Form fields:
email
: Email (EmailField
)
alias of
CustomPasswordResetForm
- form_valid(form: CustomPasswordResetForm) HttpResponseRedirect [source]
This function validates the form and sends a message depending if the function was executed successfully
- Parameters:
form (CustomPasswordResetForm) – The supplied form
- Returns:
passes form to form validation
- Return type:
HttpResponseRedirect
- html_email_template_name = 'emails/password_reset_email.html'[source]
The full name of a template to use for generating the html email with the reset password link.
- success_url = '/reset-password/'[source]
If the password reset process was successfully initialized, stay on the password reset page
- template_name = 'authentication/password_reset_form.html'[source]
The template which should be rendered
Passwordless Login View
- class integreat_cms.cms.views.authentication.passwordless_login_view.PasswordlessLoginView(**kwargs)[source]
Bases:
LoginView
View to extend the default login behavior from
LoginView
with multi-factor-authentication.- form_class[source]
The form class for the passwordless login
Form fields:
username
: Username (UsernameField
)
alias of
PasswordlessAuthenticationForm
- form_valid(form: PasswordlessAuthenticationForm) HttpResponseRedirect [source]
This function overwrites
form_valid()
which is called if the login form is valid. In case the user has mfa-keys configured, the login is delegated toWebAuthnLoginView
orTOTPLoginView
. Else, the default methodlogin()
is used to log the user in. After that, the user is redirected toLOGIN_REDIRECT_URL
.- Parameters:
form (PasswordlessAuthenticationForm) – User login form
- Returns:
Redirect user to mfa login view or to
LOGIN_REDIRECT_URL
- Return type:
HttpResponseRedirect
- redirect_authenticated_user = True[source]
A boolean that controls whether or not authenticated users accessing the login page will be redirected as if they had just successfully logged in.
- template_name = 'authentication/passwordless_login.html'[source]
The template to render (see
TemplateResponseMixin
)
Totp Login View
- class integreat_cms.cms.views.authentication.totp_login_view.TOTPLoginView(**kwargs)[source]
Bases:
TemplateView
View to extend the default login behavior from
LoginView
with multi-factor-authentication using TOTP.- dispatch(request: HttpRequest, *args: Any, **kwargs: Any) HttpResponse [source]
Check whether TOTP login can be used right now
- Parameters:
request (HttpRequest) – The current request
*args (Any) – The supplied arguments
**kwargs (Any) – The supplied keyword arguments
- Returns:
Redirection to login form or region selection
- Return type:
HttpResponse
- post(request: HttpRequest, *args: Any, **kwargs: Any) HttpResponse [source]
Retrieves the entered TOTP code of the user and validates it.
- Parameters:
request (HttpRequest) – The current request
*args (Any) – The supplied arguments
**kwargs (Any) – The supplied keyword arguments
- Returns:
Redirection to region selection or rendered login form
- Return type:
HttpResponse
- template_name: str = 'authentication/login_totp.html'[source]
The template to render (see
TemplateResponseMixin
)