Hacker DirectoryHacker Directory
Öğrenmeye devam et
ENHTML kaydet ↓

WEB / WEB-12.02

Cookie scope, lifetime ve flags

Jar’daki bir cookie’nin belirli request’e neden eklendiğini veya dışarıda kaldığını scope, süre, kanal ve site bağlamıyla açıkla.

CORE · RED · BLUE · ARTIFACT · PRACTICE

1. Core · Mekanizma

Hareket olmadan bütün senaryoları oku

Normal same-host

  1. İki alternatif cookie tanımı

    Host-only ile Domain=outreason.example ayrı varsayımsal konfigürasyonlardır; aynı jar’da çakışan iki hd_scope kaydı gösterilmiyor. Her biri zaten kabul edilmiş stored candidate’tır.

    Browser · candidate jar
    H: host-only · D: parent Domain
    Application · request received
    Request henüz yok
    Request · selection context
    Path=/books · Max-Age=1200
  2. Request context açık olarak seçilir

    Target, method, top-level navigation ve same-site metadata’sı bu fixture’da verilir. Same-site, same-origin ile aynı değildir; bu model Public Suffix List veya redirect chain hesaplamaz.

    Browser · candidate jar
    Candidate selection bekliyor
    Application · request received
    Request henüz yok
    Request · selection context
    GET https://library.outreason.example/books/42 · t=200
  3. Host ve slash-path kapıları

    Host-only exact host gerektirir; parent Domain uygun subdomain’i kapsayabilir. /books, /books/42 ile eşleşir ama /bookstore ile eşleşmez. Path bir authorization veya application isolation sınırı değildir.

    Browser · candidate jar
    host H/D ✓/✓ · path H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Scope değerlendirmesi local
  4. Browser lifetime ayrı hesaplanır

    Explicit browser model clock: creation t=100, Max-Age=1200; t=1300 dahil expired. Server session clock veya revocation bu cookie-selection modeliyle hesaplanmaz.

    Browser · candidate jar
    lifetime H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Browser clock t=200
  5. Kanal ve script erişimi farklıdır

    Secure ordinary HTTPS channel ister; labelled HTTP case loopback istisnası değildir. HttpOnly script API erişimini sınırlar; uygun request cookie’yi yine taşıyabilir. Buradaki script-read sonucu target ile aynı document context’i varsayar.

    Browser · candidate jar
    channel H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Script read H/D: no/no
  6. Site ve browser request policy kapıları

    Explicit Lax cross-site safe top-level navigation’a izin verebilir; background POST’a vermez. Strict cross-site’i eler. None diğer scope/privacy/credentials koşullarını kaldırmaz. Bu modeller prefix, partition ve default-Lax compatibility parser’ı değildir.

    Browser · candidate jar
    Host-only: included · Domain: included
    Application · request received
    Request henüz yok
    Request · selection context
    sameSite H/D ✓/✓ · privacy H/D ✓/✓ · credentials H/D ✓/✓
  7. HTTP request seçilmiş state ile ulaştı

    Cookie excluded olsa da HTTP request’in kendisi gerçekleşebilir. İki alternatifin eligibility sonucu ayrı gösterilir; browser’ın seçimi application permission kararı değildir.

    Browser · candidate jar
    Host-only: included · Domain: included
    Application · request received
    Request alındı; cookie inclusion ayrı
    Request · selection context
    HTTP request geldi
  8. Cookie varlığı yalnız bir gözlemdir

    Server name/value alınmışsa bunu kendi doğrulama ve policy’sinde değerlendirir. Bu saf simulation gerçek browser jar’ı, authentication başarısı veya access hakkı kanıtı değildir.

    Browser · candidate jar
    Host-only: included · Domain: included
    Application · request received
    Server validity/authz ayrı
    Request · selection context
    Script read H/D: no/no

Host-only vs Domain

  1. İki alternatif cookie tanımı

    Host-only ile Domain=outreason.example ayrı varsayımsal konfigürasyonlardır; aynı jar’da çakışan iki hd_scope kaydı gösterilmiyor. Her biri zaten kabul edilmiş stored candidate’tır.

    Browser · candidate jar
    H: host-only · D: parent Domain
    Application · request received
    Request henüz yok
    Request · selection context
    Path=/books · Max-Age=1200
  2. Request context açık olarak seçilir

    Target, method, top-level navigation ve same-site metadata’sı bu fixture’da verilir. Same-site, same-origin ile aynı değildir; bu model Public Suffix List veya redirect chain hesaplamaz.

    Browser · candidate jar
    Candidate selection bekliyor
    Application · request received
    Request henüz yok
    Request · selection context
    GET https://api.library.outreason.example/books/42 · t=200
  3. Host ve slash-path kapıları

    Host-only exact host gerektirir; parent Domain uygun subdomain’i kapsayabilir. /books, /books/42 ile eşleşir ama /bookstore ile eşleşmez. Path bir authorization veya application isolation sınırı değildir.

    Browser · candidate jar
    host H/D ×/✓ · path H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Scope değerlendirmesi local
  4. Browser lifetime ayrı hesaplanır

    Explicit browser model clock: creation t=100, Max-Age=1200; t=1300 dahil expired. Server session clock veya revocation bu cookie-selection modeliyle hesaplanmaz.

    Browser · candidate jar
    lifetime H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Browser clock t=200
  5. Kanal ve script erişimi farklıdır

    Secure ordinary HTTPS channel ister; labelled HTTP case loopback istisnası değildir. HttpOnly script API erişimini sınırlar; uygun request cookie’yi yine taşıyabilir. Buradaki script-read sonucu target ile aynı document context’i varsayar.

    Browser · candidate jar
    channel H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Script read H/D: no/no
  6. Site ve browser request policy kapıları

    Explicit Lax cross-site safe top-level navigation’a izin verebilir; background POST’a vermez. Strict cross-site’i eler. None diğer scope/privacy/credentials koşullarını kaldırmaz. Bu modeller prefix, partition ve default-Lax compatibility parser’ı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: included
    Application · request received
    Request henüz yok
    Request · selection context
    sameSite H/D ✓/✓ · privacy H/D ✓/✓ · credentials H/D ✓/✓
  7. HTTP request seçilmiş state ile ulaştı

    Cookie excluded olsa da HTTP request’in kendisi gerçekleşebilir. İki alternatifin eligibility sonucu ayrı gösterilir; browser’ın seçimi application permission kararı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: included
    Application · request received
    Request alındı; cookie inclusion ayrı
    Request · selection context
    HTTP request geldi
  8. Cookie varlığı yalnız bir gözlemdir

    Server name/value alınmışsa bunu kendi doğrulama ve policy’sinde değerlendirir. Bu saf simulation gerçek browser jar’ı, authentication başarısı veya access hakkı kanıtı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: included
    Application · request received
    Server validity/authz ayrı
    Request · selection context
    Script read H/D: no/no

/books ≠ /bookstore

  1. İki alternatif cookie tanımı

    Host-only ile Domain=outreason.example ayrı varsayımsal konfigürasyonlardır; aynı jar’da çakışan iki hd_scope kaydı gösterilmiyor. Her biri zaten kabul edilmiş stored candidate’tır.

    Browser · candidate jar
    H: host-only · D: parent Domain
    Application · request received
    Request henüz yok
    Request · selection context
    Path=/books · Max-Age=1200
  2. Request context açık olarak seçilir

    Target, method, top-level navigation ve same-site metadata’sı bu fixture’da verilir. Same-site, same-origin ile aynı değildir; bu model Public Suffix List veya redirect chain hesaplamaz.

    Browser · candidate jar
    Candidate selection bekliyor
    Application · request received
    Request henüz yok
    Request · selection context
    GET https://library.outreason.example/bookstore · t=200
  3. Host ve slash-path kapıları

    Host-only exact host gerektirir; parent Domain uygun subdomain’i kapsayabilir. /books, /books/42 ile eşleşir ama /bookstore ile eşleşmez. Path bir authorization veya application isolation sınırı değildir.

    Browser · candidate jar
    host H/D ✓/✓ · path H/D ×/×
    Application · request received
    Request henüz yok
    Request · selection context
    Scope değerlendirmesi local
  4. Browser lifetime ayrı hesaplanır

    Explicit browser model clock: creation t=100, Max-Age=1200; t=1300 dahil expired. Server session clock veya revocation bu cookie-selection modeliyle hesaplanmaz.

    Browser · candidate jar
    lifetime H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Browser clock t=200
  5. Kanal ve script erişimi farklıdır

    Secure ordinary HTTPS channel ister; labelled HTTP case loopback istisnası değildir. HttpOnly script API erişimini sınırlar; uygun request cookie’yi yine taşıyabilir. Buradaki script-read sonucu target ile aynı document context’i varsayar.

    Browser · candidate jar
    channel H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Script read H/D: no/no
  6. Site ve browser request policy kapıları

    Explicit Lax cross-site safe top-level navigation’a izin verebilir; background POST’a vermez. Strict cross-site’i eler. None diğer scope/privacy/credentials koşullarını kaldırmaz. Bu modeller prefix, partition ve default-Lax compatibility parser’ı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Request henüz yok
    Request · selection context
    sameSite H/D ✓/✓ · privacy H/D ✓/✓ · credentials H/D ✓/✓
  7. HTTP request seçilmiş state ile ulaştı

    Cookie excluded olsa da HTTP request’in kendisi gerçekleşebilir. İki alternatifin eligibility sonucu ayrı gösterilir; browser’ın seçimi application permission kararı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Request alındı; cookie inclusion ayrı
    Request · selection context
    HTTP request geldi
  8. Cookie varlığı yalnız bir gözlemdir

    Server name/value alınmışsa bunu kendi doğrulama ve policy’sinde değerlendirir. Bu saf simulation gerçek browser jar’ı, authentication başarısı veya access hakkı kanıtı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Server validity/authz ayrı
    Request · selection context
    Script read H/D: no/no

