Um die Privatsphäre der Nutzer zu schützen, schränkt Chrome die im User-Agent-String geteilten Informationen weiter ein.
Ab Chrome 110 (Februar 2023) führen wir nach und nach einen festen Wert für die Android-Version und das Gerätemodell ein. Der Standardwert ist bei einem Modell K
immer Android 10
.
Wenn Sie sich darauf verlassen, dass der User-Agent die Betriebssystemversion, das Android-Gerätemodell oder die detaillierte Browserversion eines Besuchers ermittelt, müssen Sie möglicherweise Maßnahmen ergreifen. Weitere Informationen finden Sie unten.
Der User-Agent ist ein String, der Informationen über den Browser des Nutzers und seine Umgebung liefert, z. B. über die Information, dass ein Besucher Ihrer Website die Chrome-Version 110 unter Android ausführt. Ihr Browser sendet dies in einem HTTP-Header und stellt es über JavaScript zur Verfügung.
Das Problem beim vollständigen User-Agent-String besteht darin, dass standardmäßig bei jeder Anfrage detaillierte Informationen zum Browser weitergegeben werden. Dies ist ein wichtiger Faktor für websiteübergreifendes Tracking. Unser Ziel ist es, die Möglichkeiten für die passive Erfassung dieser Daten zu reduzieren und gleichzeitig APIs bereitzustellen, mit denen Sie bei Bedarf aktiv auf Daten zugreifen können.
Bisher User-Agent-Reduzierung
Wir haben bereits damit begonnen, einige der standardmäßig verfügbaren User-Agent-Daten zu entfernen und durch feste Werte zu ersetzen.
Ab Chrome 101 haben wir die Nebenversionsnummer durch Nullen ersetzt, z.B. Chrome/101.3.2.1 wurde zu Chrome/101.0.0.0.
Ab Chrome 107 haben wir die Desktop-Betriebssystemversion und die CPU-Informationen durch einen festen Wert für die Plattform ersetzt.
Mac | ➡ | Macintosh: Intel Mac OS X 10_15_7 |
Windows | ➡ | Windows NT 10.0; Win64; x64 |
ChromeOS | ➡ | X11; CrOS x86_64 14541.0.0 |
Linux | ➡ | X11; Linux x86_64 |
Fehlerkorrektur für die Android-Version und das Gerätemodell ab Chrome 110
Ab Chrome 110 führen wir nach und nach einen festen Wert für die Android-Version und das Gerätemodell ein.
Anstelle von etwa Android 13
für Pixel 7
ist der Standardwert für das Modell K
immer Android 10
.
Mozilla/5.0 (Linux; Android 13; Pixel 7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.0.0 Mobile Safari/537.36
Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.0.0 Mobile Safari/537.36
Keine Änderung am User-Agent-Format
Durch die User-Agent-Reduzierung werden die im User-Agent zurückgegebenen Werte geändert, das Format bleibt jedoch unverändert. Wenn Sie den User-Agent nur zum Lesen des Betriebssystemtyps oder der Hauptversion des Browsers verwenden, werden diese Daten wie bisher aktualisiert und Sie müssen nichts weiter tun.

Alternativen zu User-Agent
Wenn Sie derzeit die detaillierteren Daten verwenden, sollten Sie immer prüfen, ob Sie stattdessen Progressive Verbesserung oder Funktionserkennung verwenden können.
Denken Sie immer daran, dass der User-Agent genau wie jeder andere vom User bereitgestellte Wert ist – Sie sollten ihn validieren und nicht davon ausgehen, dass er korrekt ist. Der User-Agent-Wert kann vom Nutzer, von Erweiterungen oder von anderen Clients leicht geändert oder auch gar nicht gesendet werden. In den meisten Fällen sollten Sie in der Lage sein, Nutzern ohne User-Agent-Daten funktionstüchtige Inhalte bereitzustellen.
Detaillierte Daten mit User-Agent-Client-Hints anfordern
Es gibt viele gute Gründe, auf detaillierte User-Agent-Daten zuzugreifen, z. B. die Bereitstellung gerätespezifischer Inhalte, Funktionen zur Betrugsbekämpfung oder detailliertes Logging. Wenn Sie detailliertere Daten benötigen, können Sie mit der User-Agent Client Hints API (UA-CH) darauf zugreifen. Wie der User-Agent ist auch UA-CH über HTTP-Header oder JavaScript verfügbar.
Die Standardheader wurden mit dem Präfix Sec-CH-UA-
gesendet, aus dem hervorgeht, wie der Browser, die Hauptversion, das Betriebssystem und ob es sich beim Browser um ein Mobilgerät handelt.
⏫ Standardmäßige User-Agent-Client-Hints-Anfrageheader von Chrome:
Sec-CH-UA: "Chromium";v="110", "Not A(Brand";v="24", "Google Chrome";v="110"
Sec-CH-UA-Mobile: ?1
Sec-CH-UA-Platform: "Android"
Du kannst den Accept-CH
-Header in deiner Antwort verwenden, um weitere Daten anzufordern.
In diesem Fall können Sie Sec-CH-UA-Platform-Version
und Sec-CH-UA-Model
anfordern, um diese Android-Version und den Gerätetyp in nachfolgenden Anfragen zurückzugeben.
⏬ Antwortheader von Ihrem Server, der die Plattformversion und das Modell angibt:
Accept-CH:
Sec-CH-UA-Platform-Version,
Sec-CH-UA-Model
⏫ Header von Chrome mit Angabe der Android-Version und des Modellnamens anfordern:
Sec-CH-UA-Platform-Version: "13.0.0"
Sec-CH-UA-Model: "Pixel 7"
In JavaScript können Sie dasselbe tun, indem Sie getHighEntropyValues()
in der userAgentData
API aufrufen und ein Array der gewünschten Werte übergeben: platformVersion
und model
.
Dadurch wird ein Promise mit einem Objekt zurückgegeben, das die spezifischen Werte enthält.
navigator.userAgentData
.getHighEntropyValues(
['platformVersion', 'model']
).then(ua => { console.log(ua)
});
{
"platformVersion": "13.0.0",
"model": "Pixel 7"
}
Ursprungsübergreifende oder erste Anfragen
Wenn es erforderlich ist, dass Ihre Website diese sensiblen Werte in der allerersten Anfrage auf oberster Ebene enthält, können Sie den HTTP-Header Critical-CH
verwenden. Dadurch wird der Browser angewiesen, die ursprüngliche Anfrage mit diesen zusätzlichen Hinweisen noch einmal zu senden.
Dies kann bei älteren Systemen hilfreich sein, die sich nur schwer aktualisieren lassen. Idealerweise sollten Sie sich jedoch nicht auf diese sensiblen Werte verlassen, um den anfänglichen HTML-Code bereitzustellen.
Weitere Informationen
Sehen Sie sich Folgendes an, um den reduzierten User-Agent-String in Aktion zu sehen:
- Den reduzierten User-Agent-String für dein Gerät findest du unter goo.gle/reduced-ua-demo
- Unter goo.gle/ua-ch-demo findest du alle JavaScript- und HTTP-Header-User-Agent-Client-Hints für dein Gerät.
- Senden Sie den reduzierten User-Agent-String in Ihrem Browser, indem Sie das Chrome-Flag
#reduce-user-agent
aktivieren.
Sie können sich auch weiterhin für den Ursprungstest zur Reduzierung des User-Agents registrieren, um den reduzierten User-Agent auf Ihrer Website zu erhalten. Wir beenden diesen Test jedoch Anfang März, da wir weiter daran arbeiten, den reduzierten User-Agent standardmäßig zu versenden.
Weitere Informationen finden Sie auf der Landingpage zur User-Agent-Reduzierung. Außerdem können Sie in unserem speziellen GitHub-Repository zur User-Agent-Reduzierung Probleme melden.