IFrames mit Zustimmungsabfrage
Motivation
Aus Datenschutzgründen ist es sinnvoll, bei der Einbettung externer Seiten mit IFrames vorher die Zustimmung abzufragen. Das kann mit einem entsprechenden Element geschehen.
Das Element einladen
Im Kopf der Inhaltsdatei per Attribut Features
die Hilfsskripte einladen:
---- Features: iframe-consent ----
Dadurch wird das Element iframe-consent
bereitgestellt.
Das Element kann weitestgehend analog zum Standardelement iframe
verwendet werden.
Alle Attribute werden an das IFrame-Element weitergegeben.
Die Seite wird erst geladen, sobald per Knopfdruck die Einwilligung dazu gegeben wird.
Die weitergegebenen Attribute werden unvermeidlich auch an das übergeordnete Element für Zustimmungsabfrage und IFrame weitergegeben.
In den meisten Fällen hat das keine Auswirkungen.
In Ausnahmefällen wird davon auch die Zustimmungsabfrage beeinflusst (insbesondere style
und class
).
Um Attribute explizit nur an das IFrame-Element weiterzugeben, können sie im JSON-Format im Attribut iframe_attributes
übergeben werden (Attributnamen als Schlüssel, Attributwerte als Werte).
Die Einwilligung kann gespeichert und widerrufen werden.
Intern wird dazu in localStorage der Schlüssel "iframe-hosts-whitelist"
gesetzt.
Einwilligungen und Widerrufe werden über verschiedene Instanzen des Elements synchronisiert (auch seitenübergreifend in anderen Tabs).
Beispiele
Einfaches Beispiel
<iframe-consent
src="https://o-mathe.de/omathe/konzeption/schulbuch"
width="600"
height="500"
></iframe-consent>
Gesonderte Weitergabe von Attributen an IFrame
<iframe-consent
src="https://o-mathe.de/omathe/konzeption/aufbau"
width="600"
height="500"
iframe_attributes='{
"style": "transform: rotate(3deg); margin: 30px; border: 5px solid red"
}'
></iframe-consent>