Configurez une Content Security Policy (CSP, stratégie de sécurité du contenu) pour toutes les pages de votre portail afin de vous protéger contre les attaques par script intersites (XSS) et autres attaques par injection de code. La CSP définit des sources fiables pour des contenus tel que des scripts, des styles et des images.
Une fois que vous avez configuré une stratégie, le contenu chargé à partir de sources non approuvées est bloqué par votre navigateur.
La CSP est ajoutée en tant qu'en-tête de réponse HTTP Content-Security-Policy à toutes les pages de votre portail, comme suit :
Si vous activez l'en-tête CSP, la directive CSP suivante est définie par défaut :
default-src 'unsafe-eval' 'unsafe-inline' * data:
La directive default-src configure la stratégie par défaut pour les types de ressources qui n'ont pas de directive configurée.
Le tableau suivant décrit les stratégies définies avec la directive par défaut.
Stratégie
Accès
'unsafe-inline'
Ressources intégrées, telles que les éléments <script> intégrés, les URL javascript:, les gestionnaires d'événements intégrés et les éléments <style> intégrés. Remarque : Vous devez placer la stratégie entre guillemets simples.
'unsafe-eval'
Évaluation du code dynamique non sécurisé (telle que JavaScript eval()), ainsi que les méthodes similaires utilisées pour créer du code à partir de chaînes. Remarque : Vous devez placer la stratégie entre guillemets simples.
* (wildcard)
Toutes les URL, à l'exception des schémas data:, blob: et filesystem:.
data:
Ressources chargées par le biais du schéma de données (par exemple, des images encodées en base64).
Vous trouverez ci-dessous des exemples de configuration de la CSP pour restreindre des types de ressources spécifiques.
Stratégie
Accès
default-src 'none'
Aucun accès aux types de ressources ne disposant pas d'une directive configurée.
img-src *
URL d'image provenant de n'importe quelle source.
media-src https://example.com/
URL vidéo ou audio via HTTPS issue du domaine example.com.
script-src *.example.com
Exécution de tout script provenant d'un sous-domaine de example.com.
style-src 'self' css.example.com
Application de n'importe quel style provenant de l'origine du site ou du domaine css.example.com.
Pour configurer une stratégie de sécurité du contenu, procédez comme suit :
Interface utilisateur de la console Cloud
Dans Apigee, depuis la console Cloud, accédez à la page Distribution > Portails.
Cliquez sur Paramètres dans le menu de navigation.
Cliquez sur l'onglet Sécurité.
Cliquez sur Activer la stratégie CSP.
Configurez la CSP ou conservez la valeur par défaut.
Cliquez sur Enregistrer.
UI classique
Sélectionnez Publier > Portails et sélectionnez votre portail.
Sélectionnez Paramètres dans le menu déroulant de la barre de navigation supérieure.
Vous pouvez également cliquer sur Paramètres sur la page de destination du portail.
Cliquez sur l'onglet Sécurité.
Cliquez sur Activer la stratégie CSP.
Configurez la CSP ou conservez la valeur par défaut.
Cliquez sur Enregistrer.
Vous pouvez restaurer la stratégie CSP par défaut à tout moment en cliquant sur Restaurer la valeur par défaut.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/08/27 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/08/27 (UTC)."],[[["\u003cp\u003eThis page details how to configure a Content Security Policy (CSP) for Apigee and Apigee hybrid portals to guard against cross-site scripting (XSS) and code-injection attacks.\u003c/p\u003e\n"],["\u003cp\u003eThe CSP, added as a \u003ccode\u003eContent-Security-Policy\u003c/code\u003e HTTP response header, defines trusted sources for content and uses directives like \u003ccode\u003edefault-src\u003c/code\u003e, \u003ccode\u003eimg-src\u003c/code\u003e, and \u003ccode\u003escript-src\u003c/code\u003e to manage access.\u003c/p\u003e\n"],["\u003cp\u003eBy default, enabling CSP sets the \u003ccode\u003edefault-src\u003c/code\u003e directive to allow \u003ccode\u003e'unsafe-eval'\u003c/code\u003e, \u003ccode\u003e'unsafe-inline'\u003c/code\u003e, \u003ccode\u003e*\u003c/code\u003e, and \u003ccode\u003edata:\u003c/code\u003e, but you can modify this for more specific access control.\u003c/p\u003e\n"],["\u003cp\u003eTo configure the CSP, you must navigate through the portal's settings under the Security tab and enable the content security policy.\u003c/p\u003e\n"],["\u003cp\u003eYou can revert to the default CSP settings at any time by clicking the "Restore default" button.\u003c/p\u003e\n"]]],[],null,["# Configure a content security policy\n\n*This page\napplies to **Apigee** and **Apigee hybrid**.*\n\n\n*View [Apigee Edge](https://docs.apigee.com/api-platform/get-started/what-apigee-edge) documentation.*\n\n\u003cbr /\u003e\n\nConfigure a content security policy (CSP) for all pages in your portal to\nprotect against cross-site scripting (XSS) and other code-injection attacks. The\nCSP defines trusted sources for content such as scripts, styles, and images.\nAfter configuring a policy, content loaded from untrusted sources will be\nblocked by your browser.\n\nThe CSP is added as a `Content-Security-Policy` HTTP response header to all\npages in your portal, as follows:\n\n`Content-Security-Policy: `*policy*\n\nYou define the policy using directives, as defined in\n[Content Security Policy Directives](https://www.w3.org/TR/CSP3/#csp-directives) in the W3C site.\n\nIf you enable the CSP header, by default the following CSP directive is defined:\n\n`default-src 'unsafe-eval' 'unsafe-inline' * data:`\n\nThe `default-src` directive configures the default policy for\nresource types that do not have a configured directive.\n| Apigee recommends that you define a default directive as part of the CSP to configure the minimum restrictions.\n\nThe following table describes the policies defined as part of the default directive.\n\nThe following provides examples of configuring the CSP to restrict specific resource types.\n\nTo configure a content security policy: \n\n### Cloud Console UI\n\n1. In the Apigee in Cloud console, go to the **Distribution \\\u003e Portals** page.\n\n [Go to Portals](https://console.cloud.google.com/apigee/portals)\n2. Click your portal.\n\n3. Click **Settings** in the navigation menu.\n\n4. Click the **Security** tab.\n\n5. Click **Enable content security policy**.\n\n6. Configure the CSP or leave the default.\n\n7. Click **Save**.\n\n### Classic UI\n\n1. Select **Publish \\\u003e Portals** and select your portal.\n2. Select **Settings** in the drop-down menu in the top navigation bar.\n3. Alternatively, click **Settings** on the portal landing page.\n4. Click the **Security** tab.\n5. Click **Enable content security policy**.\n6. Configure the CSP or leave the default.\n7. Click **Save**.\n\nYou can restore the default CSP policy at any time by clicking **Restore default**."]]