{% extends 'panel/base.html' %} {% block panel_title %}Logowanie dwuetapowe{% endblock %} {% block heading %}Logowanie dwuetapowe{% endblock %} {% block subheading %}

Kod z aplikacji albo z e-maila przy logowaniu do panelu.

{% endblock %} {% block content %}
{% if codes %}

Kody zapasowe - zapisz je teraz

Każdy kod działa raz i służy do wejścia bez telefonu i bez poczty. Ta lista pokazuje się jeden raz - po odświeżeniu strony już jej nie będzie.

    {% for code in codes %}
  • {{ code }}
  • {% endfor %}
{% endif %} {% if config.is_confirmed %}

Stan

włączone od {{ config.confirmed_at|date:"d.m.Y H:i" }}

Sposób: {{ config.get_method_display }} {% if config.uses_email %}- kod przychodzi na adres {{ email }}{% endif %}

Pozostałe kody zapasowe: {{ config.codes_left }} {% if config.codes_left < 3 %} - to juz malo, warto wydac nowy komplet. {% endif %}

{% if required %}

Ten serwis wymaga logowania dwuetapowego, więc nie da się go tutaj wyłączyć.

{% endif %}

Nowe kody zapasowe

{% csrf_token %}

Wydanie nowego kompletu unieważnia wszystkie poprzednie kody.

{% if not required %}

Wyłączenie

{% if config.uses_email %}
{% csrf_token %}

Najpierw poproś o kod - przyjdzie na adres {{ email }}.

{% endif %}
{% csrf_token %}

Kod potwierdza, że przy klawiaturze siedzi właściciel konta, a nie ktoś przy otwartej sesji. Zadziała też kod zapasowy.

{% endif %}
{% endif %} {% if not config.is_confirmed and required %}

Ten serwis wymaga logowania dwuetapowego - do czasu konfiguracji panel jest zamknięty. Wybierz jeden z dwóch sposobów poniżej.

{% endif %} {% if not config.is_confirmed or config.uses_email %}

{% if config.is_confirmed %}Przejście na kod z aplikacji{% else %}Sposób 1: kod z aplikacji w telefonie{% endif %}

  1. 1. Zainstaluj aplikacje uwierzytelniajaca

    Działa każda zgodna z TOTP - np. Aegis, Google Authenticator, 1Password, Bitwarden.

  2. 2. Dodaj w niej to konto

    {% if qr %}

    W aplikacji wybierz "dodaj konto" i zeskanuj ten kod:

    {% comment %}Kod QR ma stałe kolory (ciemne moduły na białym), więc białe tło zostaje także w ciemnym motywie panelu - czytnik telefonu potrzebuje kontrastu.{% endcomment %}
    {{ qr }}

    Nie masz jak zeskanować? Wybierz w aplikacji wpisanie klucza z ręki:

    {% else %} {% comment %}Brak kodu QR ma jedna przyczynę - bibliotekę segno, której nie ma w środowisku. Mówimy o tym wprost: bez tego zdania strona wygląda tak, jakby QR-a nigdy nie było w planach.{% endcomment %}

    Kodu QR nie ma, bo w środowisku brakuje biblioteki segno. Zainstaluj zależności (pip install -r requirements.txt) i uruchom serwer ponownie. Parowanie kluczem poniżej działa tak samo.

    Wybierz w aplikacji wpisanie klucza z ręki i przepisz go stąd:

    {% endif %}

    {{ secret_groups }}

    Pozostałe pola, o które może zapytać aplikacja: rodzaj "czasowy" (TOTP), 6 cyfr, co 30 sekund, algorytm SHA-1.

  3. 3. Przepisz kod, który pokaże aplikacja

    {% csrf_token %}

{% if config.is_confirmed %} Do czasu podania poprawnego kodu logowanie dalej działa kodem z e-maila. {% else %} Dopóki nie podasz poprawnego kodu, logowanie działa jak dotychczas - źle przepisany klucz nie zamknie Ci panelu. {% endif %}

{% endif %} {% if not config.is_confirmed or not config.uses_email %}

{% if config.is_confirmed %}Przejście na kod z e-maila{% else %}Sposób 2: kod wysyłany e-mailem{% endif %}

Bez aplikacji: po wpisaniu hasła serwis wyśle sześciocyfrowy kod na adres konta. Kod działa {{ minutes }} minut i tylko raz. Ten sposób jest tak bezpieczny, jak skrzynka pocztowa - chroń ją własnym, innym hasłem.

{% if not email %}

Konto nie ma adresu e-mail. Wpisz go w Moje konto › Dane profilu i wróć tutaj.

{% else %} {% if mail_off %}

Poczta serwisu nie wychodzi na zewnątrz (sposób wysyłki: konsola), więc kod nie dotrze do skrzynki. Ustaw serwer SMTP w Emaile › Konfiguracja poczty albo poproś o to administratora - do tego czasu wybierz kod z aplikacji.

{% endif %}
  1. 1. Wyślij kod na adres {{ email }}

    {% csrf_token %}
  2. 2. Przepisz kod z listu

    {% csrf_token %}

Nie ma listu? Zajrzyj do spamu. Dopóki nie podasz kodu, nic się nie zmienia.

{% endif %}
{% endif %}
{% endblock %}