Zasada dotycząca tego samego źródła i element iframe

Mariko Kosaka

Z tego ćwiczenia w Codelabs dowiesz się, jak działa zasada tego samego pochodzenia w przypadku uzyskiwania dostępu do danych w elemencie iframe.

Konfiguracja: strona z elementem iframe z tej samej domeny

Ta strona zawiera element iframe o nazwie iframe.html w tym samym źródle. Host i element iframe mają to samo źródło, więc witryna hostująca może uzyskać dostęp do danych w elemencie iframe i udostępnić tajną wiadomość, np. „blow”.

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

Zmień na element iframe z innych domen

Spróbuj zmienić src elementu iframe na https://other-iframe.glitch.me/. Czy strona hostująca nadal będzie uzyskiwać dostęp do tajnej wiadomości?

Host i umieszczony zasób iframe nie mają tego samego źródła, więc dostęp do danych jest ograniczony.