HTTP · Secure excluded

  1. İki alternatif cookie tanımı

    Host-only ile Domain=outreason.example ayrı varsayımsal konfigürasyonlardır; aynı jar’da çakışan iki hd_scope kaydı gösterilmiyor. Her biri zaten kabul edilmiş stored candidate’tır.

    Browser · candidate jar
    H: host-only · D: parent Domain
    Application · request received
    Request henüz yok
    Request · selection context
    Path=/books · Max-Age=1200
  2. Request context açık olarak seçilir

    Target, method, top-level navigation ve same-site metadata’sı bu fixture’da verilir. Same-site, same-origin ile aynı değildir; bu model Public Suffix List veya redirect chain hesaplamaz.

    Browser · candidate jar
    Candidate selection bekliyor
    Application · request received
    Request henüz yok
    Request · selection context
    GET http://library.outreason.example/books/42 · t=200
  3. Host ve slash-path kapıları

    Host-only exact host gerektirir; parent Domain uygun subdomain’i kapsayabilir. /books, /books/42 ile eşleşir ama /bookstore ile eşleşmez. Path bir authorization veya application isolation sınırı değildir.

    Browser · candidate jar
    host H/D ✓/✓ · path H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Scope değerlendirmesi local
  4. Browser lifetime ayrı hesaplanır

    Explicit browser model clock: creation t=100, Max-Age=1200; t=1300 dahil expired. Server session clock veya revocation bu cookie-selection modeliyle hesaplanmaz.

    Browser · candidate jar
    lifetime H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Browser clock t=200
  5. Kanal ve script erişimi farklıdır

    Secure ordinary HTTPS channel ister; labelled HTTP case loopback istisnası değildir. HttpOnly script API erişimini sınırlar; uygun request cookie’yi yine taşıyabilir. Buradaki script-read sonucu target ile aynı document context’i varsayar.

    Browser · candidate jar
    channel H/D ×/×
    Application · request received
    Request henüz yok
    Request · selection context
    Script read H/D: no/no
  6. Site ve browser request policy kapıları

    Explicit Lax cross-site safe top-level navigation’a izin verebilir; background POST’a vermez. Strict cross-site’i eler. None diğer scope/privacy/credentials koşullarını kaldırmaz. Bu modeller prefix, partition ve default-Lax compatibility parser’ı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Request henüz yok
    Request · selection context
    sameSite H/D ✓/✓ · privacy H/D ✓/✓ · credentials H/D ✓/✓
  7. HTTP request seçilmiş state ile ulaştı

    Cookie excluded olsa da HTTP request’in kendisi gerçekleşebilir. İki alternatifin eligibility sonucu ayrı gösterilir; browser’ın seçimi application permission kararı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Request alındı; cookie inclusion ayrı
    Request · selection context
    HTTP request geldi
  8. Cookie varlığı yalnız bir gözlemdir

    Server name/value alınmışsa bunu kendi doğrulama ve policy’sinde değerlendirir. Bu saf simulation gerçek browser jar’ı, authentication başarısı veya access hakkı kanıtı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Server validity/authz ayrı
    Request · selection context
    Script read H/D: no/no

Lax · top-level GET

  1. İki alternatif cookie tanımı

    Host-only ile Domain=outreason.example ayrı varsayımsal konfigürasyonlardır; aynı jar’da çakışan iki hd_scope kaydı gösterilmiyor. Her biri zaten kabul edilmiş stored candidate’tır.

    Browser · candidate jar
    H: host-only · D: parent Domain
    Application · request received
    Request henüz yok
    Request · selection context
    Path=/books · Max-Age=1200
  2. Request context açık olarak seçilir

    Target, method, top-level navigation ve same-site metadata’sı bu fixture’da verilir. Same-site, same-origin ile aynı değildir; bu model Public Suffix List veya redirect chain hesaplamaz.

    Browser · candidate jar
    Candidate selection bekliyor
    Application · request received
    Request henüz yok
    Request · selection context
    GET https://library.outreason.example/books/42 · t=200
  3. Host ve slash-path kapıları

    Host-only exact host gerektirir; parent Domain uygun subdomain’i kapsayabilir. /books, /books/42 ile eşleşir ama /bookstore ile eşleşmez. Path bir authorization veya application isolation sınırı değildir.

    Browser · candidate jar
    host H/D ✓/✓ · path H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Scope değerlendirmesi local
  4. Browser lifetime ayrı hesaplanır

    Explicit browser model clock: creation t=100, Max-Age=1200; t=1300 dahil expired. Server session clock veya revocation bu cookie-selection modeliyle hesaplanmaz.

    Browser · candidate jar
    lifetime H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Browser clock t=200
  5. Kanal ve script erişimi farklıdır

    Secure ordinary HTTPS channel ister; labelled HTTP case loopback istisnası değildir. HttpOnly script API erişimini sınırlar; uygun request cookie’yi yine taşıyabilir. Buradaki script-read sonucu target ile aynı document context’i varsayar.

    Browser · candidate jar
    channel H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Script read H/D: no/no
  6. Site ve browser request policy kapıları

    Explicit Lax cross-site safe top-level navigation’a izin verebilir; background POST’a vermez. Strict cross-site’i eler. None diğer scope/privacy/credentials koşullarını kaldırmaz. Bu modeller prefix, partition ve default-Lax compatibility parser’ı değildir.

    Browser · candidate jar
    Host-only: included · Domain: included
    Application · request received
    Request henüz yok
    Request · selection context
    sameSite H/D ✓/✓ · privacy H/D ✓/✓ · credentials H/D ✓/✓
  7. HTTP request seçilmiş state ile ulaştı

    Cookie excluded olsa da HTTP request’in kendisi gerçekleşebilir. İki alternatifin eligibility sonucu ayrı gösterilir; browser’ın seçimi application permission kararı değildir.

    Browser · candidate jar
    Host-only: included · Domain: included
    Application · request received
    Request alındı; cookie inclusion ayrı
    Request · selection context
    HTTP request geldi
  8. Cookie varlığı yalnız bir gözlemdir

    Server name/value alınmışsa bunu kendi doğrulama ve policy’sinde değerlendirir. Bu saf simulation gerçek browser jar’ı, authentication başarısı veya access hakkı kanıtı değildir.

    Browser · candidate jar
    Host-only: included · Domain: included
    Application · request received
    Server validity/authz ayrı
    Request · selection context
    Script read H/D: no/no

Lax · background POST

  1. İki alternatif cookie tanımı

    Host-only ile Domain=outreason.example ayrı varsayımsal konfigürasyonlardır; aynı jar’da çakışan iki hd_scope kaydı gösterilmiyor. Her biri zaten kabul edilmiş stored candidate’tır.

    Browser · candidate jar
    H: host-only · D: parent Domain
    Application · request received
    Request henüz yok
    Request · selection context
    Path=/books · Max-Age=1200
  2. Request context açık olarak seçilir

    Target, method, top-level navigation ve same-site metadata’sı bu fixture’da verilir. Same-site, same-origin ile aynı değildir; bu model Public Suffix List veya redirect chain hesaplamaz.

    Browser · candidate jar
    Candidate selection bekliyor
    Application · request received
    Request henüz yok
    Request · selection context
    POST https://library.outreason.example/books/42 · t=200
  3. Host ve slash-path kapıları

    Host-only exact host gerektirir; parent Domain uygun subdomain’i kapsayabilir. /books, /books/42 ile eşleşir ama /bookstore ile eşleşmez. Path bir authorization veya application isolation sınırı değildir.

    Browser · candidate jar
    host H/D ✓/✓ · path H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Scope değerlendirmesi local
  4. Browser lifetime ayrı hesaplanır

    Explicit browser model clock: creation t=100, Max-Age=1200; t=1300 dahil expired. Server session clock veya revocation bu cookie-selection modeliyle hesaplanmaz.

    Browser · candidate jar
    lifetime H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Browser clock t=200
  5. Kanal ve script erişimi farklıdır

    Secure ordinary HTTPS channel ister; labelled HTTP case loopback istisnası değildir. HttpOnly script API erişimini sınırlar; uygun request cookie’yi yine taşıyabilir. Buradaki script-read sonucu target ile aynı document context’i varsayar.

    Browser · candidate jar
    channel H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Script read H/D: no/no
  6. Site ve browser request policy kapıları

    Explicit Lax cross-site safe top-level navigation’a izin verebilir; background POST’a vermez. Strict cross-site’i eler. None diğer scope/privacy/credentials koşullarını kaldırmaz. Bu modeller prefix, partition ve default-Lax compatibility parser’ı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Request henüz yok
    Request · selection context
    sameSite H/D ×/× · privacy H/D ✓/✓ · credentials H/D ✓/✓
  7. HTTP request seçilmiş state ile ulaştı

    Cookie excluded olsa da HTTP request’in kendisi gerçekleşebilir. İki alternatifin eligibility sonucu ayrı gösterilir; browser’ın seçimi application permission kararı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Request alındı; cookie inclusion ayrı
    Request · selection context
    HTTP request geldi
  8. Cookie varlığı yalnız bir gözlemdir

    Server name/value alınmışsa bunu kendi doğrulama ve policy’sinde değerlendirir. Bu saf simulation gerçek browser jar’ı, authentication başarısı veya access hakkı kanıtı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Server validity/authz ayrı
    Request · selection context
    Script read H/D: no/no

