[OUTDATED] First-Party Sets ve SameParty özelliği

Birçok kuruluşun farklı alan adlarına sahip, örneğin brandx.site ve fly-brandx.site veya şunun gibi farklı ülkelere ait alanlar: example.com, example.rs, example.co.uk vb.

Tarayıcılar, üçüncü taraf çerezleri oluşturmaya eski iyileştirmek için kullanır, ancak bu tür siteler genellikle alanlar arasında durum durumunun korunmasını ve erişilmesini gerektiren işlevler (ör. tek oturum açma ve kullanıcı rızası yönetimi).

Birinci Taraf Gruplar, sahibi olduğu ve işlettiği ilgili alan adlarına izin verebilir aynı tüzel kişinin, birinci taraf ve üçüncü taraf olarak kabul üçüncü taraflara farklı şekilde davranılır. Bir birinci taraf grubu aynı taraf olarak kabul edilir ve hangi çerezlerin aynı taraf bağlamında ayarlanması veya gönderilmesi amaçlanır. Amacınız, sizin için üçüncü taraflarca siteler arası takibin engellenmesi ile kullanım alanlarını bozmayan bir yol sunmaktır.

Birinci Taraf Gruplar teklifi şu anda test sürecinde aşamasında, nasıl çalıştığını öğrenmek için okumaya devam edin bunu nasıl deneyeceğinizi öğreneceksiniz.

Birinci taraf ve üçüncü taraf çerezleri arasındaki fark nedir?

Çerezler doğaları gereği birinci taraf veya üçüncü taraf değildir. Bu durum, geçerli bağlam bilgisi sunar. Bu durum, cookie üstbilgisi veya JavaScript'te document.cookie aracılığıyla.

Örneğin, siz internette gezinirken video.site adlı kullanıcının theme=dark çerezi varsa video.site ve video.site sitesine istek gönderildi. Bu durumda, söz konusu site aynı sitedir ve bağlamın birinci taraf çerezidir.

Ancak, my-blog.site video.site (my-blog.site ile video.site arasında istek yapıldığında) Bunlar siteler arası bağlamdır ve theme çerezi üçüncü taraf olur.

video.site adresindeki bir çerezi iki bağlamda gösteren şema. Üst düzey bağlam aynı zamanda video.site olduğunda çerez aynı sitedir. Üst düzey bağlam bir iframe'de video.site ile my-blog.site olduğunda çerez siteler arası olur.

Çerez dahil etme, çerezin SameSite özelliği tarafından belirlenir:

  • Aynı Site bağlam SameSite=Lax, Strict veya None, çerezi birinci taraf yapar.
  • SameSite=None ile siteler arası bağlam, çerezi üçüncü taraf yapar.

Ancak bu, her zaman çok net olmayabilir. brandx.site adlı kullanıcının bir seyahat olduğunu hayal edin fly-brandx.site ve drive-brandx.site kullandığı için ve araç kiralamayı deneyebilirsiniz. Bir seyahat rezervasyonu süresince ziyaretçiler farklı seçenekleri belirlemek için bu siteler arasında geziniyorlar. "alışveriş sepeti" seçimlerin sayısını en üst düzeye çıkarmanıza yardımcı olur. brandx.site. aşağıdaki işlemlerde izin vermek için kullanıcının oturumunu SameSite=None çereziyle yönetir: emin olun. Eksi yanı ise, çerezin artık çapraz site olmamasıdır. Sahtekarlık (CSRF) koruması isteme. evil.site, brandx.site o zaman bu çerezi içerir.

Çerez siteler arasıdır, ancak tüm bu sitelerin sahibi ve işleteni aynıdır. kurum içinde tutmaktır. Ziyaretçiler, aynı kuruluş olduğunu anlar ve en kısa zamanda, bir oturum için, yani kullanıcılar arasında ortak bir kimlik oluşturmaya yarar.

Siteler aynı Birinci Taraf Grup'un parçası olan bir çerezin siteler arası bağlama nasıl dahil edileceğini, ancak grubun dışındaki siteler arası bağlamlar nedeniyle reddedileceğini gösteren şema.

Birinci Taraf Gruplar politikası

