LRO nedir? Web tarafı kapsamı
Legal & Regulatory Optimization (LRO), bir web sitesinin KVKK (Türkiye), GDPR (AB), İYS (6563 sayılı Kanun), TKHK ve 5651 sayılı Kanun gibi düzenlemelere uyumluluk seviyesini ölçer.
Bu kapsamda AIDE şu yasal kaynakları temel alır:
- KVKK (6698): Kişisel Verilerin Korunması Kanunu
- GDPR: General Data Protection Regulation (AB)
- İYS (6563): Elektronik Ticaretin Düzenlenmesi Hakkında Kanun
- TKHK (6502): Tüketicinin Korunması Hakkında Kanun
- 5651 sayılı Kanun: İnternet ortamında yapılan yayınlar
AIDE LRO suite'i kullanıcının orijinal 12 maddelik tablosunun yalnızca 1 maddesini (Veri Şifreleme At Rest = 7 puan) DB iç yapısı gerektirdiği için ürünleştirmedi. Web-testable 11 maddeyi 100 puana yeniden ölçeklendirdi.
Kapsam dışı bırakılan tek madde
| Madde | Neden ölçülemez | |---|---| | Veri Şifreleme (At Rest) | Veritabanında tutulan kişisel verilerin şifreli olup olmadığı DB iç yapısı; web'den görünmez. Snyk, Veracode, sunucu yönetim panelleri ile doğrulanır. |
11 check, 6 LRO kategorisi
Onay — 25 puan
lro-cookie-consent(16) — Cookie banner CMP fingerprint (Cookiebot, OneTrust, Iubenda, Termly, Cookieyes, Klaro, Didomi, Usercentrics, Civic) + "Hepsini Reddet" butonu kontrolü. KVKK + GDPR rıza özgür olmalı — sadece "Kabul" butonu = ihlal.lro-cookie-preferences(9) — Granüler tercih merkezi (Pazarlama / İstatistik / Zorunlu kategorileri ayrı ayrı seçilebilir mi?). Tier-1 CMP otomatik PASS.
Hukuk — 31 puan
lro-privacy-policy(13) — KVKK aydınlatma metni / gizlilik politikası footer linki + sayfa içeriği (≥ 1000 char).lro-cookie-policy(8) — Çerez politikası ayrı dokümanı linki.lro-distance-selling(10) — E-ticaret tespiti (WooCommerce / Shopify / Magento / OpenCart / "Sepete Ekle" pattern) + footer'da mesafeli satış sözleşmesi linki. Site e-ticaret değilse SKIPPED.
Formlar — 20 puan
lro-form-consent(11) — Form'da<input type="checkbox">+ label "kabul ediyorum" / "açık rıza" / "consent" pattern. Form yoksa SKIPPED.lro-commercial-iys(9) — Form'da "ticari elektronik ileti", "iys", "pazarlama izni" keyword + checkbox default UNCHECKED. İYS yasası opt-in zorunlu kılar; checked default = WARNING.
Veri — 6 puan
lro-erasure-form(6) — "Verilerimi Sil" / "Unutulma Hakkı" / "GDPR Request" başvuru linki. KVKK ilgili kişi hakları zorunludur.
Teknik — 6 puan
lro-ip-anonymization(6) — Google Analyticsgtag.jsveyaanalytics.js'deanonymize_ip: trueveya GA4 (otomatik anonim). MatomosetAnonymizeIp. Analytics yoksa SKIPPED.
Şeffaflık — 12 puan
lro-terms-conditions(4) — "Kullanım Koşulları" / "Üyelik Sözleşmesi" / "Terms of Use" footer linki.lro-imprint(8) — Footer'da ünvan ("Ltd. Şti.", "A.Ş.") + adres ("sokak", "cadde") + MERSIS no (16 hane) + vergi dairesi pattern; 3+ sinyal PASS, 2 PASS-0.7, 1 WARNING, hiç FAIL. 5651 sayılı Kanun zorunlu.
Statik suite felsefesi
Tüm 11 native LRO check'i statik HTML / JS pattern / footer link / form parse ile çalışır; render gerektirmez. Adaptif SKIPPED'ler:
- Form yok →
lro-form-consent,lro-commercial-iysSKIPPED - E-ticaret değil →
lro-distance-sellingSKIPPED - Analytics yok →
lro-ip-anonymizationSKIPPED
Nasıl tetiklenir
UI'dan "LRO Kontrolü" sekmesi, ya da API:
curl -X POST https://api.aide.tr/v1/scans \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com",
"profile": "lro"
}'
js_render parametresi LRO suite için gerekli değil.
Score yorumlama
| Bant | LRO web durumu | |---|---| | ≥ 95 | Compliance-grade — Tier-1 CMP + KVKK aydınlatma + tüm hukuki metinler + İYS opt-in + GA4 + tam künye. | | 85-94 | Çoğu yerinde, sadece çerez tercih merkezi veya unutulma hakkı eksiği. | | 70-84 | KVKK metinleri var ama çerez banner zayıf veya İYS default-checked. | | 50-69 | Banner yok veya yalnızca "Kabul" butonu — KVKK/GDPR ihlali. | | < 50 | Yasal-açık. Banner + KVKK metni + form rıza + künye roadmap'i acil. |