t=1300 · expired

  1. İki alternatif cookie tanımı

    Host-only ile Domain=outreason.example ayrı varsayımsal konfigürasyonlardır; aynı jar’da çakışan iki hd_scope kaydı gösterilmiyor. Her biri zaten kabul edilmiş stored candidate’tır.

    Browser · candidate jar
    H: host-only · D: parent Domain
    Application · request received
    Request henüz yok
    Request · selection context
    Path=/books · Max-Age=1200
  2. Request context açık olarak seçilir

    Target, method, top-level navigation ve same-site metadata’sı bu fixture’da verilir. Same-site, same-origin ile aynı değildir; bu model Public Suffix List veya redirect chain hesaplamaz.

    Browser · candidate jar
    Candidate selection bekliyor
    Application · request received
    Request henüz yok
    Request · selection context
    GET https://library.outreason.example/books/42 · t=1300
  3. Host ve slash-path kapıları

    Host-only exact host gerektirir; parent Domain uygun subdomain’i kapsayabilir. /books, /books/42 ile eşleşir ama /bookstore ile eşleşmez. Path bir authorization veya application isolation sınırı değildir.

    Browser · candidate jar
    host H/D ✓/✓ · path H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Scope değerlendirmesi local
  4. Browser lifetime ayrı hesaplanır

    Explicit browser model clock: creation t=100, Max-Age=1200; t=1300 dahil expired. Server session clock veya revocation bu cookie-selection modeliyle hesaplanmaz.

    Browser · candidate jar
    lifetime H/D ×/×
    Application · request received
    Request henüz yok
    Request · selection context
    Browser clock t=1300
  5. Kanal ve script erişimi farklıdır

    Secure ordinary HTTPS channel ister; labelled HTTP case loopback istisnası değildir. HttpOnly script API erişimini sınırlar; uygun request cookie’yi yine taşıyabilir. Buradaki script-read sonucu target ile aynı document context’i varsayar.

    Browser · candidate jar
    channel H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Script read H/D: no/no
  6. Site ve browser request policy kapıları

    Explicit Lax cross-site safe top-level navigation’a izin verebilir; background POST’a vermez. Strict cross-site’i eler. None diğer scope/privacy/credentials koşullarını kaldırmaz. Bu modeller prefix, partition ve default-Lax compatibility parser’ı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Request henüz yok
    Request · selection context
    sameSite H/D ✓/✓ · privacy H/D ✓/✓ · credentials H/D ✓/✓
  7. HTTP request seçilmiş state ile ulaştı

    Cookie excluded olsa da HTTP request’in kendisi gerçekleşebilir. İki alternatifin eligibility sonucu ayrı gösterilir; browser’ın seçimi application permission kararı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Request alındı; cookie inclusion ayrı
    Request · selection context
    HTTP request geldi
  8. Cookie varlığı yalnız bir gözlemdir

    Server name/value alınmışsa bunu kendi doğrulama ve policy’sinde değerlendirir. Bu saf simulation gerçek browser jar’ı, authentication başarısı veya access hakkı kanıtı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Server validity/authz ayrı
    Request · selection context
    Script read H/D: no/no

None · privacy block

  1. İki alternatif cookie tanımı

    Host-only ile Domain=outreason.example ayrı varsayımsal konfigürasyonlardır; aynı jar’da çakışan iki hd_scope kaydı gösterilmiyor. Her biri zaten kabul edilmiş stored candidate’tır.

    Browser · candidate jar
    H: host-only · D: parent Domain
    Application · request received
    Request henüz yok
    Request · selection context
    Path=/books · Max-Age=1200
  2. Request context açık olarak seçilir

    Target, method, top-level navigation ve same-site metadata’sı bu fixture’da verilir. Same-site, same-origin ile aynı değildir; bu model Public Suffix List veya redirect chain hesaplamaz.

    Browser · candidate jar
    Candidate selection bekliyor
    Application · request received
    Request henüz yok
    Request · selection context
    GET https://library.outreason.example/books/42 · t=200
  3. Host ve slash-path kapıları

    Host-only exact host gerektirir; parent Domain uygun subdomain’i kapsayabilir. /books, /books/42 ile eşleşir ama /bookstore ile eşleşmez. Path bir authorization veya application isolation sınırı değildir.

    Browser · candidate jar
    host H/D ✓/✓ · path H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Scope değerlendirmesi local
  4. Browser lifetime ayrı hesaplanır

    Explicit browser model clock: creation t=100, Max-Age=1200; t=1300 dahil expired. Server session clock veya revocation bu cookie-selection modeliyle hesaplanmaz.

    Browser · candidate jar
    lifetime H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Browser clock t=200
  5. Kanal ve script erişimi farklıdır

    Secure ordinary HTTPS channel ister; labelled HTTP case loopback istisnası değildir. HttpOnly script API erişimini sınırlar; uygun request cookie’yi yine taşıyabilir. Buradaki script-read sonucu target ile aynı document context’i varsayar.

    Browser · candidate jar
    channel H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Script read H/D: no/no
  6. Site ve browser request policy kapıları

    Explicit Lax cross-site safe top-level navigation’a izin verebilir; background POST’a vermez. Strict cross-site’i eler. None diğer scope/privacy/credentials koşullarını kaldırmaz. Bu modeller prefix, partition ve default-Lax compatibility parser’ı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Request henüz yok
    Request · selection context
    sameSite H/D ✓/✓ · privacy H/D ×/× · credentials H/D ✓/✓
  7. HTTP request seçilmiş state ile ulaştı

    Cookie excluded olsa da HTTP request’in kendisi gerçekleşebilir. İki alternatifin eligibility sonucu ayrı gösterilir; browser’ın seçimi application permission kararı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Request alındı; cookie inclusion ayrı
    Request · selection context
    HTTP request geldi
  8. Cookie varlığı yalnız bir gözlemdir

    Server name/value alınmışsa bunu kendi doğrulama ve policy’sinde değerlendirir. Bu saf simulation gerçek browser jar’ı, authentication başarısı veya access hakkı kanıtı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Server validity/authz ayrı
    Request · selection context
    Script read H/D: no/no

Strict · cross-site

  1. İki alternatif cookie tanımı

    Host-only ile Domain=outreason.example ayrı varsayımsal konfigürasyonlardır; aynı jar’da çakışan iki hd_scope kaydı gösterilmiyor. Her biri zaten kabul edilmiş stored candidate’tır.

    Browser · candidate jar
    H: host-only · D: parent Domain
    Application · request received
    Request henüz yok
    Request · selection context
    Path=/books · Max-Age=1200
  2. Request context açık olarak seçilir

    Target, method, top-level navigation ve same-site metadata’sı bu fixture’da verilir. Same-site, same-origin ile aynı değildir; bu model Public Suffix List veya redirect chain hesaplamaz.

    Browser · candidate jar
    Candidate selection bekliyor
    Application · request received
    Request henüz yok
    Request · selection context
    GET https://library.outreason.example/books/42 · t=200
  3. Host ve slash-path kapıları

    Host-only exact host gerektirir; parent Domain uygun subdomain’i kapsayabilir. /books, /books/42 ile eşleşir ama /bookstore ile eşleşmez. Path bir authorization veya application isolation sınırı değildir.

    Browser · candidate jar
    host H/D ✓/✓ · path H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Scope değerlendirmesi local
  4. Browser lifetime ayrı hesaplanır

    Explicit browser model clock: creation t=100, Max-Age=1200; t=1300 dahil expired. Server session clock veya revocation bu cookie-selection modeliyle hesaplanmaz.

    Browser · candidate jar
    lifetime H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Browser clock t=200
  5. Kanal ve script erişimi farklıdır

    Secure ordinary HTTPS channel ister; labelled HTTP case loopback istisnası değildir. HttpOnly script API erişimini sınırlar; uygun request cookie’yi yine taşıyabilir. Buradaki script-read sonucu target ile aynı document context’i varsayar.

    Browser · candidate jar
    channel H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Script read H/D: no/no
  6. Site ve browser request policy kapıları

    Explicit Lax cross-site safe top-level navigation’a izin verebilir; background POST’a vermez. Strict cross-site’i eler. None diğer scope/privacy/credentials koşullarını kaldırmaz. Bu modeller prefix, partition ve default-Lax compatibility parser’ı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Request henüz yok
    Request · selection context
    sameSite H/D ×/× · privacy H/D ✓/✓ · credentials H/D ✓/✓
  7. HTTP request seçilmiş state ile ulaştı

    Cookie excluded olsa da HTTP request’in kendisi gerçekleşebilir. İki alternatifin eligibility sonucu ayrı gösterilir; browser’ın seçimi application permission kararı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Request alındı; cookie inclusion ayrı
    Request · selection context
    HTTP request geldi
  8. Cookie varlığı yalnız bir gözlemdir

    Server name/value alınmışsa bunu kendi doğrulama ve policy’sinde değerlendirir. Bu saf simulation gerçek browser jar’ı, authentication başarısı veya access hakkı kanıtı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Server validity/authz ayrı
    Request · selection context
    Script read H/D: no/no

