PRIVACY DOCS

PRIVACY-PRINCIPLES

Data Minimization
Description: Hanya kumpulkan data yang benar-benar diperlukan untuk fungsi yang diberikan.
Example:
Jika hanya perlu email untuk login, jangan minta nomor telepon dan alamat.
Output: Data minimal dikumpulkan
Purpose Limitation
Description: Gunakan data hanya untuk tujuan yang sudah dijelaskan kepada pengguna.
Example:
Email yang dikumpulkan untuk reset password tidak boleh digunakan untuk marketing tanpa izin.
Output: Data hanya untuk tujuan spesifik
Transparency
Description: Beritahu pengguna data apa yang dikumpulkan, mengapa, dan dengan siapa dibagikan.
Example:
Kebijakan privasi yang jelas dan mudah diakses.
Output: Pengguna memahami penggunaan data
User Consent
Description: Dapatkan izin eksplisit sebelum mengumpulkan data sensitif atau melacak pengguna.
Example:
Cookie consent banner dengan opsi terperinci (bukan hanya 'terima semua').
Output: Persetujuan sadar
Right to be Forgotten
Description: Pengguna berhak meminta penghapusan semua data pribadi mereka.
Example:
Sediakan form atau kontak untuk permintaan penghapusan data.
Output: Data dihapus permanen
Data Portability
Description: Pengguna berhak menerima data mereka dalam format yang dapat dibaca mesin.
Example:
Ekspor data pengguna dalam format JSON atau CSV.
Output: Data mudah dipindahkan

BROWSER-FEATURES

SameSite Cookies
Description: Atribut SameSite mengontrol kapan cookie dikirim bersama permintaan lintas situs. Nilai: Strict, Lax, None.
Example:
Set-Cookie: session_id=abc123; SameSite=Lax; Secure; HttpOnly
Output: Cookie hanya dikirim dalam konteks first-party (Lax) atau strictly first-party (Strict)
Third-Party Cookie Phase-Out
Description: Browser utama (Safari, Firefox, Chrome) secara bertahap memblokir cookie pihak ketiga.
Example:
Mengganti dengan CHIPS (Cookies Having Independent Partitioned State) atau Storage Access API.
Output: Pelacakan lintas situs berkurang
Intelligent Tracking Prevention (ITP)
Description: Fitur Safari yang membatasi pelacakan dengan membatasi masa pakai cookie dan membatasi akses storage.
Example:
Cookie pihak ketiga diblokir penuh; localStorage dibersihkan setelah 7 hari tidak aktif.
Output: Pelacakan dibatasi
Enhanced Tracking Protection (ETP)
Description: Fitur Firefox yang memblokir pelacak media sosial, fingerprinting, dan cryptominer.
Example:
Firefox memblokir skrip pelacakan dari daftar Disconnect.me.
Output: Pelacak diblokir otomatis
Global Privacy Control (GPC)
Description: Sinyal browser yang memberi tahu website untuk tidak menjual atau membagikan data pengguna.
Example:
Situs harus membaca sinyal Sec-GPC header dan menghormatinya.
Output: Sinyal Do Not Sell/Share

HTTP-HEADERS

Strict-Transport-Security (HSTS)
Description: Memaksa browser hanya menggunakan HTTPS untuk mengakses situs.
Example:
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
Output: Semua koneksi HTTPS
Referrer-Policy
Description: Mengontrol informasi referrer yang dikirim saat navigasi.
Example:
Referrer-Policy: strict-origin-when-cross-origin
Output: URL penuh hanya di same-origin, origin saja di cross-origin
Permissions-Policy
Description: Mengontrol akses ke fitur browser (kamera, mikrofon, lokasi) untuk dokumen dan iframe.
Example:
Permissions-Policy: camera=(), microphone=(), geolocation=(self "https://trusted.com")
Output: Fitur dibatasi sesuai kebijakan
Content-Security-Policy (CSP)
Description: Mencegah XSS, clickjacking, dan serangan injeksi dengan membatasi sumber daya.
Example:
Content-Security-Policy: default-src 'self'; script-src 'self' 'wasm-unsafe-eval'; style-src 'self' 'unsafe-inline'
Output: Hanya sumber daya dari domain sendiri
Clear-Site-Data
Description: Memerintahkan browser untuk menghapus data situs (cookie, cache, storage).
Example:
Clear-Site-Data: "cookies", "storage", "cache"
Output: Semua data situs dibersihkan
Sec-GPC
Description: Header yang dikirim browser untuk mengaktifkan Global Privacy Control.
Example:
Sec-GPC: 1
Output: Sinyal privasi aktif

COOKIES-STORAGE

Cookie Secure Flag
Description: Cookie hanya dikirim melalui koneksi HTTPS.
Example:
Set-Cookie: token=abc; Secure
Output: Aman dari pengintaian jaringan
Cookie HttpOnly Flag
Description: Cookie tidak dapat diakses melalui JavaScript (document.cookie).
Example:
Set-Cookie: token=abc; Secure; HttpOnly
Output: Terlindung dari serangan XSS
Cookie Max-Age / Expires
Description: Mengatur masa berlaku cookie.
Example:
Set-Cookie: session=abc; Max-Age=3600
Output: Cookie kadaluarsa 1 jam
Cookie Domain & Path
Description: Membatasi scope cookie ke domain dan path tertentu.
Example:
Set-Cookie: token=abc; Domain=example.com; Path=/app
Output: Hanya di /app pada example.com
localStorage vs sessionStorage
Description: localStorage menetap, sessionStorage hilang setelah tab ditutup. Keduanya tidak dikirim ke server.
Example:
localStorage.setItem('theme', 'dark')
sessionStorage.setItem('temp', 'value')
Output: Storage sisi klien
Partitioned Cookies (CHIPS)
Description: Cookie dengan atribut Partitioned disimpan per top-level site, bukan lintas situs.
Example:
Set-Cookie: __Host-token=abc; Secure; Path=/; SameSite=None; Partitioned
Output: Terisolasi per situs

