4.13. Coesistenza con la navigazione Web
4.13. Coesistenza con la navigazione Web
Anche quando un'applicazione non è destinata all'uso con un browser Web, le sue risorse possono essere accessibili dai browser accidentalmente (ad esempio, tramite errata configurazione) o in modo malevolo. Le applicazioni devono considerare come si comporteranno in tali situazioni.
Per applicazioni che non sono destinate all'uso con i browser:
-
Le applicazioni DOVREBBERO restituire un messaggio di errore appropriato (ad esempio,
403 Forbiddeno404 Not Found) quando viene effettuato l'accesso da un browser. -
Le applicazioni DOVREBBERO includere intestazioni di sicurezza (come
Content-Security-Policy[CSP],X-Frame-Options, ecc.) per limitare ciò che i browser possono fare se accedono all'applicazione. -
Le applicazioni DOVREBBERO essere consapevoli del comportamento specifico del browser, come il seguimento automatico dei reindirizzamenti, l'esecuzione di JavaScript e l'effettuazione di richieste di prefetch.
Per applicazioni destinate a supportare sia client API che browser Web:
-
Le applicazioni DOVREBBERO utilizzare la negoziazione del contenuto per fornire rappresentazioni appropriate per client diversi.
-
Le applicazioni DOVREBBERO garantire che l'accesso basato su browser non crei vulnerabilità di sicurezza (vedere Sezione 6).
-
Le applicazioni DOVREBBERO considerare l'utilizzo di URL o sottodomini diversi per l'accesso browser e non-browser per consentire politiche di sicurezza diverse.
Le applicazioni DOVREBBERO essere consapevoli del Cross-Origin Resource Sharing (CORS) [FETCH] e di come influisce sull'accesso basato su browser alle risorse. CORS può essere utilizzato per controllare quali origini sono autorizzate ad accedere alle risorse da un browser.