HttpOnly · script no

  1. İki alternatif cookie tanımı

    Host-only ile Domain=outreason.example ayrı varsayımsal konfigürasyonlardır; aynı jar’da çakışan iki hd_scope kaydı gösterilmiyor. Her biri zaten kabul edilmiş stored candidate’tır.

    Browser · candidate jar
    H: host-only · D: parent Domain
    Application · request received
    Request henüz yok
    Request · selection context
    Path=/books · Max-Age=1200
  2. Request context açık olarak seçilir

    Target, method, top-level navigation ve same-site metadata’sı bu fixture’da verilir. Same-site, same-origin ile aynı değildir; bu model Public Suffix List veya redirect chain hesaplamaz.

    Browser · candidate jar
    Candidate selection bekliyor
    Application · request received
    Request henüz yok
    Request · selection context
    GET https://library.outreason.example/books/42 · t=200
  3. Host ve slash-path kapıları

    Host-only exact host gerektirir; parent Domain uygun subdomain’i kapsayabilir. /books, /books/42 ile eşleşir ama /bookstore ile eşleşmez. Path bir authorization veya application isolation sınırı değildir.

    Browser · candidate jar
    host H/D ✓/✓ · path H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Scope değerlendirmesi local
  4. Browser lifetime ayrı hesaplanır

    Explicit browser model clock: creation t=100, Max-Age=1200; t=1300 dahil expired. Server session clock veya revocation bu cookie-selection modeliyle hesaplanmaz.

    Browser · candidate jar
    lifetime H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Browser clock t=200
  5. Kanal ve script erişimi farklıdır

    Secure ordinary HTTPS channel ister; labelled HTTP case loopback istisnası değildir. HttpOnly script API erişimini sınırlar; uygun request cookie’yi yine taşıyabilir. Buradaki script-read sonucu target ile aynı document context’i varsayar.

    Browser · candidate jar
    channel H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Script read H/D: no/no
  6. Site ve browser request policy kapıları

    Explicit Lax cross-site safe top-level navigation’a izin verebilir; background POST’a vermez. Strict cross-site’i eler. None diğer scope/privacy/credentials koşullarını kaldırmaz. Bu modeller prefix, partition ve default-Lax compatibility parser’ı değildir.

    Browser · candidate jar
    Host-only: included · Domain: included
    Application · request received
    Request henüz yok
    Request · selection context
    sameSite H/D ✓/✓ · privacy H/D ✓/✓ · credentials H/D ✓/✓
  7. HTTP request seçilmiş state ile ulaştı

    Cookie excluded olsa da HTTP request’in kendisi gerçekleşebilir. İki alternatifin eligibility sonucu ayrı gösterilir; browser’ın seçimi application permission kararı değildir.

    Browser · candidate jar
    Host-only: included · Domain: included
    Application · request received
    Request alındı; cookie inclusion ayrı
    Request · selection context
    HTTP request geldi
  8. Cookie varlığı yalnız bir gözlemdir

    Server name/value alınmışsa bunu kendi doğrulama ve policy’sinde değerlendirir. Bu saf simulation gerçek browser jar’ı, authentication başarısı veya access hakkı kanıtı değildir.

    Browser · candidate jar
    Host-only: included · Domain: included
    Application · request received
    Server validity/authz ayrı
    Request · selection context
    Script read H/D: no/no

Script-readable

  1. İki alternatif cookie tanımı

    Host-only ile Domain=outreason.example ayrı varsayımsal konfigürasyonlardır; aynı jar’da çakışan iki hd_scope kaydı gösterilmiyor. Her biri zaten kabul edilmiş stored candidate’tır.

    Browser · candidate jar
    H: host-only · D: parent Domain
    Application · request received
    Request henüz yok
    Request · selection context
    Path=/books · Max-Age=1200
  2. Request context açık olarak seçilir

    Target, method, top-level navigation ve same-site metadata’sı bu fixture’da verilir. Same-site, same-origin ile aynı değildir; bu model Public Suffix List veya redirect chain hesaplamaz.

    Browser · candidate jar
    Candidate selection bekliyor
    Application · request received
    Request henüz yok
    Request · selection context
    GET https://library.outreason.example/books/42 · t=200
  3. Host ve slash-path kapıları

    Host-only exact host gerektirir; parent Domain uygun subdomain’i kapsayabilir. /books, /books/42 ile eşleşir ama /bookstore ile eşleşmez. Path bir authorization veya application isolation sınırı değildir.

    Browser · candidate jar
    host H/D ✓/✓ · path H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Scope değerlendirmesi local
  4. Browser lifetime ayrı hesaplanır

    Explicit browser model clock: creation t=100, Max-Age=1200; t=1300 dahil expired. Server session clock veya revocation bu cookie-selection modeliyle hesaplanmaz.

    Browser · candidate jar
    lifetime H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Browser clock t=200
  5. Kanal ve script erişimi farklıdır

    Secure ordinary HTTPS channel ister; labelled HTTP case loopback istisnası değildir. HttpOnly script API erişimini sınırlar; uygun request cookie’yi yine taşıyabilir. Buradaki script-read sonucu target ile aynı document context’i varsayar.

    Browser · candidate jar
    channel H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Script read H/D: yes/yes
  6. Site ve browser request policy kapıları

    Explicit Lax cross-site safe top-level navigation’a izin verebilir; background POST’a vermez. Strict cross-site’i eler. None diğer scope/privacy/credentials koşullarını kaldırmaz. Bu modeller prefix, partition ve default-Lax compatibility parser’ı değildir.

    Browser · candidate jar
    Host-only: included · Domain: included
    Application · request received
    Request henüz yok
    Request · selection context
    sameSite H/D ✓/✓ · privacy H/D ✓/✓ · credentials H/D ✓/✓
  7. HTTP request seçilmiş state ile ulaştı

    Cookie excluded olsa da HTTP request’in kendisi gerçekleşebilir. İki alternatifin eligibility sonucu ayrı gösterilir; browser’ın seçimi application permission kararı değildir.

    Browser · candidate jar
    Host-only: included · Domain: included
    Application · request received
    Request alındı; cookie inclusion ayrı
    Request · selection context
    HTTP request geldi
  8. Cookie varlığı yalnız bir gözlemdir

    Server name/value alınmışsa bunu kendi doğrulama ve policy’sinde değerlendirir. Bu saf simulation gerçek browser jar’ı, authentication başarısı veya access hakkı kanıtı değildir.

    Browser · candidate jar
    Host-only: included · Domain: included
    Application · request received
    Server validity/authz ayrı
    Request · selection context
    Script read H/D: yes/yes

