Connection-Allowlist
Le report connection-allowlist signale une page qui a tenté une connexion vers une destination non autorisée par sa Connection-Allowlist.
Dernière mise à jour:
Un report connection-allowlist vous indique qu'une page a tenté d'ouvrir une
connexion vers une destination que sa Connection-Allowlist
n'autorisait pas. En mode report-only, c'est le moyen sûr de voir ce qu'une politique
bloquerait avant de l'appliquer ; sous application, c'est le relevé de ce qui a été
bloqué.
Expérimental, essai d'origine
Ce type de report provient de la proposition WICG Connection Allowlists, livré sous un essai d'origine Chromium et disponible uniquement dans les navigateurs basés sur Chromium. Les noms de champs sérialisés peuvent encore changer, alors traitez le payload ci-dessous comme provisoire.
Quand le navigateur l'envoie
Quand un document ou un worker sous un header Connection-Allowlist (ou
Connection-Allowlist-Report-Only) ouvre une connexion dont la destination ne
correspond pas à l'allowlist. Cela couvre chaque type de connexion que l'allowlist
régit : fetch, WebSocket, WebRTC, navigation, redirections, et chargements de
sous-ressources comme les polices et les images.
Exemple de payload
Le report arrive dans l'enveloppe standard application/reports+json,
avec les données propres à l'allowlist dans body. La spec ne fournit pas d'exemple
verbatim, donc celui-ci est illustratif :
{
"type": "connection-allowlist",
"age": 12,
"url": "https://api-next.centralcsp.com/",
"user_agent": "Mozilla/5.0 ...",
"body": {
"url": "https://api-next.centralcsp.com/",
"connection": "https://evil.example/collect",
"allowlist": ["https://*.example.com", "https://cdn.example"],
"disposition": "enforce"
}
}Référence des champs
| Champ | Signification |
|---|---|
url | Le document d'où provient le report (dépouillé des identifiants et du fragment). |
connection | L'URL de destination qui a été bloquée. |
allowlist | Les motifs d'URL de l'allowlist active. |
disposition | enforce quand la connexion a été bloquée, report en mode report-only. |
Comment le recevoir
Déclarez un endpoint avec un header Reporting-Endpoints,
puis pointez la politique vers lui avec le paramètre report-to=.
Reporting-Endpoints: connection-endpoint="https://<Endpoint-ID>.report.centralcsp.com"Connection-Allowlist-Report-Only: (response-origin "https://*.example.com"); report-to=connection-endpointCe qu'il vous apprend sur la sécurité
Un report connection-allowlist nomme une destination que votre page a tenté de
joindre et que vous n'avez jamais autorisée. C'est le signal d'une tentative
d'exfiltration ou d'un tiers qui atteint un endroit inattendu, le même risque de
supply-chain que le script inventory et
le reporting CSP font remonter, désormais à la couche d'egress réseau.
Pièges
Connection Allowlists est une fonctionnalité en essai d'origine, donc la forme du report
n'est pas stable. Les noms de champs sérialisés, et le dépouillement exact des URL
appliqué à url et connection, peuvent différer de l'exemple ci-dessus et changer à
mesure que l'essai évolue. La spec ne fournit pas d'exemple de payload verbatim, alors
vérifiez les champs sur un report réel issu de votre propre trafic avant de construire du
parsing autour d'eux.
Prise en charge par les navigateurs
Navigateurs basés sur Chromium uniquement, et seulement tant que l'essai d'origine est activé. Firefox et Safari ne l'implémentent pas.
Voir aussi
- header Connection-Allowlist
- Connection Allowlists, un bac à sable des sorties réseau dans le navigateur
- report csp-violation
- Le format de livraison des reports
Sources
Violation d'intégrité
Le rapport integrity-violation se declenche quand Integrity-Policy bloque un script depourvu de metadonnees Subresource Integrity valides.
Vue d'ensemble
Le fonctionnement de chaque politique navigateur configurable, ce contre quoi elle protège, et comment elle remonte ses rapports via la Reporting API.