CSP : connect-src

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since August 2016.

La directive HTTP Content-Security-Policy connect-src restreint les URL qui peuvent être chargées en utilisant des interfaces de programmation. Les API concernées sont :

Note : connect-src 'self' ne s'applique pas aux schémas de websocket pour tous les navigateurs. Pour plus d'informations, consulter ce ticket (en anglais).

Version de CSP 1
Type de directive Directive de récupération
Utilisation de default-src par défaut Oui, si cette directive est absente, l'agent utilisateur consultera la directive default-src.

Syntaxe

Une ou plusieurs sources peuvent être autorisées pour cette directive :

http
Content-Security-Policy: connect-src <source>;
Content-Security-Policy: connect-src <source> <source>;

Sources

<source> peut être n'importe quelle valeur parmi celles énumérées dans l'article sur les valeurs sources CSP.

On notera que cet ensemble de valeurs peut être utilisé pour toutes les directives de récupération (et pour certaines autres directives).

Exemples

Cas de violation

Soit cet en-tête CSP :

http
Content-Security-Policy: connect-src https://example.com/

Les connexions suivantes seront bloquées et ne se chargeront pas :

html
<a ping="https://not-example.com"></a>

<script>
  let xhr = new XMLHttpRequest();
  xhr.open('GET', 'https://not-example.com/');
  xhr.send();

  let ws = new WebSocket("https://not-example.com/");

  let es = new EventSource("https://not-example.com/");

  navigator.sendBeacon("https://not-example.com/", { ... });
</script>

Spécifications

Specification
Content Security Policy Level 3
# directive-connect-src

Compatibilité des navigateurs

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
connect-src

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
Partial support
Partial support
Has more compatibility info.

Notes de compatibilité

  • Avant Firefox 23, xhr-src était utilisé en lieu et place de la directive connect-src et ne s'appliquait qu'à l'API XMLHttpRequest.

Voir aussi