İlgisiz host · excluded

  1. İki alternatif cookie tanımı

    Host-only ile Domain=outreason.example ayrı varsayımsal konfigürasyonlardır; aynı jar’da çakışan iki hd_scope kaydı gösterilmiyor. Her biri zaten kabul edilmiş stored candidate’tır.

    Browser · candidate jar
    H: host-only · D: parent Domain
    Application · request received
    Request henüz yok
    Request · selection context
    Path=/books · Max-Age=1200
  2. Request context açık olarak seçilir

    Target, method, top-level navigation ve same-site metadata’sı bu fixture’da verilir. Same-site, same-origin ile aynı değildir; bu model Public Suffix List veya redirect chain hesaplamaz.

    Browser · candidate jar
    Candidate selection bekliyor
    Application · request received
    Request henüz yok
    Request · selection context
    GET https://other.example/books/42 · t=200
  3. Host ve slash-path kapıları

    Host-only exact host gerektirir; parent Domain uygun subdomain’i kapsayabilir. /books, /books/42 ile eşleşir ama /bookstore ile eşleşmez. Path bir authorization veya application isolation sınırı değildir.

    Browser · candidate jar
    host H/D ×/× · path H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Scope değerlendirmesi local
  4. Browser lifetime ayrı hesaplanır

    Explicit browser model clock: creation t=100, Max-Age=1200; t=1300 dahil expired. Server session clock veya revocation bu cookie-selection modeliyle hesaplanmaz.

    Browser · candidate jar
    lifetime H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Browser clock t=200
  5. Kanal ve script erişimi farklıdır

    Secure ordinary HTTPS channel ister; labelled HTTP case loopback istisnası değildir. HttpOnly script API erişimini sınırlar; uygun request cookie’yi yine taşıyabilir. Buradaki script-read sonucu target ile aynı document context’i varsayar.

    Browser · candidate jar
    channel H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Script read H/D: no/no
  6. Site ve browser request policy kapıları

    Explicit Lax cross-site safe top-level navigation’a izin verebilir; background POST’a vermez. Strict cross-site’i eler. None diğer scope/privacy/credentials koşullarını kaldırmaz. Bu modeller prefix, partition ve default-Lax compatibility parser’ı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Request henüz yok
    Request · selection context
    sameSite H/D ✓/✓ · privacy H/D ✓/✓ · credentials H/D ✓/✓
  7. HTTP request seçilmiş state ile ulaştı

    Cookie excluded olsa da HTTP request’in kendisi gerçekleşebilir. İki alternatifin eligibility sonucu ayrı gösterilir; browser’ın seçimi application permission kararı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Request alındı; cookie inclusion ayrı
    Request · selection context
    HTTP request geldi
  8. Cookie varlığı yalnız bir gözlemdir

    Server name/value alınmışsa bunu kendi doğrulama ve policy’sinde değerlendirir. Bu saf simulation gerçek browser jar’ı, authentication başarısı veya access hakkı kanıtı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Server validity/authz ayrı
    Request · selection context
    Script read H/D: no/no

Credentials omitted

  1. İki alternatif cookie tanımı

    Host-only ile Domain=outreason.example ayrı varsayımsal konfigürasyonlardır; aynı jar’da çakışan iki hd_scope kaydı gösterilmiyor. Her biri zaten kabul edilmiş stored candidate’tır.

    Browser · candidate jar
    H: host-only · D: parent Domain
    Application · request received
    Request henüz yok
    Request · selection context
    Path=/books · Max-Age=1200
  2. Request context açık olarak seçilir

    Target, method, top-level navigation ve same-site metadata’sı bu fixture’da verilir. Same-site, same-origin ile aynı değildir; bu model Public Suffix List veya redirect chain hesaplamaz.

    Browser · candidate jar
    Candidate selection bekliyor
    Application · request received
    Request henüz yok
    Request · selection context
    GET https://library.outreason.example/books/42 · t=200
  3. Host ve slash-path kapıları

    Host-only exact host gerektirir; parent Domain uygun subdomain’i kapsayabilir. /books, /books/42 ile eşleşir ama /bookstore ile eşleşmez. Path bir authorization veya application isolation sınırı değildir.

    Browser · candidate jar
    host H/D ✓/✓ · path H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Scope değerlendirmesi local
  4. Browser lifetime ayrı hesaplanır

    Explicit browser model clock: creation t=100, Max-Age=1200; t=1300 dahil expired. Server session clock veya revocation bu cookie-selection modeliyle hesaplanmaz.

    Browser · candidate jar
    lifetime H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Browser clock t=200
  5. Kanal ve script erişimi farklıdır

    Secure ordinary HTTPS channel ister; labelled HTTP case loopback istisnası değildir. HttpOnly script API erişimini sınırlar; uygun request cookie’yi yine taşıyabilir. Buradaki script-read sonucu target ile aynı document context’i varsayar.

    Browser · candidate jar
    channel H/D ✓/✓
    Application · request received
    Request henüz yok
    Request · selection context
    Script read H/D: no/no
  6. Site ve browser request policy kapıları

    Explicit Lax cross-site safe top-level navigation’a izin verebilir; background POST’a vermez. Strict cross-site’i eler. None diğer scope/privacy/credentials koşullarını kaldırmaz. Bu modeller prefix, partition ve default-Lax compatibility parser’ı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Request henüz yok
    Request · selection context
    sameSite H/D ✓/✓ · privacy H/D ✓/✓ · credentials H/D ×/×
  7. HTTP request seçilmiş state ile ulaştı

    Cookie excluded olsa da HTTP request’in kendisi gerçekleşebilir. İki alternatifin eligibility sonucu ayrı gösterilir; browser’ın seçimi application permission kararı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Request alındı; cookie inclusion ayrı
    Request · selection context
    HTTP request geldi
  8. Cookie varlığı yalnız bir gözlemdir

    Server name/value alınmışsa bunu kendi doğrulama ve policy’sinde değerlendirir. Bu saf simulation gerçek browser jar’ı, authentication başarısı veya access hakkı kanıtı değildir.

    Browser · candidate jar
    Host-only: excluded · Domain: excluded
    Application · request received
    Server validity/authz ayrı
    Request · selection context
    Script read H/D: no/no

ROLLER · STATE · VERİ AKIŞI

Cookie jar’da duruyor; request’te neden yok?

Duru’nun Browser’ında Atlas kitaplığı için hd_scope kaydı görünür. Buna rağmen başka bir URL’e giden request onu taşımayabilir. Cookie inclusion tek bir “cookie var mı?” sorusu değildir: scope, süre, kanal, site bağlamı ve Browser policy birlikte değerlendirilir.

Bu derste application permission kararı vermiyoruz. Hedef, Browser’ın aday bir kaydı request’e dahil edip etmediğini açıklamak. Included sonucu server’ın authenticated state’i kabul ettiği veya kitabı okuma izni verdiği anlamına gelmez. WEB-13 session ve WEB-14 authorization dersleri bu sonraki kararları ayırır.

Domain verilmezse host-only; verilirse kapsam genişler

Cookie library.outreason.example’den Domain olmadan kurulursa host-only olur: aynı host için adaydır, api.library.outreason.example gibi subdomain’e otomatik yayılmaz. Domain=outreason.example ise cookie bu domain ve uygun subdomain’ler için aday olabilir. Server tamamen ilgisiz domain’i veya public suffix’i serbestçe seçemez.

Artifact iki ayrı scope tanımını karşılaştırır; eşzamanlı aynı isimli cookie collision modeli kurmaz. Subdomain case’inde host-only excluded, domain-scoped included beklenir. Fark, sayfa path’inden veya tenant permission’ından değil, Browser’ın host matching değerlendirmesinden gelir.

Cookie scope, origin ile aynı kavram değildir. Origin scheme/host/port üçlüsünü kullanır; cookie domain/path sistemi farklıdır. Cookie’ler port numarasına göre izolasyon sağlamaz. Aynı host üzerindeki iki uygulamayı yalnız farklı port veya path kullanıyor diye ayrı cookie güvenlik alanı sayma.

Path eşleşmesi bir string prefix tahmininden fazlasıdır

Path=/books olan cookie /books ve /books/42 request’lerinde adaydır; /bookstore için aday değildir. Slash boundary önemlidir. Path verilmezse default path response’un request URL’inden türetilir; her zaman / olduğunu varsayma.

Bu seçim hangi request’te cookie taşınacağını sınırlar. Aynı host’un /admin ve /books uygulamaları arasında güvenilir isolation kurmaz. UI routing veya cookie Path filtresi server authorization kontrolünün yerine geçemez.

Lifetime: saklama süresi ve Browser session’ı

Max-Age cookie ömrünü saniyeyle, Expires bir tarih olarak belirtir; ikisi birlikte olduğunda Max-Age önceliklidir. Artifact’te kaydın Browser clock’u t=100’de başladığı ve Max-Age=1200 olduğu kabul edilir; t=1300’de cookie expired sayılır. Bu explicit model clock gerçek saat capture’ı değildir.

Session cookie’de Max-Age/Expires bulunmaz. “Session bitti” sınırını Browser tanımlar; session restore kaydı yeniden getirebilir. Persistent cookie süre taşır, ama Browser’ın o süreye kadar mutlaka tutacağı garantisi değildir: kullanıcı temizliği, privacy policy veya storage eviction kaydı daha erken kaldırabilir.

Bu Browser lifetime hesabını server session expiry hesabına eşitleme. Cookie hâlâ mevcutken server session invalid olabilir; jar’dan silinmiş cookie de server kaydını otomatik iptal etmez. WEB-13.03 iki state’in lifecycle’ını açar.

Secure ve HttpOnly iki farklı kontrol

Secure cookie için normal web kullanımında HTTPS taşıması gerekir; artifact HTTP case’ini bu yüzden excluded yapar. Localhost istisnaları ve Browser uyumluluğu ayrı değerlendirilir. Secure cookie’nin değerini disk veya script erişimine karşı tek başına koruduğu varsayılmaz.

