{% extends "tesm_core/base.html" %} {% from "tesm_core/macros.html" import field, alert, pill, empty_state %} {% block page_title %}Sicherheit{% endblock %} {% block page_sub %}Passwort, zweiter Faktor und aktive Sitzungen{% endblock %} {% block breadcrumb %} {% endblock %} {% block content %} {% if recovery_codes %}
{{ icon('key', size=17) }} Wiederherstellungscodes
Jetzt sichern – sie werden nur dieses eine Mal angezeigt. Jeder Code funktioniert genau einmal.
{% for code in recovery_codes %}{{ code }}
{% endfor %}
{% endif %}
{{ icon('lock', size=17) }} Passwort ändern
{% if current_user.is_directory_account %}
{{ alert('Ihr Passwort wird im Verzeichnisdienst gepflegt und dort geändert.', 'info') }}
{% else %}
{{ field('current_password', 'Aktülles Passwort', type='password', required=True, autocomplete='current-password') }} {{ field('new_password', 'Neues Passwort', type='password', required=True, autocomplete='new-password', hint_text='Mindestens ' ~ policy.min_length ~ ' Zeichen und zwei verschiedene Zeichenarten.') }} {{ field('repeat_password', 'Neues Passwort wiederholen', type='password', required=True, autocomplete='new-password') }} {{ alert('Nach der Änderung werden alle anderen Sitzungen beendet.', 'info') }}
{% endif %}
{{ icon('shield', size=17) }} Zwei-Faktor-Authentisierung {% if totp_enabled %}{{ pill('aktiv', 'online') }}{% else %}{{ pill('inaktiv', 'warning') }}{% endif %}
Zeitbasierte Einmalcodes (TOTP), kompatibel mit jeder Authenticator-App
{% if pending_secret %} {{ alert('Richten Sie den Eintrag in Ihrer App ein und bestätigen Sie mit einem aktüllen Code. Erst dann wird die Anmeldung umgestellt.', 'warning') }}
Geheimnis
{{ pending_secret_grouped }}
Konto
{{ current_user.username }}
Verfahren
TOTP, SHA-1, 6 Stellen, 30 Sekunden
otpauth-URI anzeigen
{{ pending_uri }}
{% elif totp_enabled %}
Aktiviert am
{{ profile.totp_confirmed_at | dt }}
Unbenutzte Wiederherstellungscodes
{{ recovery_remaining }}{% if recovery_remaining <= 2 %}  – bitte erneuern{% endif %}
{% else %} {% if require_totp_for_admins and current_user.is_admin %} {{ alert('In dieser Installation ist ein zweiter Faktor für Administratoren verpflichtend. Bitte jetzt einrichten.', 'danger') }} {% endif %}

Ein zweiter Faktor schützt Ihr Konto auch dann, wenn Ihr Passwort bekannt wird.

{% endif %}
{{ icon('activity', size=17) }} Meine Sitzungen
{{ sessions | length }} aktiv
{% if sessions | length > 1 %}
{% endif %}
{% if sessions %} {% for entry in sessions %} {% endfor %}
{{ entry.ip or 'unbekannte Adresse' }} {% if entry.id == current_sid %}{{ pill('diese Sitzung', 'online') }}{% endif %}
{{ entry.user_agent or '-' }}
aktiv {{ entry.last_seen_at | dt }}
{% if entry.id != current_sid %}
{% endif %}
{% else %} {{ empty_state('Keine Sitzungen', '', 'activity') }} {% endif %}
{% endblock %}