„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Reduzierung der Benutzeragenten in Chrome, Safari und Firefox

Reduzierung der Benutzeragenten in Chrome, Safari und Firefox

Veröffentlicht am 06.08.2024
Durchsuche:525

User Agent Reduction in Chrome, Safari & Firefox

Einführung: Was sind User-Agent-Reduktion und Client-Hinweise?

In den letzten Jahren haben Datenschutzbedenken zu erheblichen Änderungen in der Art und Weise geführt, wie Browser mit User-Agent-Zeichenfolgen umgehen. Traditionell zur Identifizierung von Browser- und Geräteinformationen verwendet, wurden User-Agent-Strings reduziert, um die Menge der geteilten Informationen zu begrenzen und so die Privatsphäre der Benutzer zu schützen. Um die Einschränkungen der User-Agent-Reduzierung zu beseitigen, haben sich Client Hints als Lösung herausgestellt, die eine kontrollierte und die Privatsphäre respektierende Möglichkeit bieten, notwendige Informationen weiterzugeben.

Lesen Sie den vollständigen Blogbeitrag hier

Eine kurze Geschichte der User-Agent-Strings

User-Agent-Strings reichen bis in die Anfänge von Webbrowsern zurück, beginnend mit Tim Berners-Lees WorldWideWeb. Anfangs waren sie unkompliziert und stellten grundlegende Browser- und Versionsinformationen bereit. Im Laufe der Zeit wurden sie dahingehend weiterentwickelt, dass sie detaillierte Daten über das Betriebssystem, den Gerätetyp und mehr enthalten, die sich für die Webanalyse und die Optimierung des Benutzererlebnisses als nützlich erwiesen. Allerdings ermöglichte dieses Detail auch die Fingerabdruckerkennung des Geräts, was Bedenken hinsichtlich des Datenschutzes aufkommen ließ.

Was ist User-Agent-Reduktion?

Die User-Agent-Reduzierung zielt darauf ab, die Informationen in User-Agent-Strings zu minimieren, um die Privatsphäre der Benutzer zu schützen. Informationen mit hoher Entropie wie bestimmte Betriebssystemversionen und Hardwaremodelle werden reduziert. Beispielsweise meldet Googles Chrome jetzt eine weniger detaillierte User-Agent-Zeichenfolge:

  • Vorher: Mozilla/5.0 (Linux; Android 13; Pixel 7) AppleWebKit/537.36 (KHTML, wie Gecko) Chrome/95.2.1.0 Mobile Safari/537.36
  • Nachher: ​​Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, wie Gecko) Chrome/95.0.0.0 Mobile Safari/537.36

Ähnlich haben Firefox und Safari ihre eigenen Versionen der User-Agent-Reduzierung implementiert, allerdings mit geringfügigen Unterschieden aufgrund ihrer einzigartigen Richtlinien.

Wie funktionieren Kundenhinweise?

Client-Hinweise bieten eine Möglichkeit, auf datenschutzbewusste Weise spezifische, hochentropische Informationen über das Gerät und den Browser des Benutzers anzufordern. Es gibt zwei Hauptmethoden, um auf Client-Hinweise zuzugreifen:

  1. HTTP-Anfrageheader: Websites können mithilfe von HTTP-Anfrageheadern spezifische Informationen über den Browser und das Gerät des Benutzers anfordern. Dies wird typischerweise in First-Party-Kontexten verwendet, um sicherzustellen, dass detaillierte Benutzerinformationen nur für die primäre Website und nicht für Ressourcen von Drittanbietern zugänglich sind.
  2. JavaScript-API: Auf Client-Hinweise kann auch über das navigator.userAgentData-Objekt in JavaScript zugegriffen werden. Dies ermöglicht die dynamische Abfrage spezifischer Informationen wie Architektur, Modell und Plattformversion, ohne zusätzliche Header festzulegen.

Kundenhinweise umsetzen

Verwenden von HTTP-Anforderungsheadern

Um Client-Hinweise über HTTP-Header zu implementieren, muss der Server die entsprechenden Header in der HTTP-Antwort festlegen und dem Browser signalisieren, diese Hinweise in zukünftige Anfragen aufzunehmen. Zum Beispiel:

Accept-CH: Sec-CH-UA-Platform-Version

Nachfolgende Anfragen vom Browser enthalten dann die Plattformversion:

Sec-CH-UA-Platform-Version: "14.5.0"

Verwendung der JavaScript-API

Für dynamische Anwendungen bietet die JavaScript-API Flexibilität. Verwenden Sie beispielsweise die Methode getHighEntropyValues:

if (navigator.userAgentData) {
    navigator.userAgentData.getHighEntropyValues(['architecture', 'model', 'platformVersion'])
        .then(ua => {
            console.log(ua);
        });
}

Empfehlungen für Entwickler

Abhängig von Ihren spezifischen Anforderungen können Sie verschiedene Methoden zum Sammeln von Benutzerumgebungsdaten wählen:

  • Funktionserkennung: Verwenden Sie nach Möglichkeit vorhandene Browser-JavaScript-APIs. Dies ist zuverlässiger und zukunftssicherer als die Verwendung von User-Agent-Strings.
  • Informationen zu geringer Entropie: Für grundlegende Details wie den Gerätetyp ist die User-Agent-Zeichenfolge möglicherweise immer noch ausreichend.
  • Informationen mit hoher Entropie: Verwenden Sie Client-Hinweise, wenn detaillierte Informationen erforderlich sind und Sie die Kontrolle über die Domäne haben.

Abschluss

User-Agent-Reduzierung und Client-Hinweise stellen wichtige Schritte zur Verbesserung der Privatsphäre der Benutzer dar und ermöglichen es Websites dennoch, die für eine optimale Funktionalität erforderlichen Informationen zu sammeln. Durch das Verständnis und die Implementierung dieser Technologien können Entwickler den Bedarf an detaillierten Benutzerdaten mit Datenschutz- und Leistungsaspekten in Einklang bringen.

Erfahren Sie mehr in unserem ausführlichen Blogbeitrag.

Freigabeerklärung Dieser Artikel ist abgedruckt unter: https://dev.to/corbado/user-agent-reduction-in-chrome-safari-firefox-3g6g?1 Bei Verstößen wenden Sie sich bitte an [email protected], um ihn zu löschen
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3