HttpOnly script cookie API erişimini sınırlar. Browser cookie’yi uygun fetch veya başka request’e yine taşıyabilir; bu flag “request oluşturulamaz” anlamına gelmez. Session handle için script erişimini daraltmak ile action’ın izinli olduğunu doğrulamak farklı boundary’lerdir.

Prefix desteği olan Browser’da __Host- isim, Secure + Path=/ + Domain yok koşullarını zorlar. Artifact’in /books scope örneği bu prefix’i kullanmaz; ikisini aynı cookie’de gösterip prefix kuralını bozmuyoruz. Uyumluluk ve application host tasarımı birlikte seçilir.

SameSite: site bağlamını method ve navigation ile oku

Same-site değerlendirmesi, scheme ile registrable domain bağlamına dayanır; aynı origin olmakla eşit değildir. Lax cookie aynı-site request’te adaydır. Cross-site request’te ise explicit Lax için top-level navigation ve safe method gibi koşullar önemlidir: normal link navigation GET ile arka plandaki fetch POST aynı sonuç vermez.

Strict cross-site inclusion’ı daha sıkı sınırlar. None cross-site inclusion’a izin veren bir ayardır ve Secure gerektirir; bütün diğer koşulları veya Browser privacy policy’sini kaldırmaz. Default SameSite davranışı ve geçici compatibility istisnaları Browser’a bağlı olabilir; artifact açıkça Lax kullandığı için default-policy kestirmesi yapmaz.

Fetch’in credentials mode’u ayrıca vardır. same-origin default’u, farklı origin’e yapılan fetch’te cookie’yi taşımayabilir; include seçimi de SameSite veya third-party kısıtını geçersiz kılmaz. CORS ise response’un script tarafından okunmasıyla ilgili ayrı değerlendirmeler içerir. Tek “cross-domain açık” anahtarı bu kararları doğru modellemez.

Third-party koşulları bir ek policy kapısıdır

Başka bir site içinde embedded olan kitaplık widget’ı SameSite=None; Secure kullansa bile Browser third-party state’i block veya partition edebilir. Uygulama/browser sürümü, kullanıcı ayarı ve kullanım bağlamı gözlenmeden “None her yerde çalışır” denmez. Burada belirli Browser’ın güncel vendor roadmap’ini ders garantisi yapmıyoruz.

Artifact’te privacy gate blocked olduğunda candidate cookie’nin other gates sonucu uygun olsa bile final inclusion excluded olur. Bu cookie parser hatası veya failed authentication kanıtı değildir. Öğrenci storage acceptance, request inclusion ve server validity aşamalarını ayrı gerekçelendirmelidir.

2. Red · Güven ve etki

Hareket olmadan bütün senaryoları oku

Host kapsamı

  1. Aday konfigürasyonlar ayrıldı

    host-only ve domain-scoped aynı isimli iki eşzamanlı cookie değildir. Artifact iki alternatif konfigürasyonu karşılaştırır; ikisinde Path=/books, Secure ve HttpOnly vardır.

    Cookie adayları
    hd_scope: iki ayrı aday
    Request context
    Context seçilmedi
    Karar sınırı
    Inclusion kararı yok
  2. Request context’i seçildi

    Seçilen case’in hedefi api.library.outreason.example olarak okunur. Method GET, now_s=200 ve sameSite=true koşulları sabittir; bu sahne bir request göndermeden uygunluğu açıklar.

    Cookie adayları
    hd_scope: iki ayrı aday
    Request context
    api.library.outreason.example
    Karar sınırı
    Inclusion kararı yok
  3. Eşleşme gate’i değerlendirildi

    Host-only kayıt yalnız library.outreason.example host’u için geçerlidir.

    Cookie adayları
    host-only=false; domain-scoped=true
    Request context
    api.library.outreason.example
    Karar sınırı
    Inclusion kararı yok
  4. Uygunluk sonucu ayrıldı

    Domain seçimi subdomain için adaylığı genişletir, fakat bu uygulamalar arasında eşit güven veya ortak authorization kurulduğunu göstermez.

    Cookie adayları
    host-only=false; domain-scoped=true
    Request context
    api.library.outreason.example
    Karar sınırı
    host_only_does_not_match_subdomain
  5. Flags yetki yerine geçmez

    Secure taşıma koşulunu, HttpOnly script erişimini sınırlar. Daha geniş Domain için bu iki flag application’ın object/action kontrolünü devralmaz.

    Cookie adayları
    hd_scope: iki ayrı aday
    Request context
    api.library.outreason.example
    Karar sınırı
    Authorization ayrı
  6. Cookie taşıma hükmü sınırlandı

    Artifact yalnız host-only=false; domain-scoped=true inclusion sonucunu verir. Server’ın session kabulü, resource izni veya kullanıcının action niyeti bu matristen çıkarılamaz.

    Cookie adayları
    host-only=false; domain-scoped=true
    Request context
    api.library.outreason.example
    Karar sınırı
    Yalnız inclusion kanıtı

Path sınırı

  1. Aday konfigürasyonlar ayrıldı

    host-only ve domain-scoped aynı isimli iki eşzamanlı cookie değildir. Artifact iki alternatif konfigürasyonu karşılaştırır; ikisinde Path=/books, Secure ve HttpOnly vardır.

    Cookie adayları
    hd_scope: iki ayrı aday
    Request context
    Context seçilmedi
    Karar sınırı
    Inclusion kararı yok
  2. Request context’i seçildi

    Seçilen case’in hedefi /bookstore olarak okunur. Method GET, now_s=200 ve sameSite=true koşulları sabittir; bu sahne bir request göndermeden uygunluğu açıklar.

    Cookie adayları
    hd_scope: iki ayrı aday
    Request context
    /bookstore
    Karar sınırı
    Inclusion kararı yok
  3. Eşleşme gate’i değerlendirildi

    Path=/books, /bookstore ile slash sınırında eşleşmez; ortak başlangıç metni tek başına path-match sağlamaz.

    Cookie adayları
    host-only=false; domain-scoped=false
    Request context
    /bookstore
    Karar sınırı
    Inclusion kararı yok
  4. Uygunluk sonucu ayrıldı

    İki aday bu path için dışarıda kalır. Cookie’nin dışarıda kalması HTTP request’in hiç gönderilemeyeceği anlamına gelmez.

    Cookie adayları
    host-only=false; domain-scoped=false
    Request context
    /bookstore
    Karar sınırı
    slash_path_boundary_not_matched
  5. Flags yetki yerine geçmez

    Secure taşıma koşulunu, HttpOnly script erişimini sınırlar. Path seçimi, aynı host’taki uygulamalar arasında bağımsız bir güvenlik sınırı oluşturmaz.

    Cookie adayları
    hd_scope: iki ayrı aday
    Request context
    /bookstore
    Karar sınırı
    Authorization ayrı
  6. Cookie taşıma hükmü sınırlandı

    Artifact yalnız host-only=false; domain-scoped=false inclusion sonucunu verir. Server’ın session kabulü, resource izni veya kullanıcının action niyeti bu matristen çıkarılamaz.

    Cookie adayları
    host-only=false; domain-scoped=false
    Request context
    /bookstore
    Karar sınırı
    Yalnız inclusion kanıtı

VARSAYIM · SINIR · KONTROL

Kapsamı büyütürken güven alanını da düşün

Domain=outreason.example seçimi Browser’a birden fazla host için aday kayıt verir. Normal işlev ortak tercih taşımak olabilir; kritik varsayım bu host’ların state kullanımının aynı güven düzeyinde olmasıdır. Host-only seçenek yeterliyse scope’u büyütmek gereksiz paylaşım oluşturabilir.

Etki, paylaşılan değerin niteliğine ve ilgili uygulamaların kontrolüne bağlıdır. Preference ile authenticated handle aynı impact taşımaz. Dar scope, uygun host ayrımı ve server-owned authorization birlikte tasarlanır; Path=/books tek başına sub-application güvenliği sağlamaz.

Bir flag’i bütün kontrollerin yerine koyma

HttpOnly bir cookie’nin script API’de görünmesini engelleyebilir; state-changing bir action’ın kim tarafından ve hangi context’te onaylandığını söylemez. Secure uygun taşıma seçer; store’da artık kabul edilmemesi gereken handle’a yeniden yetki vermez.

SameSite da hangi cross-site request’lere cookie ekleneceğini etkiler. Bu gate’den geçen request’in object/action yetkisi server’da ayrıca değerlendirilir. Broken assumption, “cookie uygun taşındıysa işlem güvenli” düşüncesidir. Kontrolün türünü ve sınırını ayırmak bu yanlış authority aktarımını engeller.

3. Blue · Güvenli geliştirme ve savunma

Hareket olmadan bütün senaryoları oku

