Was ist neu in Contao 4.9 - Teil 2

Im ersten Teil haben wir uns mit den neuen Features, Verbesserungen hinsichtlich der Bedienbarkeit und des Datenschutzes in Contao 4.9 vor allem aus Kundensicht beschäftigt. In diesem Teil dreht sich alles um die weiteren Neuerungen bei den Themen Sicherheit und Performance.

Sicherheit

Zwei-Faktor-Authentifizierung (2FA)

Um die Sicherheit von Contao weiter zu erhöhen, wurde sowohl für den Backend-Zugang (Benutzer), als auch den Frontend-Zugang (Mitglieder) eine optional einstellbare Zwei-Faktor-Authentifizierung hinzugefügt. Dies ist für den Frontend-Zugang sogar pro Startpunkt einstellbar.

Zusätzlich zu Benutzername und Passwort muss dann noch ein Verifizierungscode eingegeben werden, den man mit einer Zwei-Faktor-App generieren kann (z.B. 1Password, Authy, Google Authenticator, Microsoft Authenticator, LastPass Authenticator).

Falls man keinen Zugriff mehr auf das Zwei-Faktor-Gerät hat, hat man die Möglichkeit Backup-Codes zu generieren.

Als weiteres Schmankerl haben die fleißigen Core-Entwickler auch noch eine Trusted-Devices-Funktion hinzugefügt. Beim Anmelden im System hakt man die Checkbox „Diesem Gerät vertrauen“ an und muss dann auf dem Gerät keinen Verifizierungscode mehr eingeben, dies gilt für ca. 60 Tage, dann muss man es erneut verifizieren.

Im Backend steht eine Liste vertrauenswürdiger Geräte zur Verfügung, die man jederzeit löschen kann.

Automatische HTTPS-Weiterleitung

Sofern im Startpunkt der Seite die Option https aktiviert ist, wird beim Aufruf der Webseite über http automatisch auf https weitergeleitet. Man benötigt dafür keine separate serverseitige Konfiguration mehr.

Sicherheitslücke bei Verlinkungen in neuem Fenster öffnen

Wenn Links mit dem Attribut target="_blank" versehen werden, damit sie sich in einem neuen Fenster öffnen, ist dies eine potentielle Sicherheitslücke. Aus diesem Grund muss man immer die Attribute rel="noopener" oder rel="noreferrer" zum Link hinzufügen, um diese potentielle Lücke nicht zuzulassen.
Alle Verlinkungen die durch Contao-Elemente erzeugt werden und sich in einem neuen Fenster öffnen sollen, bekommen automatisch rel="noreferrer noopener" als Attribut hinzugefügt. Im Editor wird bei jedem Link, der sich im neuen Fenster öffnen soll, rel="noopener" hinzugefügt.

Performance

Lazy-Loading bei Bildern

Lazy-Loading bedeutet, dass die Bilder erst geladen werden, sobald sie in den sichtbaren Bereich des Nutzers rutschen. Durch verschiedenste JavaScript-Bibliotheken konnte man diese Funktion in seiner Webseite implementieren. Doch die neuen Browser (Chrome ab Version 76, Firefox ab Version 75 und Edge ab Version 79) nutzen das Lazy-Loading mittlerweile nativ, sofern im Bild das Attribut loading="lazy" hinzugefügt wird.
In der Konfiguration der Bild-Größen in Contao 4.9 kann diese Funktion aktiviert werden. Natürlich wird sie dann nur unterstützt, wenn der Nutzer einen aktuellen Browser nutzt.

Verbesserte Bildverarbeitung

Die hochgeladenen Bilder werden anhand ihrer EXIF-Daten richtig gedreht. Zusätzlich ist es möglich in Contao 4.9 zu konfigurieren, das WEBP-Versionen der Bilder generiert und genutzt werden. WEBP ist ein von Google definiertes Bildformat, das ohne einen Qualitäts-Verlust deutlich stärker komprimiert werden kann, als die derzeitigen Formate.

Deferred Image Resizing

In Contao ist es schon länger möglich die Bilder für verschiedenen Auflösungen generieren zu lassen. Jedoch wurden während eines Seitenaufbaus immer alle definierten Varianten direkt generiert. Mit der Anpassung der Funktion werden nur noch die Bilder generiert, die tatsächlich benötigt werden. Dadurch ist der initiale Seitenaufbau deutlich schneller und vor allem kann es einem Redakteur im Backend auch nicht mehr passieren, dass er in der Dateiverwaltung über die Ausklapp-Funktion „Alle umschalten“ das ganze System lahm legt und die Dateiverwaltung nicht mehr nutzen kann.

Datum

Autor

Ulrich Feldmann

Kategorie

Contao

Fragen, Wünsche, Projekte?