Birinci Taraf Gruplar, birden fazla site arasında bu ilişkiyi açık bir şekilde tanımlamak için Aynı tarafın sahip olduğu ve işlettiği içerikler. Bu durumda brandx.site, fly-brandx.site ile birinci taraf ilişkisini tanımlar, drive-brandx.site vb.

Üretkenliği artıran Gizlilik Modeli Çeşitli Özel Korumalı Alan teklifleri, bölümlendirme kavramına dayalı olarak emin olmak için bir web sitesi kimliği oluşturarak kullanıcıları tanımlamak için kullanılabilecek tüm bilgilere erişimi sınırlar.

Her üst düzey bağlamın, siteler arası bağlantı oluşturmayı engelleyen ayrı bir siteler arası çerez örneğine sahip olduğu bölümlendirilmiş modelin aksine, aynı üçüncü taraf çerezine birden fazla site arası bağlamda erişilebildiği bölümlendirilmemiş durumu gösteren şema.

Varsayılan seçenek siteye göre bölümlendirmedir. Bu yöntem, birçok birinci taraf çözümüne kullanım alanlarında brandx.site örneği, birinci tarafın daha büyük bir kitleye yönelik tek bir siteden daha iyidir.

Bir grup için aynı çerez örneğinin, tüm siteler aynı kümenin parçası olduğunda siteler arası bağlamlara nasıl dahil edilebileceğini gösteren şema.

Birinci Taraf Grup teklifinin önemli bir parçası da sağlamak, kötüye kullanımı veya kötüye kullanımı önler. Örneğin, Birinci Taraf Gruplar Alakasız siteler arasında kullanıcı bilgilerinin alışverişinin gerçekleşmesini veya aynı tüzel kişiye ait olmayan sitelerdir. Ana fikir, proje ekibinin First-Party Set, bir kullanıcının birinci taraf olarak anladığı öğelerle eşleşir ve Bu tür veriler, farklı taraflar arasında kimlik paylaşmak için kullanılmaz.

Bir sitenin birinci taraf grubunu kaydetmesinin olası bir yolu site için olabilir herkese açık bir izleyiciye (ör. özel GitHub deposu) beraberinde tarayıcı şartlarını karşılamak için gereken bilgilerle birlikte politikası.

Birinci taraf grup onayı politikaya göre doğrulandıktan sonra tarayıcılar Ardından, bir güncelleme işlemi aracılığıyla grup listelerini getirir.

Kaynak denemesi nihai olmayan, ancak ilkeler şu şekilde tanımlanmış bir politikaya sahip: aynı kalabilir:

  • Birinci taraf gruptaki alanlar, aynı alan adına sahip olmalı ve aynı alan tarafından işletilmelidir. kurum içinde tutmaktır.
  • Alanlar grup olarak kullanıcılar tarafından tanınmalıdır.
  • Alanların ortak bir gizlilik politikası olmalıdır.
ziyaret edin.

Birinci taraf grubu nasıl tanımlanır?

Kuruluşunuza ait birinci tarafın üyelerini ve sahibini belirledikten sonra en önemli adım, önerdiğiniz grubu onaya göndermek olacaktır. Tam hâlâ tartışılıyor.

Birinci taraf grup bildirmek için üyeleri ve sahipleri listeleyen statik JSON kaynakları her birinin en üst düzeyinde /.well-known/first-party-set adresinde barındırılmalıdır. dahil edilir.

brandx birinci taraf grubu örneğinde sahip-alan, takip ediliyor: https://brandx.site/.well-known/first-party-set:

{
  "owner": "brandx.site",
  "version": 1,
  "members": ["fly-brandx.site", "drive-brandx.site"]
}

Grubun her üyesi ayrıca sahip olur. https://fly-brandx.site/.well-known/first-party-set olarak:

{ "owner": "brandx.site" }

Ve https://drive-brandx.site/.well-known/first-party-set adlı yerde:

{ "owner": "brandx.site" }

Birinci taraf gruplar için birkaç kısıtlama vardır:

  • Bir grubun yalnızca bir sahibi olabilir.
  • Bir üye yalnızca bir gruba ait olabilir; çakışma veya karıştırma yasaktır.
  • Üye listesi diğer kullanıcılar tarafından kolayca okunabilecek şekilde sunulmamıştır. çok büyük olabilir.
ziyaret edin.