Lifetime eşiği

  1. Excluded case seçildi

    İnceleme matristeki lifetime-boundary satırından başlar. included=false sonucu iki aday için de beklenir; henüz gerçek browser exclusion kaydı sunulmuş değildir.

    Matrix kaydı
    case=lifetime-boundary
    Gate incelemesi
    Gate karşılaştırılmadı
    Kanıt sonucu
    Browser gözlemi yok
  2. Neden alanı incelendi

    createdAt_s=100 ve maxAge_s=1200 olduğundan expiry=1300’dür. now_s=1300 tam bu sınıra ulaşır; equality dışarıda kalır.

    Matrix kaydı
    case=lifetime-boundary
    Gate incelemesi
    max_age_boundary_reached
    Kanıt sonucu
    Browser gözlemi yok
  3. Diğer gate’ler karara karıştırılmadı

    Hedef HTTPS ve /books/42 olduğu için bu satırın lifetime nedeni, Secure veya Path hatası diye yeniden adlandırılmaz.

    Matrix kaydı
    case=lifetime-boundary
    Gate incelemesi
    Beklenen dışlama açıklanıyor
    Kanıt sonucu
    Browser gözlemi yok
  4. XPath kapsamı korundu

    included=false koşulu modelin toplam 11 excluded kararını seçer. Bu sayının iki konfigürasyon ve çoklu case satırlarına ait olması, 11 gerçek browser hatası gözlendiğini göstermez.

    Matrix kaydı
    case=lifetime-boundary
    Gate incelemesi
    Model toplamı: 11 excluded
    Kanıt sonucu
    Browser gözlemi yok
  5. Gerçek inclusion kanıtı ayrıldı

    Matristeki reason, beklenen model sonucudur. Gerçek request’in Cookie alanı, credentials mode ve browser exclusion nedeni yoksa observed inclusion hakkında hüküm kurulmaz.

    Matrix kaydı
    case=lifetime-boundary
    Gate incelemesi
    max_age_boundary_reached
    Kanıt sonucu
    Observed inclusion bilinmiyor
  6. Benign dışlama hükmü verildi

    Bu case’in beklenen exclusion nedeni açıklanabilir. Cookie yokluğundan saldırı, login başarısızlığı veya server’da yetki reddi çıkarılmaz; bunların kendi kanıtı gerekir.

    Matrix kaydı
    case=lifetime-boundary
    Gate incelemesi
    Beklenen sonuç: excluded
    Kanıt sonucu
    Browser sonucu ayrı kanıt ister

Privacy engeli

  1. Excluded case seçildi

    İnceleme matristeki privacy-blocked-none satırından başlar. included=false sonucu iki aday için de beklenir; henüz gerçek browser exclusion kaydı sunulmuş değildir.

    Matrix kaydı
    case=privacy-blocked-none
    Gate incelemesi
    Gate karşılaştırılmadı
    Kanıt sonucu
    Browser gözlemi yok
  2. Neden alanı incelendi

    Bu alternatif konfigürasyonda SameSite=None seçilidir, ancak browserPolicyAllowed=false kalır. None, üçüncü taraf engelini kaldıran bir izin değildir.

    Matrix kaydı
    case=privacy-blocked-none
    Gate incelemesi
    none_does_not_override_third_party_blocking
    Kanıt sonucu
    Browser gözlemi yok
  3. Diğer gate’ler karara karıştırılmadı

    Bu satırın privacy nedeni, Lax uygulanıyormuş gibi açıklanmaz. Override yalnız bu alternatif case’e aittir; diğer kayıtlar değişmiş sayılmaz.

    Matrix kaydı
    case=privacy-blocked-none
    Gate incelemesi
    Beklenen dışlama açıklanıyor
    Kanıt sonucu
    Browser gözlemi yok
  4. XPath kapsamı korundu

    included=false koşulu modelin toplam 11 excluded kararını seçer. Bu sayının iki konfigürasyon ve çoklu case satırlarına ait olması, 11 gerçek browser hatası gözlendiğini göstermez.

    Matrix kaydı
    case=privacy-blocked-none
    Gate incelemesi
    Model toplamı: 11 excluded
    Kanıt sonucu
    Browser gözlemi yok
  5. Gerçek inclusion kanıtı ayrıldı

    Matristeki reason, beklenen model sonucudur. Gerçek request’in Cookie alanı, credentials mode ve browser exclusion nedeni yoksa observed inclusion hakkında hüküm kurulmaz.

    Matrix kaydı
    case=privacy-blocked-none
    Gate incelemesi
    none_does_not_override_third_party_blocking
    Kanıt sonucu
    Observed inclusion bilinmiyor
  6. Benign dışlama hükmü verildi

    Bu case’in beklenen exclusion nedeni açıklanabilir. Cookie yokluğundan saldırı, login başarısızlığı veya server’da yetki reddi çıkarılmaz; bunların kendi kanıtı gerekir.

    Matrix kaydı
    case=privacy-blocked-none
    Gate incelemesi
    Beklenen sonuç: excluded
    Kanıt sonucu
    Browser sonucu ayrı kanıt ister

UYGULAMA · GÜVENLİK KONTROLÜ · DOĞRULAMA

Inclusion kararını koşul koşul gözle

Cookie storage’daki Domain/host-only, Path, expiry ve flags alanlarını hedef URL ve request context ile yan yana koy. Network’te cookie yoksa önce Browser’ın exclusion reason’ını ve request’in method/navigation türünü incele. Sadece cookie adını veya server status kodunu görmek missing inclusion’ın nedenini açıklamaz.

Artifact’in gate matrisi hostMatch, pathMatch, secureChannel, lifetimeValid, sameSiteEligible ve browserPolicyAllowed alanlarını ayrı taşır. Bunlar uygulama log’unda hazır gelen standard field’lar değil, öğretim modelimizin açıklama alanlarıdır. Gerçek Browser’ın bütün privacy veya partition algoritmasını taklit ettiğimizi iddia etmiyoruz.

Basit selection ve eksik kanıt

Matrix XML üstündeki /cookieDecisions/decision[@included="false"] XPath’i yalnız modelin excluded case’lerini seçer. Beklenen benign sonuçlar subdomain host-only, path mismatch, insecure channel ve cross-site POST Lax durumlarını içerir. Seçilen satırları “attack” diye adlandırmak yanlıştır.

Included beklenen bir satırın gerçek Browser’da bulunmaması ek privacy ayarı, credentials mode veya trace eksikliğiyle açıklanabilir. Cookie’den çıkarılan user veya tenant yerine name/scope class ve requestId gibi sınırlı observation verisi kullan. Sensitive cookie value’yu genel log’a taşımadan karar nedeni kaydet.

Policy değişimini compatibility ile doğrula

Scope daraltma veya SameSite değiştirme kararı login redirect, embedded widget ve subdomain akışlarını etkileyebilir. Önce hangi akışın cross-site, cross-origin veya aynı host olduğunu envantere çıkar. Küçük bir kullanıcı grubunda hem beklenen inclusion hem beklenen exclusion durumlarını gözle.

Doğrulama, Browser’da cookie görünmesine indirgenmez: server’ın session validity ve resource policy kontrolleri de kendi kanıtıyla sınanır. Manuel motion kapalıyken de matrix reason alanları görünür olmalıdır; renk tek başına included/excluded bilgisini taşımamalıdır.

Session credential cookie’si için cross-subdomain paylaşım gerekmiyorsa Domain vermeyerek host-only kapsam seç. HTTPS uygulamasında Secure ve HttpOnly kullan; SameSite’ı login callback ve embed gereksinimlerini bilerek açıkça belirle. Lax ile Strict aynı navigation davranışını vermez; gerekli bir cross-site akış için None seçilirse Secure gerekir ve Browser privacy politikası hâlâ gönderimi engelleyebilir. Path’i tenant authorization sınırı veya HttpOnly’yi request gönderimini durduran bir flag gibi kullanma. Ayrı örnek akışlarda uygun inclusion ile beklenen exclusion’ı, ardından server session/resource kararını doğrula.

ŞİMDİ VAKAYA UYGULA

Scope uygunluğu hangi yetkiyi kanıtlamaz?

hd_scope için host-only ve domain-scoped seçenekleri ayrı konfigürasyonlardır. İnceleme scope, expiry ve privacy gate’lerini server yetkisinden ayırır.

Vakadaki browser verisi hangi owner’ın state’idir? Bir client değerinin bulunması veya silinmesiyle server-side session sonucunun neden aynı şey olmadığını açıkla.

Bağlı vaka dosyasını aç ↗

ÖRNEĞİ BİRLİKTE OKUYALIM

Cookie inclusion için sekiz bağlam, iki scope

Bir alan seç; hangi sonucu desteklediğini ve nerede yetersiz kaldığını incele.