PRIVACY-APIS

Permissions API
Description: Memeriksa dan meminta izin akses fitur sensitif (geolokasi, notifikasi, kamera).
Example:
const status = await navigator.permissions.query({ name: 'geolocation' })
if (status.state === 'granted') { ... }
Output: Status izin: granted, denied, prompt
Storage Access API
Description: Memungkinkan iframe pihak ketiga meminta akses ke cookie first-party (menggantikan third-party cookies).
Example:
document.requestStorageAccess().then(() => { ... })
Output: Akses storage diberikan setelah izin pengguna
FedCM (Federated Credential Management)
Description: API privasi untuk federated identity (login dengan Google, dll) tanpa third-party cookies.
Example:
const cred = await navigator.credentials.get({ identity: { providers: [...] } })
Output: Token federasi diterima
Attribution Reporting API
Description: Mengukur konversi iklan tanpa pelacakan individu lintas situs.
Example:
Gunakan header Attribution-Reporting-Register-Source dan trigger.
Output: Data agregat atau dengan noise
Private State Tokens
Description: Mencegah penipuan tanpa mengidentifikasi pengguna secara unik.
Example:
Browser mengeluarkan token kriptografi yang bisa diverifikasi oleh penerbit.
Output: Anti-fraud tanpa fingerprinting
Topics API
Description: Menggantikan third-party cookies untuk iklan berbasis minat dengan topik yang dihitung secara lokal di browser.
Example:
document.browsingTopics() mengembalikan topik (misal 'Olahraga')
Output: Topik tanpa mengungkapkan situs spesifik

TRACKING-PROTECTION

Browser Fingerprinting
Description: Teknik mengidentifikasi pengguna berdasarkan karakteristik unik browser (font, WebGL, user agent).
Example:
Menggunakan canvas fingerprinting: menggambar teks tersembunyi, hash hasilnya.
Output: Identifikasi unik tanpa cookie
Anti-Fingerprinting
Description: Browser memblokir atau mengacak data fingerprinting (user agent reduction, WebGL noise).
Example:
Chrome User-Agent Reduction: hanya mengirim info browser minimal.
Output: Data fingerprint tidak akurat
Do Not Track (DNT)
Description: Header yang meminta situs tidak melacak pengguna. Tidak wajib dipatuhi.
Example:
DNT: 1
Output: Sinyal tidak melacak (opsional)
Global Privacy Control (GPC)
Description: Penerus DNT yang lebih kuat dan diakui secara hukum di beberapa yurisdiksi.
Example:
Header Sec-GPC: 1 dan properti navigator.globalPrivacyControl
Output: Sinyal privasi yang dapat ditegakkan

REGULATIONS

GDPR (General Data Protection Regulation)
Description: Regulasi perlindungan data Uni Eropa yang mewajibkan izin eksplisit, hak akses, dan penghapusan data.
Example:
Cookie consent dengan opt-in, privacy policy lengkap, Data Protection Officer (DPO).
Output: Kepatuhan untuk pengguna EU
CCPA / CPRA (California Consumer Privacy Act)
Description: Memberi hak kepada warga California untuk mengetahui, menghapus, dan menolak penjualan data pribadi.
Example:
Tautan 'Do Not Sell My Personal Information' di footer.
Output: Kepatuhan untuk pengguna California
ePrivacy Directive (Cookie Law)
Description: Mewajibkan izin sebelum menyimpan atau mengakses informasi di perangkat pengguna (cookie).
Example:
Cookie banner yang memblokir cookie non-esensial sebelum persetujuan.
Output: Izin cookie eksplisit
LGPD (Lei Geral de Proteção de Dados)
Description: Regulasi privasi data Brasil, mirip GDPR.
Example:
Hak akses, koreksi, penghapusan data.
Output: Kepatuhan untuk pengguna Brasil

BEST-PRACTICES

Privacy by Design
Description: Privasi diintegrasikan ke dalam produk sejak awal, bukan sebagai tambahan.
Example:
Enkripsi data in transit dan at rest, minimalisasi pengumpulan data.
Output: Privasi bawaan
Gunakan HTTPS di mana-mana
Description: Enkripsi semua komunikasi antara pengguna dan server.
Example:
Server mendukung TLS 1.3, redirect HTTP ke HTTPS.
Output: Data tidak dapat disadap
Validasi dan Sanitasi Input
Description: Cegah kebocoran data melalui serangan injeksi.
Example:
Gunakan parameterized query, validasi sisi server.
Output: Data tetap aman
Enkripsi Data Sensitif
Description: Enkripsi password (bcrypt/argon2), data pribadi (AES), dan data in transit (TLS).
Example:
bcrypt.hash(password, 12)
crypto.createCipheriv('aes-256-gcm', key, iv)
Output: Data tidak bisa dibaca jika bocor
Transparansi dengan Kebijakan Privasi
Description: Sediakan kebijakan privasi yang mudah ditemukan dan dipahami.
Example:
Tautan di footer: '/privacy-policy' dengan bahasa sederhana.
Output: Pengguna memahami haknya
Audit Data secara Berkala
Description: Tinjau data apa yang dikumpulkan, di mana disimpan, dan siapa yang memiliki akses.
Example:
Data inventory spreadsheet atau alat otomatis.
Output: Kontrol penuh atas data
Responsif terhadap Permintaan Data
Description: Sediakan mekanisme bagi pengguna untuk mengakses, mengunduh, atau menghapus data mereka.
Example:
Formulir otomatis di dashboard pengguna.
Output: Hak pengguna terpenuhi