Birinci Taraf Gruplar, çerezleri nasıl etkiler?

Kurabiyeler için eşleşen malzeme, önerilen SameParty özelliği ekleyin. SameParty belirtiliyor tarayıcıya, bağlamı aynı olduğunda çerezi dahil etmesini söyler üst düzey bağlam olarak belirtilir.

Yani, brandx.site bu çerezi ayarlarsa:

Set-Cookie: session=123; Secure; SameSite=Lax; SameParty

Daha sonra ziyaretçi fly-brandx.site üzerindeyken ve bir istek brandx.site, ardından session çerezi bu isteğe dahil edilir. Örneğin, birinci taraf grubunun parçası olmayan başka bir site, hotel.xyz, brandx.site adresine bir istek gönderir. Çerez dahil edilmez.

Açıklandığı gibi siteler arası bağlamlarda brandx.site çerezine izin verildiğini veya engellendiğini gösteren şema.

SameParty yaygın olarak desteklenene kadar, aşağıdaki amaçlar için SameSite özelliğini bununla birlikte kullanın: tanımlamaya yardımcı olur. Örneğin, SameParty özelliğini kullanarak SameSite=Lax ve SameSite=None.

  • SameSite=Lax; SameParty, Lax işlevini şu şekilde genişletecek: desteklendiğinde aynı taraf bağlamlarını dahil eder ancak Lax kapsamındadır ek kısıtlamalara tabi değildir.
  • SameSite=None; SameParty, None işlevini şu şekilde kısıtlar: Desteklendiğinde yalnızca aynı taraf bağlamları kullanılır ancak daha geniş bağlamda Değilse None izinleri.

Bazı ek gereksinimler vardır:

  • SameParty çerez Secure içermelidir olmalıdır.
  • SameParty çerez, SameSite=Strict ifadesini içermemelidir.

Bu işlem hâlâ siteler arası olduğundan ve bu sorunları azaltmanız gerektiğinden Secure zorunludur güvenli (HTTPS) bağlantılar sağlayarak riskleri ortadan kaldırır. Aynı şekilde siteler arası ilişki, SameSite=Strict parametresine izin verdiği için geçersiz bir grup içinde sıkıca site tabanlı CSRF korumasına sahip olma

Birinci Taraf Gruplar için hangi kullanım alanları uygundur?

Birinci Taraf Gruplar, bir kuruluşun belirli bir türde olması gerektiğini ve farklı üst düzey siteler arasında paylaşılan kimliktir. Bu durumda paylaşılan kimlik eksiksiz bir tek oturum açma çözümünden yalnızca ortak bir tercih eder.

Kuruluşunuzun aşağıdakiler için farklı üst düzey alanları olabilir:

  • Uygulama alanları: office.com,live.com, microsoft.com
  • Markalı alanlar: amazon.com, audible.com / disney.com, pixar.com
  • Yerelleştirmenin etkinleştirileceği ülkeye özgü alan adları: google.co.in, google.co.uk
  • Kullanıcıların hiçbir zaman doğrudan etkileşimde bulunmadığı ancak sağladığı hizmet alanları aynı kuruluşun sitelerindeki hizmetler: gstatic.com, fbcdn.net githubassets.com
  • Kullanıcıların hiçbir zaman doğrudan etkileşimde bulunmadığı ancak var olan korumalı alan alanları güvenlik nedenleri: googleusercontent.com, githubusercontent.com

Nasıl katılabilirsiniz?

Yukarıdaki ölçütlere uyan bir site grubunuz varsa çok sayıda seçenek var. En basit yatırım, okumak ve katılmaktır şu iki teklif üzerine konuşacağız:

Test aşamasında, --use-first-party-set komut satırı işareti ve virgülle ayrılmış bir liste sağlar sayısı.

Bunu şu adresteki demo sitesinde deneyebilirsiniz: Başlatıldıktan sonra https://fps-member1.glitch.me/ Şu bayrağa sahip Chrome:

--use-first-party-set=https://fps-member1.glitch.me,https://fps-member2.glitch.me,https://fps-member3.glitch.me

Bu, geliştirme ortamınızda test yapmak veya son nasıl çalıştığını görmek için canlı bir ortama SameParty özelliğini ilk taraf kümesi çerezleri etkileyecektir.