Ham kaydı ve alan açıklamalarını oku
{
  "classification": "Separate hypothetical candidate configurations, not concurrent same-name records",
  "cookies": [
    {
      "id": "host-only",
      "name": "hd_scope",
      "setByHost": "library.outreason.example",
      "path": "/books",
      "secure": true,
      "httpOnly": true,
      "sameSite": "Lax",
      "createdAt_s": 100,
      "maxAge_s": 1200,
      "hostOnly": true,
      "domain": "library.outreason.example"
    },
    {
      "id": "domain-scoped",
      "name": "hd_scope",
      "setByHost": "library.outreason.example",
      "path": "/books",
      "secure": true,
      "httpOnly": true,
      "sameSite": "Lax",
      "createdAt_s": 100,
      "maxAge_s": 1200,
      "hostOnly": false,
      "domain": "outreason.example"
    }
  ],
  "cases": [
    {
      "id": "same-host",
      "target": "https://library.outreason.example/books/42",
      "method": "GET",
      "sameSite": true,
      "topLevelNavigation": true,
      "now_s": 200,
      "expected": {
        "host-only": true,
        "domain-scoped": true
      },
      "reason": "all_selected_gates_pass"
    },
    {
      "id": "subdomain",
      "target": "https://api.library.outreason.example/books/42",
      "method": "GET",
      "sameSite": true,
      "topLevelNavigation": true,
      "now_s": 200,
      "expected": {
        "host-only": false,
        "domain-scoped": true
      },
      "reason": "host_only_does_not_match_subdomain"
    },
    {
      "id": "path-boundary",
      "target": "https://library.outreason.example/bookstore",
      "method": "GET",
      "sameSite": true,
      "topLevelNavigation": true,
      "now_s": 200,
      "expected": {
        "host-only": false,
        "domain-scoped": false
      },
      "reason": "slash_path_boundary_not_matched"
    },
    {
      "id": "insecure",
      "target": "http://library.outreason.example/books/42",
      "method": "GET",
      "sameSite": true,
      "topLevelNavigation": true,
      "now_s": 200,
      "expected": {
        "host-only": false,
        "domain-scoped": false
      },
      "reason": "secure_cookie_requires_secure_channel"
    },
    {
      "id": "cross-site-navigation",
      "target": "https://library.outreason.example/books/42",
      "method": "GET",
      "sameSite": false,
      "topLevelNavigation": true,
      "now_s": 200,
      "expected": {
        "host-only": true,
        "domain-scoped": true
      },
      "reason": "explicit_lax_top_level_safe_navigation"
    },
    {
      "id": "cross-site-background",
      "target": "https://library.outreason.example/books/42",
      "method": "POST",
      "sameSite": false,
      "topLevelNavigation": false,
      "now_s": 200,
      "expected": {
        "host-only": false,
        "domain-scoped": false
      },
      "reason": "explicit_lax_cross_site_background_not_eligible"
    },
    {
      "id": "lifetime-boundary",
      "target": "https://library.outreason.example/books/42",
      "method": "GET",
      "sameSite": true,
      "topLevelNavigation": true,
      "now_s": 1300,
      "expected": {
        "host-only": false,
        "domain-scoped": false
      },
      "reason": "max_age_boundary_reached"
    },
    {
      "id": "privacy-blocked-none",
      "target": "https://library.outreason.example/books/42",
      "method": "GET",
      "sameSite": false,
      "topLevelNavigation": false,
      "now_s": 200,
      "cookieOverrides": {
        "sameSite": "None"
      },
      "browserPolicyAllowed": false,
      "expected": {
        "host-only": false,
        "domain-scoped": false
      },
      "reason": "none_does_not_override_third_party_blocking"
    }
  ],
  "assumptions": [
    "Explicit Lax, HTTPS except labelled insecure case, ordinary web context without localhost exception.",
    "Third-party policy allows inclusion unless explicitly blocked; cookies already stored.",
    "No redirect-chain, partition-key, Browser-specific default-Lax exception or prefix parser implementation.",
    "None override is an alternative configuration for one labelled case, not a dynamic header modification."
  ],
  "decisionXML": "<cookieDecisions><decision case=\"same-host\" cookie=\"host-only\" included=\"true\"/><decision case=\"same-host\" cookie=\"domain-scoped\" included=\"true\"/><decision case=\"subdomain\" cookie=\"host-only\" included=\"false\"/><decision case=\"subdomain\" cookie=\"domain-scoped\" included=\"true\"/><decision case=\"path-boundary\" cookie=\"host-only\" included=\"false\"/><decision case=\"path-boundary\" cookie=\"domain-scoped\" included=\"false\"/><decision case=\"insecure\" cookie=\"host-only\" included=\"false\"/><decision case=\"insecure\" cookie=\"domain-scoped\" included=\"false\"/><decision case=\"cross-site-navigation\" cookie=\"host-only\" included=\"true\"/><decision case=\"cross-site-navigation\" cookie=\"domain-scoped\" included=\"true\"/><decision case=\"cross-site-background\" cookie=\"host-only\" included=\"false\"/><decision case=\"cross-site-background\" cookie=\"domain-scoped\" included=\"false\"/><decision case=\"lifetime-boundary\" cookie=\"host-only\" included=\"false\"/><decision case=\"lifetime-boundary\" cookie=\"domain-scoped\" included=\"false\"/><decision case=\"privacy-blocked-none\" cookie=\"host-only\" included=\"false\"/><decision case=\"privacy-blocked-none\" cookie=\"domain-scoped\" included=\"false\"/></cookieDecisions>",
  "localXPath": "/cookieDecisions/decision[@included=\"false\"]",
  "expectedExcludedDecisions": 11
}
hostOnly / domain
Yalnız setter host’u ile domain-plus-subdomain adaylığı arasındaki fark.
path
Slash boundary ile request path filtresi; security isolation değil.
createdAt_s / maxAge_s / now_s
Explicit Browser lifetime hesabı; server session timeout değil.
secure / httpOnly
Taşıma ve script erişimi farklı; HttpOnly inclusion’ı otomatik false yapmaz.
sameSite / topLevelNavigation / method
Explicit Lax inclusion için bağlam; sameSite bu fixture’da verilen input’tur, PSL algoritması çalıştırılmaz.
browserPolicyAllowed
Seçilmiş third-party privacy gate; None bunun sonucunu override etmez.
expected / decisionXML
Benign include/exclude sonuçları ve yerel XPath’e verilen inert schema.

Matrix Browser’ın tamamı değildir. Cookie kayıtları alternatif konfigürasyonlardır; actual Browser veya network capture değildir. Path, Secure, lifetime ve explicit Lax kapıları ile verilen privacy gate açıklanır; redirect, CORS response-read, partitioning ve cookie acceptance ayrı scope’tur.

İki yanlış kanı

Cookie Path=/books, aynı host’taki /admin uygulamasına karşı güvenlik izolasyonu sağlar.

Path bir request gönderim filtresidir. Aynı host içinde güvenilir isolation veya server authorization yerine kullanılmaz.

SameSite=None; Secure kullanınca cookie her third-party request’te mutlaka gönderilir.

None yalnız SameSite gate’ini etkiler. Browser privacy/partition policy, scope, lifetime ve credentials koşulları ayrıca geçerlidir.

SIRA SENDE

Bu hikâyeyi sen çöz.

Sonucu tahmin et, kanıtın sınırını bul ve nedenini kendi cümlenle anlat.

Path=/books olan cookie, /bookstore için gönderime uygun mu?

  1. Hayır. Cookie path sınırı eşleşmiyor.
  2. Evet. Path’in /books ile başlaması yeterli.
Gerekçeli cevabı oku

Hayır. Cookie path sınırı eşleşmiyor. — İki path ortak prefix taşır, fakat /books sonrasında slash yoktur. Bu örnekte inclusion=false.

Subdomain request’inde neden adaylardan yalnız domain-scoped olan uygun?

Dersten seçilen artifact alanları; öğretim örneği

cookies[0].hostOnly
true
cookies[1].domain
outreason.example
cases[1]
{"id":"subdomain","target":"https://api.library.outreason.example/books/42","method":"GET","sameSite":true,"topLevelNavigation":true,"now_s":200,"expected":{"host-only":false,"domain-scoped":true},"reason":"host_only_does_not_match_subdomain"}
  1. HttpOnly bütün adayların subdomain scope’unu genişletir.
  2. Host-only exact host ister; domain-scoped aday subdomain’i kapsar.
Gerekçeli cevabı oku

Host-only exact host ister; domain-scoped aday subdomain’i kapsar. — api.library.outreason.example, host-only library.outreason.example ile aynı host değildir. domain=outreason.example ise bu subdomain’i kapsar.

SameSite=None+Secure neden privacy-blocked branch’te yine gönderilmiyor? Secure ve HttpOnly kullanıcı izni sağlar mı?

Gerekçeli cevabı oku

SameSite=None, browser’ın third-party privacy policy’sini geçersiz kılmaz. browserPolicyAllowed=false ise cookie gönderilmez. Secure channel koşulunu; HttpOnly script erişimini sınırlar. Cookie’nin gönderilmesi server session’ın geçerli olduğunu veya resource izninin verildiğini kanıtlamaz. Bu kontroller ayrıca uygulanmalıdır.

□ SameSite=None seçimini privacy policy’sini kaldıran bir izin saymadım.

□ Cookie flag’lerini server authorization saymadım.

Uygulama konsolunu aç · request / response / browser
Request, URL, cookie ve DOM örneklerini ayrıca aç

Kaynaklar ve kapsam