Kullanıcı aracısı azaltma, User-Agent (UA) dizesindeki bilgileri yalnızca tarayıcının markası ve önemli sürümü, masaüstü veya mobil ayırımı ve çalıştığı platformla sınırlandırarak pasif parmak izi yüzeylerini azaltma çabasıdır. UA dizesi her HTTP isteğinde paylaşılır ve tarayıcı tarafından yüklenen tüm kaynaklara JavaScript'de gösterilir. Tarayıcı, çalıştığı platform ve özellikleri hakkında önemli bilgiler içerir. Kullanıcı aracısı istemci ipuçları (UA-CH), tam UA dizesiyle aynı bilgileri sağlayabilir ve sitelerin yalnızca ihtiyaç duydukları UA bilgilerini istemelerine olanak tanır.
Chrome 95 Beta sürümünden itibaren, sitelerin azaltılmış UA dizesini hemen almaya başlamasına olanak tanımak için Kullanıcı Aracı Azaltma için kaynak deneme sürümünü kullanıma sunacağız. Bu sayede siteler, azaltılmış UA Chrome'da varsayılan davranış haline gelmeden önce sorunları tespit edip düzeltebilir (azaltmanın 2022'nin ikinci çeyreğinde başlaması planlanmaktadır). Kaynak denemesini, kararlı sürüme sunulmadan önce 95 Beta kullanıcısında test etmek istiyorsanız Chrome 95'in yayınlanma tarihinden (19 Ekim 2021'de planlanmış) önce denemeyi etkinleştirip test ettiğinizden emin olun.
Kaynak denemesine ve bu süreçte neler bekleyebileceğinize genel bir bakış aşağıda verilmiştir. Her zaman olduğu gibi, UA azaltma GitHub deposunda bu deneme süresince geri bildirimlerinizi veya karşılaştığınız sorunları paylaşabilirsiniz.
User-Agent nedir?
Kullanıcı aracısı (UA) dizesi her HTTP isteğinde paylaşılır ve tarayıcı tarafından yüklenen tüm kaynaklara JavaScript'de gösterilir. Tarayıcı ve çalıştığı platformla ilgili önemli bilgiler içerir.
User-Agent neden kısaltılıyor?
Kullanıcı Aracısı Daraltması, Chrome tarayıcıda pasif parmak izi yüzeylerini azaltmak için ilk olarak Ocak 2020'de duyurulan bir çalışmadır. UA dizesindeki bilgiler yalnızca tarayıcının markası ve önemli sürümü, masaüstü veya mobil ayırımı ve çalıştığı platformla sınırlandığında, kullanıcıların tek tek tanımlanması daha zor hale gelir.
Bu durum web geliştiriciler için ne anlama geliyor?
Siteler, azaltılmış UA dizeleri almaya hazırlanmalı ve kaynak denemesine (ayrıntılar aşağıda verilmiştir) katılmayı düşünmelidir. Kısaltılmış kullanıcı aracısı değerleri şu yerlerde gösterilir:
User-Agent
HTTP istek başlığınavigator.userAgent
JavaScript alıcınavigator.platform
JavaScript alıcınavigator.appVersion
JavaScript alıcı
Azaltılmış Kullanıcı Aracısı tarafından paylaşılandan daha fazla istemci bilgisi almak için sitelerin yeni Kullanıcı Aracısı İstemci İpuçları API'sine geçmesi gerekir. Taşıma stratejileriyle ilgili daha fazla bilgi için Kullanıcı Aracısı İstemci İpuçlarına Geçiş başlıklı makaleyi inceleyin.
User-Agent azaltma planları iOS ve WebView'i içermez. Bu nedenle, bu platformlar tam kullanıcı aracısı dizesini almaya devam eder. Bunun başlıca nedeni, bu platformların henüz Kullanıcı Aracısı İstemci İpuçları'nı uygulamamış olmasıdır.
Bu kaynak denemesi nasıl çalışır?
Bu kaynak denemesi, standart bir kaynak denemesinden biraz farklıdır. Standart kaynak denemeleri yalnızca yanıttaki davranışı kontrol edebilir (örneğin, yanıtın JavaScript'inde bir API'ye erişimi kontrol edebilir). Bu denemedeki amacımız, yalnızca JavaScript API'lerinde sağlanan UA dizesini değil, HTTP isteğinde gönderilen User-Agent üst bilgisini de değiştirmek.
Bunu yapabilmek için Sec-CH-UA-Reduced
adlı geçici bir istemci ipucu tanımlarız. Bu ipucu, bir istekte bulunduğunda User-Agent üstbilgisi değerinin kısaltılmış UA dizesini içerdiğini gösterir. Sec-CH-UA-Reduced
istemci ipucu yalnızca kaynak deneme jetonu geçerliyse (küçültülmüş UA dizesiyle birlikte) gönderilir ve kaynak denemenin süresi dolduktan sonra Sec-CH-UA-Reduced
istemci ipucu çalışmaz. Critical-CH
header
ayarını yapmadığınız sürece ilk gezinme isteğinin, kısaltılmamış User-Agent dizesini almaya devam edeceğini unutmayın.
Aynı kaynağa gönderilen alt kaynak istekleri, gönderilen üst düzey istekle aynı User-Agent dizesini otomatik olarak gönderir. Üçüncü taraf kaynaklarının alt kaynağı isteklerinde, izin politikasının izin vermesi koşuluyla, kaynak deneme jetonu geçerliyse azaltılmış UA dizesi de dahil olmak üzere üst düzey istekle aynı User-Agent dizesi gönderilir.
Kullanıcı Aracısı Daraltması kaynak denemesine nasıl katılabilirim?
Kaynak denemesine kaydolmak ve alanlarınız için jeton almak üzere Kullanıcı Aracı Azaltma Deneme Sayfası'nı ziyaret edin.
HTTP yanıt başlıklarınızı güncelleyin:
- HTTP yanıt başlığınıza
Origin-Trial: <ORIGIN TRIAL TOKEN>
ekleyin. Burada<ORIGIN TRIAL TOKEN>
, kaynak denemeye kaydolurken aldığınız jetonu içerir. - HTTP yanıt başlığınıza
Accept-CH: Sec-CH-UA-Reduced
ekleyin. Accept-CH
ayarını yapmak, yalnızca kaynakla yapılan sonraki isteklerde kısaltılmış User-Agent dizesinin gönderilmesine neden olur. İlk gezinme isteğini kısaltılmış User-Agent dizesiyle yeniden göndermek içinAccept-CH
veOrigin-Trial
üst bilgilerine ek olarak HTTP yanıt başlığınızaCritical-CH: Sec-CH-UA-Reduced
ekleyin.- Not: Yanıt başlıklarında geçerli bir
Origin-Trial
jetonu veAccept-CH: Sec-CH-UA-Reduced
varsa bu isteklerin kaynakları kaynak denemesine kaydedilmemiş olsa bile tüm alt kaynak istekleri (ör. resimler veya stil sayfaları için) ve alt gezinmeler (ör. iFrame'ler) azaltılmış UA dizesini gönderir.
- HTTP yanıt başlığınıza
Web sitenizi Chrome M95 (veya sonraki bir sürüm) sürümünde yükleyin ve azaltılmış UA dizesini almaya başlayın.
Sorunları veya geri bildirimleri UA Reduction GitHub deposuna gönderin.
Kaynak deneme sürümünün (kaynak koduyla birlikte) bir gösterimi için https://uar-ot.glitch.me/ adresine bakın.
Üçüncü taraf yerleşik olarak kaynak denemesine nasıl katılırım?
Chrome 96'tan itibaren, üçüncü taraf yerleşimleri (ör. başka bir sitenin içindeki bir iFrame), üst düzey sitenin kaydedilmesini gerektirmeden kaynak denemesine katılabilir.
Üçüncü taraf yerleşik olarak kaydolmak için:
- Kullanıcı Aracı Azaltma Deneme Sürümü'nü ziyaret edin ve Kaydol'u tıklayın.
- Jetonu oluştururken
Third-party matching
onay kutusunu işaretlediğinizden emin olun. - Üçüncü taraf yerleşik öğesinden kısaltılmış User-Agent üstbilgisini almak için HTTP yanıt başlıklarını güncelleyin.
- JavaScript API'lerinde kısaltılmış User-Agent dizesini almak için deneme jetonunun JavaScript kullanılarak eklenmesi gerekir.
Üçüncü taraf yerleşiklerinde kaynak deneme sürümünü çalıştırmayla ilgili bazı önemli noktalar:
Critical-CH
, üçüncü taraf yerleşimleri için belirtilemez. Bu nedenle, üçüncü taraf yerleşiminin alt kaynak isteklerinde azaltılmış UA dizesi gönderilse de ilk gezinme azaltılmış UA dizesini göndermez.- Kaynak denemesi, üçüncü taraf yerleşiminin kaynağı için doğrulanırsa üst düzey bir gezinmede aynı kaynağa yapılan sonraki istekler, azaltılmış UA dizesini gönderir. Bu nedenle, hem üst düzey hem de yerleştirilmiş isteklerde kaynak denemesine katılımı birlikte artırmanız önerilir.
- Kullanıcı aracısı üçüncü taraf çerezlerini devre dışı bıraktıysa JavaScript API'leri yine de kısaltılmış UA dizesini almasına rağmen, kaynak denemesi üçüncü taraf yerleşik isteklerindeki
User-Agent
üstbilgisi için çalışmaz.
Kaynak denemenin çalıştığını nasıl doğrulayabilirim?
Kaynak deneme sürümünün çalıştığını doğrulamak için istek üstbilgilerini inceleyin ve aşağıdakilerden emin olun:
- User-Agent üstbilgisinde kısaltılmış sürüm bulunur. Küçültülmüş UA dizelerinin örneklerini içeren bu listeye göz atın.
Bunu anlamanın bir yolu, Chrome alt sürüm dizeninin
0.0.0
içermesidir. Sec-CH-UA-Reduced
üstbilgisi?1
olarak ayarlanır.
Kullanıcı Aracısı Daraltması kaynak denemesine katılımımı nasıl durdururum?
Deneme süresi boyunca dilediğiniz zaman katılımı durdurabilir ve tam User-Agent dizesini alabilirsiniz. Görevden çıkmak için:
- HTTP yanıtınızda
Sec-CH-UA-Reduced
içermeyen birAccept-CH
üstbilgisi gönderin. Not: Siteniz başka istemci ipucu istemiyorsa boş bir değere sahipAccept-CH
, bunu yapmanın geçerli bir yoludur. - Kullanıcı Aracısı Daraltması denemesi için
Origin-Trial
üst bilgisini HTTP yanıtınızdan kaldırın. - Ayarlandıysa HTTP yanıtınızdaki
Critical-CH
üstbilgisindeSec-CH-UA-Reduced
öğesini kaldırın.
Kaynak deneme sürümü ne kadar sürer?
UA Reduction kaynak denemesi en az altı ay boyunca (yaklaşık altı Chrome aşamasına karşılık gelir) yayınlanacaktır. Kaynak denemesi M95'te gösterilecek ve M101'e kadar sona erecek. Bu noktada Chrome, kısaltılmış User-Agent dizesini kullanıma sunma planına göre aşamalı olarak göndermeye başlamadan önce kaynak denemesinden gelen geri bildirimleri değerlendirecek. Bir sitenin daha uzun süreye ihtiyacı varsa desteği sonlandırılan kaynak deneme sürümünü etkinleştirebilir. Bu sürüm, en az altı ay daha UA dizeninin tamamına erişmelerine olanak tanır. Desteği sonlandırılan sürüm denemesi hazır olduğunda daha fazla bilgi paylaşacağız.
Kullanıcı Aracısı Daraltması kaynak denemesi için nasıl geri bildirim paylaşabilirim?
Sorunları veya geri bildirimleri UA Reduction GitHub deposuna gönderin.