CSP : connect-src

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 (en-US).

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

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

BCD tables only load in the browser

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