Appendix B. Differences between HSTS Policy and Same-Origin Policy (Differenze tra Politica HSTS e Same-Origin Policy)
La politica HSTS (come definita in questa specifica) contiene diverse importanti differenze rispetto alla Same-Origin Policy [RFC6454] come comunemente implementata negli attuali browser Web.
-
La politica HSTS si applica ai sotto-nomi di dominio
Una politica HSTS per un nome di dominio di host può essere dichiarata come applicabile a tutti i sotto-nomi di dominio del nome di dominio dell'host emittente. Questo si ottiene specificando la direttiva includeSubDomains nella politica HSTS emessa. La Same-Origin Policy non ha questa capacità.
Così, se un host con nome di dominio A.B.C.example.com emette una politica HSTS che include la direttiva includeSubDomains, questa politica HSTS si applica anche a X.Y.Z.A.B.C.example.com. Secondo la Same-Origin Policy, queste origini sono differenti; secondo la politica HSTS, tutte sono soggette alla stessa politica.
-
La politica HSTS può non distinguere le porte TCP
Sebbene la Same-Origin Policy tipicamente faccia distinzione tra diverse porte TCP [RFC6454], gli UA possono mappare tutte le porte TCP (quando http-schemed) a una singola porta TCP sicura quando formano un URI di richiesta effettivo per l'accesso in modalità conforme a HSTS (vedi la sezione 8.3 ("URI Loading and Port Mapping")).
Ad esempio, dato un host HSTS con nome di dominio example.com, gli URI "http://example.com:80/" e "http://example.com:8080/" possono essere tradotti entrambi in "https://example.com:443/". Se example.com mappa questi URI su risorse Web diverse, la Same-Origin Policy li tratta tipicamente come aventi origini diverse -- ad esempio, per evitare che i cookie per uno siano accessibili all'altro. Tuttavia, se example.com è anche un host HSTS, accedere a queste risorse su una porta TCP sicura unica è comune, anche se si perdono alcune delle distinzioni della Same-Origin Policy.
-
Il tempo impatta la politica HSTS
La Same-Origin Policy non dipende dal tempo. Ma, la politica HSTS sarà necessariamente memorizzata nella cache per periodi di tempo estesi. Se una politica HSTS è stata memorizzata nella cache per un tempo troppo lungo, la situazione effettiva potrebbe non corrispondere più alla politica memorizzata. Tali differenze potrebbero avere implicazioni di sicurezza ed eventualmente portare a negazione del servizio.
-
La politica HSTS può essere resa non esprimibile
Dato che la politica HSTS può essere resa non esprimibile per un dato nome di dominio tramite la mancanza di supporto per il trasporto sicuro su quel dominio, o tramite errori nell'instaurazione del trasporto sicuro, gli UA conformi non devono consentire agli utenti di "cliccare attraverso" gli errori di instaurazione della connessione sicura (vedere la sezione 12.1 ("No User Recourse")). Questo differisce dalla pratica corrente in molti browser Web dove gli utenti possono prevalere sugli avvertimenti relativi al certificato TLS.