0Pricing
HTML Academy · Ders

iframe Korumalı Alanı ve İzinler İlkesi

Gömülü içeriği sandbox ve Permissions-Policy ile kısıtlayın

iframe Korumalı Alanı ve İzinler İlkesi, CoddyKit'te ücretsiz bir HTML Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, HTML Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. HTML Academy kursu toplamda 4 dersten oluşur.

Gömülü Çerçeveler Neden Yalıtılır?

Bir gömülü çerçevedeki güvenilmeyen içerik (üçüncü taraf bileşenleri, kullanıcı tarafından gönderilen HTML önizlemeleri, gömülü oyunlar) tam tarayıcı yeteneklerine sahip olmamalıdır. sandbox özniteliği, gömülü çerçevenin yapabileceklerini kısıtlayarak kötü amaçlı olduğu anlaşılırsa oluşacak zararı azaltır.

Boş Yalıtım = En Yüksek Kısıtlama

<iframe sandbox src="..."> değeri olmayan kullanım, tüm kısıtlamaları uygular: betik yok, form yok, açılır pencere yok, üst düzey gezinme yok, eklenti yok ve benzersiz bir kaynak olarak ele alınır. Bunu başlangıç noktası olarak kullanın ve yalnızca gömülü içeriğin ihtiyaç duyduğu özellikleri ekleyin.

Yetenekleri Etkinleştirme

Yalıtım belirteçleri belirli yetenekleri yeniden etkinleştirir: sandbox="allow-scripts allow-same-origin" betik çalıştırmaya ve aynı kaynak erişimine izin verir. Her belirteç bir kısıtlamayı gevşetir; gömülü çerçevenin gerçekten ihtiyaç duyduğu en küçük kümeyi birleştirin.

<iframe sandbox="allow-scripts allow-same-origin" src="https://embed.example.com/widget"></iframe>

Yaygın Belirteçler

allow-scripts JS'yi etkinleştirir. allow-forms form gönderimini etkinleştirir. allow-popups window.open kullanımını etkinleştirir. allow-same-origin gömülü çerçevenin benzersiz bir kaynak olarak ele alınmasını önler (localStorage için gereklidir). allow-top-navigation üst pencereye gezinmeye izin verir.

Tehlikeli Birleşim

allow-scripts ile allow-same-origin belirteçlerini sizin de barındırdığınız bir gömülü çerçeve için birleştirmek, gömülü çerçeveye kaynağınıza tam erişim verir; kendi yalıtımını kaldırma yeteneği de buna dahildir. Bu ikisini yalnızca güvenilir içerik için birleştirin; güvenilmeyen içerikte aynı kaynak iznini vermeyin.

İzinler Politikası

İzinler Politikası (eskiden Özellik Politikası olarak adlandırılırdı), sayfanın ve gömülü çerçevelerinin hangi tarayıcı arayüzlerini (kamera, mikrofon, coğrafi konum, tam ekran, otomatik oynatma) kullanabileceğini denetler. Ana sayfada ayarlayın: Permissions-Policy: geolocation=() coğrafi konumu her yerde engeller.

Gömülü Çerçeve İçin İzin Verme

Bir gömülü çerçevedeki allow özniteliği, o çerçeve için ana sayfanın politikasını geçersiz kılar: <iframe allow="camera; microphone">, ana sayfanın varsayılan politikası bunları reddetse bile ilgili arayüzlerin gömülü çerçevede kullanılmasına izin verir.

<iframe
  src="https://video-call.example.com"
  allow="camera; microphone; fullscreen"
  sandbox="allow-scripts allow-same-origin">
</iframe>

İzinleri Listeleme

Belirtimler sürekli gelişen bir listedir: kamera, mikrofon, coğrafi konum, ivmeölçer, jiroskop, manyetometre, ödeme, USB, MIDI, tam ekran, otomatik oynatma, resim içinde resim ve daha onlarcası. Listeyi denetleyin ve sayfanızın ihtiyaç duymadığı her şeyi açıkça reddedin.

İhlalleri Raporlama

İzinler Politikası, CSP'nin raporlama adresi gibi, ihlalleri yapılandırılmış bir uç noktaya bildirir. Geçiş sırasında bunu kullanın: katı bir politika etkinleştirin, neyin bozulduğunu izleyin ve ardından meşru özellikler için ölçülü biçimde gevşetin.

Kaynak Yalıtımı

Hassas sayfalar için Cross-Origin-Opener-Policy: same-origin ve Cross-Origin-Embedder-Policy: require-corp ayarlayın. Bu, sayfayı kaynaklar arası pencerelerden yalıtarak Spectre benzeri zamanlama saldırılarına karşı koruma sağlar ve SharedArrayBuffer kullanımını etkinleştirir.

Katmanlı Savunma

Sandbox + Permissions Policy + CSP + COOP/COEP birlikte katman oluşturur. Her biri farklı bir saldırı sınıfına karşı koruma sağlar. Üçüncü taraf içeriğini gömmek, tek bir önlemin yeterli olmayacağı kadar risklidir; bir önlemin aşılması diğerinin bunu yakalayacağı şekilde hepsini birleştirin.

Sınama

Sandbox ve izin ihlallerini ortaya çıkarmak için Chrome DevTools içindeki Ağ panelini ve Sorunlar panelini kullanın. Birçok ihlal sessizce gerçekleşir (arayüz yalnızca tanımsız döndürür veya vaadi reddeder); açık raporlama uç noktaları bunları üretimde keşfetmeye yardımcı olur.

Bilginizi Sınayın

Kendi kaynağınızda barındırılan bir gömülü çerçeve için sandbox="allow-scripts allow-same-origin" birleşimi neden potansiyel olarak tehlikelidir?

Özet

Gömülü çerçeveleri varsayılan olarak yalıtın ve yalnızca içeriğin ihtiyaç duyduğu belirteçleri ekleyin. Güvenilmeyen içerik için betik çalıştırma ve aynı kaynak izinlerini birlikte vermekten kaçının. Güçlü tarayıcı arayüzlerini site genelinde reddetmek için İzinler Politikası'nı, istisnalar tanımak için de gömülü çerçevenin allow özniteliğini kullanın. Katmanlı savunma için bunları CSP ve COOP/COEP ile birleştirin.

Sıkça Sorulan Sorular

“iframe Korumalı Alanı ve İzinler İlkesi” dersi ücretsiz mi?

Evet — “iframe Korumalı Alanı ve İzinler İlkesi” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve HTML Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. HTML Academy kursu toplamda 4 dersten oluşur.

“iframe Korumalı Alanı ve İzinler İlkesi” dersinde ne öğreneceğim?

Gömülü içeriği sandbox ve Permissions-Policy ile kısıtlayın HTML Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

HTML Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te HTML Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“iframe Korumalı Alanı ve İzinler İlkesi” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu HTML Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her HTML Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. İçerik Güvenliği İlkesi: meta http-equiv
  2. innerHTML ile XSS ve Bunu Önleme
  3. iframe Korumalı Alanı ve İzinler İlkesi
  4. HTTPS ve Alt Kaynak Bütünlüğü
← HTML Academy Sayfasına Dön