--- title: 'CSP: frame-ancestors' slug: Web/HTTP/Headers/Content-Security-Policy/frame-ancestors tags: - CSP - Content-Security-Policy - Directive - Frame - HTTP - Security - Sécurité - frame-ancestors - source translation_of: Web/HTTP/Headers/Content-Security-Policy/frame-ancestors ---
{{HTTPSidebar}}

La directive HTTP {{HTTPHeader("Content-Security-Policy")}} (CSP) frame-ancestors spécifie les parents pouvant intégrer une page en utilisant {{HTMLElement("frame")}}, {{HTMLElement("iframe")}}, {{HTMLElement("object")}}, {{HTMLElement("embed")}}, ou {{HTMLElement("applet")}}.

Définir cette directive à 'none' est comparable à len-tête HTTP {{HTTPHeader("X-Frame-Options")}}: deny (aussi supporté sur les anciens navigateurs).

CSP version 2
Directive type {{Glossary("Navigation directive")}}
{{CSP("default-src")}} fallback No. Not setting this allows anything.
This directive is not supported in the {{HTMLElement("meta")}} element.

Syntaxe

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

Content-Security-Policy: frame-ancestors <source>;
Content-Security-Policy: frame-ancestors <source> <source>;

Sources

La <source> peut être une des suivantes :

The frame-ancestors directive’s syntax is similar to a source list of other directives (e.g. {{CSP("default-src")}}), but doesn't allow 'unsafe-eval' or 'unsafe-inline' for example. It will also not fall back to a default-src setting. Only the sources listed below are allowed:

<host-source>
Des hôtes Internet par leur nom de domaine ou adresse IP, aussi bien qu'un protocole et/ou un numéro de port. L'adresse du site peut inclure un caractère de remplacement optionnel (l'astérisque '*'), qui ne peut être utilisée que pour indiquer un sous-domaine ou que tous les ports existants sont des sources valides. Vous ne devez pas mettre de guillemets simples.
Exemples :

Si aucun schéma d'URL n'est spécifié comme host-source et que l'{{HTMLElement("iframe")}} est chargée via une URL https:, la page chargeant l'iframe doit aussi être chargée en https:, selon la spécification du W3C sur les correspondances de valeurs de sources.

<scheme-source>
Un protocole tel que http: or https:. Les deux-points sont nécessaires et vous ne devez pas mettre de guillemets. Vous pouvez aussi spécifier des schémas de données bien que ce ne soit pas recommandé.
'self'
Cette valeur fait référence au domaine dont est originaire le document protégé, y compris le protocole et le numéro de port. Vous devez mettre cette valeur entre guillemets. Certains navigateurs excluent spécifiquement les valeurs blob et filesystem des directives de source. Les sites nécessitant une permission pour ces types de contenu peuvent les spécifier en utilisant l'attribut Data.
'none'
Aucune source n'est admise. Vous devez mettre cette valeur entre guillemets.

Exemples

Content-Security-Policy: frame-ancestors 'none';

Content-Security-Policy: frame-ancestors 'self' https://www.example.org;

Spécifications

Spécification Statut Commentaire
{{specName("CSP 3.0", "#directive-frame-ancestors", "frame-ancestors")}} {{Spec2('CSP 3.0')}} Inchangé.
{{specName("CSP 1.1", "#directive-frame-ancestors", "frame-ancestors")}} {{Spec2('CSP 1.1')}} Définition initiale.

Compatibilité des navigateurs

{{Compat("http.headers.csp.Content-Security-Policy.frame-ancestors")}}

Voir aussi