Deneme ve geri bildirim için yeterli bant genişliğine sahipseniz, Google Ads'e de kaydolabilirsiniz. İlk Taraf Gruplar için Kaynak Deneme ve SameParty Chrome'da 89 ile 93 arasında kullanılabilir.

Kaynak denemesi için çerezleri güncelleme

Kaynak deneme sürümüne katılıyor ve SameParty özelliğini kullanıyorsanız göz önünde bulundurmanız gereken iki kalıp vardır.

1. Seçenek

Birincisi, SameSite=None olarak etiketlediğiniz çerezleriniz, ancak yalnızca birinci taraf bağlamlarıyla kısıtlamak istiyorsanız SameParty ilişkilendirmelisiniz. Kaynak denemesinin etkin olduğu tarayıcılarda çerez grup dışındaki siteler arası bağlamlarda gönderilmemelidir.

Ancak ekibinizin çoğu kaynak denemesi dışındaki tarayıcılarda çerez gönderilmeye devam eder her zamanki gibi siteler arası içerik oluşturabilirsiniz. Bunu progresif bir geliştirme yaklaşımı olarak görebilirsiniz.

Önce: set-cookie: cname=cval; SameSite=None; Secure

Sonra: set-cookie: cname=cval; SameSite=None; Secure; SameParty

2. Seçenek

İkinci seçenek daha fazla işe yarar ancak başlangıç noktasını tamamen ayırmanıza olanak tanır. bir deneme sürümü kullanmayı gerektirir ve özellikle de SameSite=Lax; SameParty kombinasyon.

Önce: set-cookie: cname=cval; SameSite=None; Secure

Sonra:

set-cookie: cname=cval; SameSite=None; Secure
set-cookie: cname-fps=cval; SameSite=Lax; Secure; SameParty

Gelen isteklerde çerez olup olmadığını kontrol ederken yalnızca Siteler arası URL'de yer alıyorsa siteler arası istekte cname-fps çerezini ayarlandıktan sonra tarayıcı kaynak denemesindedir. Bu yaklaşımı devre dışı bırakmadan önce güncellenmiş bir özelliğin eşzamanlı lansmanı sürümünü değil.

Birinci taraf grubuna neden ihtiyacınız olmayabilir?

Sitelerin çoğunda, site sınırı, çizim için kabul edilebilir bir yerdir bölüm veya gizlilik sınırını ayarlayabilirsiniz. Öngörülen rota budur ÇIP'LER (Bağımsız Bölümlendirilmiş Çerezler) Eyalet). Bu özellik, sitelere her tür kritik sitemi korumak için Partitioned özelliği aracılığıyla kimliği sızdıran verilerin sızdırılmasını önlerken yerleşik kaynakların, kaynakların, API'lerin ve hizmetlerin bilgileri koruyabilirsiniz.

Sitenizin gerekli olmadan iyi durumda olabileceği anlamına gelen diğer birkaç nokta bir grup:

  • Farklı sitelerde değil, farklı kaynaklardan barındırıyorsunuz. Yukarıdaki örnekte, brandx.site için fly.brandx.site ve drive.brandx.site kalsa bunlar aynı site içinde bulunan farklı alt alan adlarıdır. Çerezler, SameSite=Lax ve herhangi bir ayar gerekmiyor.
  • Diğer sitelere üçüncü taraf yerleştirmeleri sağlıyorsanız. Giriş bölümünde, my-blog.site web sitesine yerleştirilmiş video.site tarihli bir video, net bir üçüncü taraf sayılır böler. Siteler farklı kuruluşlar tarafından işletilir ve kullanıcılar bunları görür. ayrı birer varlık olur. Bu iki site birlikte küme halinde olmamalıdır.
  • Üçüncü taraf sosyal medya oturum açma hizmetleri sağlıyorsanız. Şunu kullanan kimlik sağlayıcılar: OAuth veya OpenId Connect gibi işlemler, bir işlem için genellikle üçüncü taraf çerezlerinden kullanıcılara daha sorunsuz bir oturum açma deneyimi sunar. Geçerli bir kullanım alanı olsa da kuruluşlar arasında açık bir fark olduğundan Birinci Taraf Gruplar için uygundur. WebID gibi ilk teklifler, nasıl sunabileceğimizi araştırıyoruz.