Pravidlo omezení domény

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 7. dubna 2022; ověření vyžaduje 1 úpravu .

Zásady stejného původu (Same Origin Policy  )  jsou  důležitým konceptem v bezpečnostním modelu webových aplikací . V rámci této zásady webový prohlížeč umožňuje skriptům na jedné webové stránce získat data na druhé webové stránce, ale pouze v případě, že obě webové stránky mají stejný původ ( Origin ). Původ se skládá z kombinace URI schématu, názvu domény a čísla portu. Tato zásada omezuje škodlivé skripty z jedné webové stránky v získání přístupu k citlivým informacím na jiné webové stránce prostřednictvím stromu DOM této stránky .

Tento mechanismus je zvláště důležitý pro moderní webové aplikace, které k udržování ověřených uživatelských relací silně spoléhají na HTTP cookies . Vzhledem k tomu, že servery spoléhají na soubory cookie HTTP při zveřejňování citlivých informací nebo provádění akcí změny stavu na straně klienta, musí být zachována přísná segregace obsahu poskytovaného nesouvisejícími weby, aby se zabránilo ztrátě citlivých dat nebo narušení integrity dat.

Je velmi důležité si uvědomit, že princip stejného původu platí pouze pro skripty. To znamená, že ke zdrojům, jako jsou obrázky, CSS a dynamicky načítané skripty, lze přistupovat z jakéhokoli zdroje prostřednictvím příslušných značek HTML (kromě písem). Útoky spoléhají na skutečnost, že princip stejného původu se nevztahuje na HTML tagy.

Historie

Koncept stejného principu původu zavedl Netscape Navigator 2.02 v roce 1995, krátce po zavedení JavaScriptu v Netscape 2.0. JavaScript umožnil použití skriptů na webových stránkách, zejména pro získání programového přístupu k Document Object Model (DOM).

Princip byl původně navržen k ochraně přístupu k DOM, ale od té doby byl rozšířen na ochranu citlivých částí globálních objektů JavaScriptu.

Kontrolní seznam

Pro ilustraci uvádí následující tabulka přehled typických kontrol pro srovnání s příkladem URL „http://www.example.com/dir/page.html“.

Srovnatelné URL Zkouška Způsobit
http://www.example.com/dir/page.html _ Odpovídá Stejný protokol a doména
http://www.example.com/dir2/other.html _ Odpovídá Stejný protokol a doména
http:// uživatelské jméno:heslo@ www.example.com /dir2/other.html Odpovídá Stejný protokol a doména
http://www.example.com:81/dir/other.html _ _ Nesouhlasí Stejný protokol a doména, ale jiný port
https://www.example.com/dir/other.html _ Nesouhlasí Protokol se liší
http://en.example.com/dir/other.html _ _ Nesouhlasí Doména se liší
http://example.com/dir/other.html _ _ Nesouhlasí Doména se liší (vyžaduje se úplná shoda)
http://v2.www.example.com/dir/other.html _ _ Nesouhlasí Doména se liší (vyžaduje se úplná shoda)
http://www.example.com:80/dir/other.html _ _ Nedefinováno Explicitní specifikace portu. Záleží na implementaci v prohlížeči.

Viz také

Odkazy