นโยบายต้นทางเดียวกันและ iframe

Mariko Kosaka

ใน Codelab นี้ คุณจะได้ดูวิธีการทำงานของนโยบายต้นทางเดียวกันเมื่อเข้าถึงข้อมูลภายใน iframe

การตั้งค่า: หน้าเว็บที่มี iframe ต้นทางเดียวกัน

หน้านี้ฝัง iframe ที่ชื่อ iframe.html ไว้ในต้นทางเดียวกัน เนื่องจากโฮสต์และ iframe ใช้ต้นทางเดียวกัน เว็บไซต์โฮสต์จึงเข้าถึงข้อมูลภายใน iframe และเปิดเผยข้อความลับได้ดังนี้

const iframe = document.getElementById('iframe');
const message = iframe.contentDocument.getElementById('message').innerText;

เปลี่ยนเป็น iframe แบบข้ามต้นทาง

ลองเปลี่ยน src ของ iframe เป็น https://other-iframe.glitch.me/ หน้าโฮสต์จะยังเข้าถึงข้อความลับได้ไหม

เนื่องจากโฮสต์และ iframe ที่ฝังไว้ไม่ได้มีต้นทางเดียวกัน จึงมีการจำกัดการเข้าถึงข้อมูล