Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

Content-Security-Policy : directive frame-ancestors

Baseline Large disponibilité

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis janvier 2018.

La directive HTTP Content-Security-Policy (CSP) frame-ancestors définit les parents valides pouvant intégrer une page en utilisant <frame>, <iframe>, <object> ou <embed>.

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

Note : frame-ancestors permet de définir quelles sources parentes peuvent intégrer une page. Cela diffère de frame-src, qui permet de définir d'où les cadres intégrés d'une page peuvent être chargés.

Note : La directive frame-ancestors vérifie chaque ancêtre (angl.). Si un ancêtre ne correspond pas, le chargement est annulé. Par conséquent, tous les ancêtres doivent être autorisés par la directive frame-ancestors des cadres feuilles lors de l'utilisation de cadres imbriqués.

Version de CSP 2
Type de directive Directive de navigation
Solution de repli default-src Non. Ne pas définir cette directive autorise toutes les adresses.
Cette directive n'est pas prise en charge dans l'élément HTML <meta>.

Syntaxe

http
Content-Security-Policy: frame-ancestors 'none';
Content-Security-Policy: frame-ancestors <source-expression-list>;

Cette directive peut avoir l'une des valeurs suivantes :

'none'

Cette ressource ne peut pas être intégrée. Les guillemets simples sont obligatoires.

<source-expression-list>

Une liste de valeurs d'expressions de source séparées par des espaces. Cette ressource peut être intégrée si l'intégrateur correspond à l'une des expressions de source données. Pour cette directive, les valeurs d'expression de source suivantes sont applicables :

Note : La syntaxe de la directive frame-ancestors est similaire à la syntaxe de liste de sources acceptée par d'autres directives (par exemple, child-src), mais elle ne se replie pas sur le paramètre default-src. Une politique qui déclare default-src 'none' permet toujours à la ressource d'être intégrée par n'importe qui.

Exemples

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

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

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

Spécifications

Spécification
Content Security Policy Level 3
# directive-frame-ancestors

Compatibilité des navigateurs

Voir aussi