Personnaliser des en-têtes de réponse de sécurité HTTP avec AD FS 2019Customize HTTP security response headers with AD FS 2019

Pour protéger contre les vulnérabilités de sécurité courantes et fournissent aux administrateurs la possibilité de tirer parti des derniers progrès de mécanismes de protection basée sur navigateur, AD FS 2019 ajouté la fonctionnalité permettant de personnaliser les en-têtes de réponse de sécurité HTTP envoyé par AD FS.To protect against common security vulnerabilities and provide administrators the ability to take advantage of the latest advancements in browser-based protection mechanisms, AD FS 2019 added the functionality to customize the HTTP security response headers sent by AD FS. Cela est réalisé via l’introduction de deux nouvelles applets de commande : Get-AdfsResponseHeaders et Set-AdfsResponseHeaders.This is accomplished through the introduction of two new cmdlets: Get-AdfsResponseHeaders and Set-AdfsResponseHeaders.

Dans ce document, que nous aborderons couramment utilisé les en-têtes de réponse de sécurité pour montrer comment personnaliser les en-têtes envoyés par AD FS 2019.In this document we will discuss commonly used security response headers to demonstrate how to customize headers sent by AD FS 2019.

Notes

Le document suppose que AD FS 2019 a été installé.The document assumes that AD FS 2019 has been installed.

Avant d’aborder les en-têtes, jetons un œil à quelques scénarios de création de la nécessité pour les administrateurs de personnaliser les en-têtes de sécuritéBefore we discuss headers, let’s look into a few scenarios creating the need for admins to customize security headers

ScénariosScenarios

  1. L’administrateur a activé HTTP Strict-Transport-Security (HSTS) (force toutes les connexions sur le chiffrement HTTPS) pour protéger les utilisateurs qui peuvent accéder à l’application web à l’aide de HTTP à partir d’un accès Wi-Fi public point qui peut être piraté.Administrator has enabled HTTP Strict-Transport-Security (HSTS) (forces all connections over HTTPS encryption) to protect the users who might access the web app using HTTP from a public wifi access point that might be hacked. Elle souhaite renforcer davantage la sécurité en activant HSTS des sous-domaines.She would like to further strengthen security by enabling HSTS for subdomains.
  2. L’administrateur a configuré le X-Frame-Options en-tête de réponse (empêche le rendu de n’importe quelle page web dans un iFrame) pour protéger les pages web ne soient pas clickjacked.Administrator has configured the X-Frame-Options response header (prevents rendering any web page in an iFrame) to protect the web pages from being clickjacked. Toutefois, elle est chargée personnaliser la valeur d’en-tête en raison d’une nouvelle spécification de l’entreprise pour afficher des données (dans un iFrame) à partir d’une application avec une autre origine (domaine).However, she needs to customize the header value due to a new business requirement to display data (in iFrame) from an application with a different origin (domain).
  3. L’administrateur a activé X-XSS-Protection (empêche entre les attaques de script) pour nettoyer et de bloquer la page si le navigateur détecte entre les attaques de script.Administrator has enabled X-XSS-Protection (prevents cross scripting attacks) to sanitize and block the page if browser detects cross scripting attacks. Toutefois, elle doit personnaliser l’en-tête pour autoriser le chargement de la page purgé qu’une seule fois.However, she needs to customize header to allow the page to load once sanitized.
  4. L’administrateur doit activer Cross-Origin CORS (Resource Sharing) et définir l’origine (domaine) sur AD FS pour autoriser une Application à Page unique accéder à une API web avec un autre domaine.Administrator needs to enable Cross Origin Resource Sharing (CORS) and set the origin (domain) on AD FS to allow a Single Page Application to access a web API with another domain.
  5. L’administrateur a activé stratégie de sécurité de contenu (CSP) en-tête pour empêcher entre l’injection de script et de données de site les attaques en interdisant les demandes inter-domaines.Administrator has enabled Content Security Policy (CSP) header to prevent cross site scripting and data injection attacks by disallowing any cross-domain requests. Toutefois, en raison d’une nouvelle exigence d’entreprise dont elle a besoin personnaliser l’en-tête pour autoriser la page web à charger des images à partir de toute origine et de restreindre les médias aux fournisseurs approuvés.However, due to a new business requirement she needs to customize the header to allow web page to load images from any origin and restrict media to trusted providers.

En-têtes de réponse de sécurité HTTPHTTP Security Response Headers

Les en-têtes de réponse sont inclus dans la réponse HTTP sortante envoyée par AD FS dans un navigateur web.The response headers are included in the outgoing HTTP response sent by AD FS to a web browser. Les en-têtes peuvent être répertoriés à l’aide de la Get-AdfsResponseHeaders applet de commande comme indiqué ci-dessous.The headers can be listed using the Get-AdfsResponseHeaders cmdlet as shown below.

Réponse de l’en-tête

Le ResponseHeaders attribut dans la capture d’écran ci-dessus identifie les en-têtes de sécurité qui seront inclus par AD FS dans chaque réponse HTTP.The ResponseHeaders attribute in the above screenshot identifies the security headers that will be included by AD FS in every HTTP response. Les en-têtes de réponse seront envoyés uniquement si ResponseHeadersEnabled a la valeur True (valeur par défaut).The response headers will be sent only if ResponseHeadersEnabled is set to True (default value). La valeur peut être définie False afin d’éviter d’AD FS, y compris ceux des en-têtes de sécurité dans la réponse HTTP.The value can be set to False to prevent AD FS including any of the security headers in the HTTP response. Cela n’est toutefois pas recommandé.However this is not recommended. Pour cela, utilisez les éléments suivants :To do this use the following:

Set-AdfsResponseHeaders -EnableResponseHeaders $false

HTTP Strict-Transport-Security (HSTS)HTTP Strict-Transport-Security (HSTS)

HSTS est un mécanisme de stratégie de sécurité web qui vous aide à atténuer les attaques de protocole vers une version antérieure et détournement de cookie pour les services qui ont des points de terminaison HTTP et HTTPS.HSTS is a web security policy mechanism which helps mitigate protocol downgrade attacks and cookie hijacking for services that have both HTTP and HTTPS endpoints. Il permet de serveurs web déclarer que les navigateurs web (ou autres agents utilisateurs conforme) doivent uniquement interagir avec lui à l’aide de HTTPS et jamais via le protocole HTTP.It allows web servers to declare that web browsers (or other complying user agents) should only interact with it using HTTPS and never via the HTTP protocol.

Tous les points de terminaison AD FS pour le trafic d’authentification web sont ouverts exclusivement via le protocole HTTPS.All AD FS endpoints for web authentication traffic are opened exclusively over HTTPS. Par conséquent, ADFS permet d’atténuer efficacement les menaces qui fournit du mécanisme de stratégie de sécurité du Transport HTTP Strict (par défaut il n’est aucun vers une version antérieure à HTTP, car il n’existe aucun écouteur HTTP).As a result, AD FS effectively mitigates the threats that HTTP Strict Transport Security policy mechanism provides (by default there is no downgrade to HTTP since there are no listeners in HTTP). L’en-tête peut être personnalisé en définissant les paramètres suivantsThe header can be customized by setting the following parameters

  • max-age =<temps expirer> : le délai d’expiration (en secondes) spécifie la durée pendant laquelle le site doit uniquement être accessible à l’aide de HTTPS.max-age=<expire-time> – The expiry time (in seconds) specifies how long the site should only be accessed using HTTPS. Valeur par défaut et recommandée est 31536000 secondes (1 an).Default and recommended value is 31536000 seconds (1 year).
  • includeSubDomains – il s’agit d’un paramètre facultatif.includeSubDomains – This is an optional parameter. Si spécifié, la règle HSTS s’applique à tous les sous-domaines également.If specified, the HSTS rule applies to all subdomains as well.

Personnalisation de HSTSHSTS Customization

Par défaut, l’en-tête est activée et max-age défini sur 1 an ; Toutefois, les administrateurs peuvent modifier le max-age (l’en réduisant la valeur d’âge maximal n’est pas recommandé) ou activer HSTS pour les sous-domaines via le Set-AdfsResponseHeaders applet de commande.By default, the header is enabled and max-age set to 1 year; however, administrators can modify the max-age (lowering max-age value is not recommended) or enable HSTS for subdomains through the Set-AdfsResponseHeaders cmdlet.

Set-AdfsResponseHeaders -SetHeaderName "Strict-Transport-Security" -SetHeaderValue "max-age=<seconds>; includeSubDomains" 

Exemple :Example:

Set-AdfsResponseHeaders -SetHeaderName "Strict-Transport-Security" -SetHeaderValue "max-age=31536000; includeSubDomains" 

Par défaut, l’en-tête est inclus dans le ResponseHeaders attribut ; Toutefois, les administrateurs peuvent supprimer l’en-tête via le Set-AdfsResponseHeaders applet de commande.By default, the header is included in the ResponseHeaders attribute; however, administrators can remove the header through the Set-AdfsResponseHeaders cmdlet.

Set-AdfsResponseHeaders -RemoveHeaders "Strict-Transport-Security" 

X-Frame-OptionsX-Frame-Options

AD FS par défaut n’autorise pas les applications externes à utiliser des iFrames lorsque vous effectuez des connexions interactives.AD FS by default does not allow external applications to use iFrames when performing interactive logins. Cela vise à empêcher un style spécifique d’attaques de phishing.This is done to prevent certain style of phishing attacks. Notez que les connexions non interactives peuvent être effectuées via iFrame en raison de la sécurité de niveau session antérieure qui a été établie.Note that non-interactive logins can be performed via iFrame due to prior session level security that has been established.

Toutefois, dans certains cas rares, vous pourrez approuver une application spécifique qui nécessite la page de connexion FS iFrame capable AD interactif.However, in certain rare cases you may trust a specific application that requires iFrame capable interactive AD FS login page. L’en-tête 'X-Frame-Options' est utilisé à cet effet.The ‘X-Frame-Options’ header is used for this purpose.

Cet en-tête de réponse de sécurité HTTP est utilisé pour communiquer avec le navigateur si elle peut restituer une page dans un <frame>/<iframe>.This HTTP security response header is used to communicate to the browser whether it can render a page in a <frame>/<iframe>. L’en-tête peut être défini à une des valeurs suivantes :The header can be set to one of the following values:

  • refuser : la page dans un frame ne s’affichera pas.deny – The page in a frame will not be displayed. Ceci est la valeur par défaut et recommandée.This is the default and recommended setting.
  • sameorigin – la page sera uniquement être affichée dans le cadre de si l’origine est identique à l’origine de la page web.sameorigin – The page will only be displayed in the frame if the origin is the same as the origin of the web page. L’option n’est pas très utile, sauf si tous les ancêtres sont également dans la même origine.The option is not very useful unless all ancestors are also in the same origin.
  • autoriser de -la page sera uniquement être affichée dans le frame se l’origine (par exemple, https://www. ». com) correspond à l’origine spécifique dans l’en-tête.allow-from - The page will only be displayed in the frame if the origin (eg, https://www.".com) matches the specific origin in the header.

Personnalisation de X-Frame-OptionsX-Frame-Options Customization

Par défaut, en-tête est défini à refuser ; Toutefois, les administrateurs peuvent modifier la valeur via le Set-AdfsResponseHeaders applet de commande.By default, header will be set to deny; however, admins can modify the value through the Set-AdfsResponseHeaders cmdlet.

Set-AdfsResponseHeaders -SetHeaderName "X-Frame-Options" -SetHeaderValue "<deny/sameorigin/allow-from<specified origin>>" 

Exemple :Example:

Set-AdfsResponseHeaders -SetHeaderName "X-Frame-Options" -SetHeaderValue "allow-from https://www.example.com" 

Par défaut, l’en-tête est inclus dans le ResponseHeaders attribut ; Toutefois, les administrateurs peuvent supprimer l’en-tête via le Set-AdfsResponseHeaders applet de commande.By default, the header is included in the ResponseHeaders attribute; however, administrators can remove the header through the Set-AdfsResponseHeaders cmdlet.

Set-AdfsResponseHeaders -RemoveHeaders "X-Frame-Options" 

X-XSS-ProtectionX-XSS-Protection

Cet en-tête de réponse de sécurité HTTP est utilisé pour arrêter les pages web à partir de chargement lorsque des attaques cross site scripting (XSS) sont détectées par les navigateurs.This HTTP security response header is used to stop web pages from loading when cross-site scripting (XSS) attacks are detected by browsers. Cela est appelé XSS filtrage.This is referred as XSS filtering. L’en-tête peut être défini à une des valeurs suivantesThe header can be set to one of the following values

  • 0 – XSS désactive le filtrage.0 – Disables XSS filtering. Non recommandé.Not recommended.
  • 1 – XSS permet le filtrage.1 – Enables XSS filtering. Si l’attaque XSS est détectée, le navigateur Assainit la page.If XSS attack is detected, browser will sanitize the page.
  • 1 ; mode = bloc – XSS permet le filtrage.1; mode=block – Enables XSS filtering. Si l’attaque XSS est détectée, navigateur empêche le rendu de la page.If XSS attack is detected, browser will prevent rendering of the page. Ceci est la valeur par défaut et recommandée.This is the default and recommended setting.

Personnalisation de X-XSS-ProtectionX-XSS-Protection Customization

Par défaut, l’en-tête sera être défini sur 1 ; mode = bloc ; Toutefois, les administrateurs peuvent modifier la valeur via le Set-AdfsResponseHeaders applet de commande.By default, the header will be set to 1; mode=block; however, administrators can modify the value through the Set-AdfsResponseHeaders cmdlet.

Set-AdfsResponseHeaders -SetHeaderName "X-XSS-Protection" -SetHeaderValue "<0/1/1; mode=block/1; report=<reporting-uri>>" 

Exemple :Example:

Set-AdfsResponseHeaders -SetHeaderName "X-XSS-Protection" -SetHeaderValue "1" 

Par défaut, l’en-tête est inclus dans le ResponseHeaders attribut ; Toutefois, les administrateurs peuvent supprimer l’en-tête via le Set-AdfsResponseHeaders applet de commande.By default, the header is included in the ResponseHeaders attribute; however, admins can remove the header through the Set-AdfsResponseHeaders cmdlet.

Set-AdfsResponseHeaders -RemoveHeaders "X-XSS-Protection" 

Entre les en-têtes de partage des ressources d’origine (CORS)Cross Origin Resource Sharing (CORS) headers

Sécurité des navigateurs Web empêche une page web d’effectuer des demandes de cross-origin initialisées à partir de scripts.Web browser security prevents a web page from making cross-origin requests initiated from within scripts. Toutefois, vous pouvez parfois d’accéder aux ressources dans d’autres origines (domaines).However, sometimes you might want to access resources in other origins (domains). CORS est une norme W3C qui permet à un serveur d’assouplir la stratégie de même origine.CORS is a W3C standard that allows a server to relax the same-origin policy. À l’aide de CORS, un serveur peut autoriser explicitement certaines demandes cross-origin lors du refus d’autres.Using CORS, a server can explicitly allow some cross-origin requests while rejecting others.

Pour mieux comprendre demande CORS, nous allons procédure pas à pas un scénario où une seule page (SPA) d’application doit appeler une API web avec un autre domaine.To better understand CORS request, let’s walkthrough a scenario where a single page application (SPA) needs to call a web API with a different domain. En outre, prenons l’exemple que SPA et API sont configurées sur ADFS 2019 et AD FS a CORS est activé par exemple, AD FS peut identifier les en-têtes CORS dans la requête HTTP, valider les valeurs d’en-tête et inclure des en-têtes CORS appropriés dans la réponse (plus d’informations sur l’activation et configurer CORS sur AD FS des 2019 dans CORS de personnalisation, section ci-dessous).Further, let’s consider that both SPA and API are configured on ADFS 2019 and AD FS has CORS enabled i.e. AD FS can identify CORS headers in the HTTP request, validate header values, and include appropriate CORS headers in the response (details on how to enable and configure CORS on AD FS 2019 in CORS Customization section below). Exemple de flux :Sample flow:

  1. Utilisateur accède à SPA via le navigateur client et est redirigé vers le point de terminaison AD FS d’authentification pour l’authentification.User accesses SPA through client browser and is redirected to AD FS auth endpoint for authentication. SPA n’est configuré pour le flux d’octroi implicite, demander le jeton retourne un accès + l’ID dans le navigateur après une authentification réussie.Since SPA is configured for implicit grant flow, request returns an Access + ID token to the browser after successful authentication.

  2. Une fois l’authentification utilisateur, le front-end JavaScript inclus dans SPA effectue une demande à accéder à l’API web.After user authentication, the front-end JavaScript included in SPA makes a request to access the web API. La requête est redirigée vers AD FS avec les en-têtes suivantsThe request is redirected to AD FS with following headers

    • Options : décrit les options de communication pour la ressource cibleOptions – describes the communication options for the target resource
    • Origine – inclut l’origine de l’API webOrigin – includes the origin of the web API
    • Access-Control-Request-Method – identifie la méthode HTTP (par exemple, supprimer) à utiliser lors de la demande réelle est effectuée.Access-Control-Request-Method – identifies the HTTP method (eg, DELETE) to be used when actual request is made
    • Access-Control-Request-Headers - identifie les en-têtes HTTP à utiliser lors de la demande réelle est effectuée.Access-Control-Request-Headers - identifies the HTTP headers to be used when actual request is made

    Notes

    Demande CORS ressemble à une requête HTTP standard, toutefois, la présence d’un en-tête d’origine signale que la demande entrante est CORS liés.CORS request resembles a standard HTTP request, however, the presence of an origin header signals the incoming request is CORS related.

  3. AD FS vérifie que le web origine API inclus dans l’en-tête est répertorié dans les origines approuvées configurés dans AD FS (plus d’informations sur comment modifier les origines approuvées dans CORS de personnalisation, section ci-dessous).AD FS verifies that the web API origin included in the header is listed in the trusted origins configured in AD FS (details on how to modify trusted origins in CORS Customization section below). AD FS répond ensuite avec les en-têtes suivants.AD FS then responds with following headers.

    • Access-Control-Allow-Origin – même valeur, comme dans l’en-tête d’origineAccess-Control-Allow-Origin – value same as in the Origin header
    • Access-Control-autoriser-Method – même valeur, comme dans l’en-tête Access-Control-Request-MethodAccess-Control-Allow-Method – value same as in the Access-Control-Request-Method header
    • Access-Control-Allow-Headers - même valeur, comme dans l’en-tête Access-Control-Request-HeadersAccess-Control-Allow-Headers - value same as in the Access-Control-Request-Headers header
  4. Navigateur envoie la demande réelle, y compris les en-têtes suivantsBrowser sends the actual request including the following headers

    • Méthode HTTP (par exemple, supprimer)HTTP method (eg, DELETE)
    • Origine – inclut l’origine de l’API webOrigin – includes the origin of the web API
    • Tous les en-têtes inclus dans l’en-tête de réponse Access-Control-Allow-HeadersAll headers included in the Access-Control-Allow-Headers response header
  5. Une fois vérifiée, AD FS approuve la demande en incluant le domaine d’API web (origine) dans l’en-tête de réponse Access-Control-Allow-Origin.Once verified, AD FS approves the request by including the web API domain (origin) in the Access-Control-Allow-Origin response header.

  6. L’inclusion de l’en-tête Access-Control-Allow-Origin permettra le navigateur accéder à l’avance avec l’appel de l’API demandée.The inclusion of the Access-Control-Allow-Origin header will allow the browser to go ahead with calling the requested API.

Personnalisation de CORSCORS customization

Par défaut, les fonctionnalités CORS ne seront pas activée ; Toutefois, les administrateurs peuvent activer les fonctionnalités via l’applet de commande Set-AdfsResponseHeaders.By default, CORS functionality will not be enabled; however, admins can enable the functionality through the Set-AdfsResponseHeaders cmdlet.

Set-AdfsResponseHeaders -EnableCORS $true 

Une option est activée, les administrateurs seront en mesure d’énumérer une liste d’origines approuvées à l’aide de l’applet de commande.One enabled, admins will be able to enumerate a list of trusted origins using the same cmdlet. Par exemple, la commande suivante permettrait de demandes CORS des origines https://example1.com et https://example1.com.For instance, the following command would allow CORS requests from the origins https://example1.com and https://example1.com.

Set-AdfsResponseHeaders -CORSTrustedOrigins https://example1.com,https://example2.com 

Notes

Les administrateurs peuvent autoriser les demandes CORS à partir de toute origine en incluant « * » dans la liste des origines approuvées, bien que cette approche n’est pas recommandée en raison de vulnérabilités de sécurité et un message d’avertissement est fournie si dont ils ont besoin.Admins can allow CORS requests from any origin by including "*" in the list of trusted origins, although this approach is not recommended due to security vulnerabilities and a warning message is provided if they choose to.

Stratégie de sécurité du contenu (CSP)Content Security Policy (CSP)

Cet en-tête de réponse de sécurité HTTP est utilisé pour empêcher les scripts intersites, le détournement de clics et autres attaques par injection de données en empêchant les navigateurs de l’exécution par inadvertance de contenu malveillant.This HTTP security response header is used to prevent cross-site scripting, clickjacking and other data injection attacks by preventing browsers from inadvertently executing malicious content. Les navigateurs qui ne prennent pas en charge le CSP ignore simplement les en-têtes de réponse CSP.Browsers that don’t support CSP simply ignores the CSP response headers.

Personnalisation du CSPCSP Customization

Personnalisation de l’en-tête CSP implique la modification de la stratégie de sécurité qui définit le navigateur de ressources est autorisée à charger pour la page web.Customization of CSP header involves modifying the security policy that defines the resources browser is allowed to load for the web page. La stratégie de sécurité par défaut estThe default security policy is

Content-Security-Policy: default-src ‘self’ ‘unsafe-inline’ ‘’unsafe-eval’; img-src ‘self’ data:;

Le par défaut-src directive est utilisée pour modifier - src directives sans avoir à mentionner explicitement de chaque directive.The default-src directive is used to modify -src directives without listing each directive explicitly. Par exemple, dans l’exemple ci-dessous, la stratégie 1 est identique à la stratégie 2.For instance, in the example below the policy 1 is same as the policy 2.

Stratégie 1Policy 1

Set-AdfsResponseHeaders -SetHeaderName "Content-Security-Policy" -SetHeaderValue "default-src 'self'" 

Stratégie 2Policy 2

Set-AdfsResponseHeaders -SetHeaderName "Content-Security-Policy" -SetHeaderValue "script-src ‘self’; img-src ‘self’; font-src 'self';  
frame-src 'self'; manifest-src 'self'; media-src 'self';" 

Si une directive est répertoriée explicitement, la valeur spécifiée substitue à la valeur donnée pour la valeur par défaut-src. Dans l’exemple ci-dessous, img-src prendra la valeur en tant que « * » (ce qui permet d’images à charger à partir de toute origine) tandis que les autres directives - src prendra la valeur comme « personnel » (limitant à la même origine que la page web).If a directive is explicitly listed, the specified value overrides the value given for default-src. In the example below, the img-src will take the value as ‘*’ (allowing images to be loaded from any origin) while other -src directives will take the value as ‘self’ (restricting to same origin as the web page).

Set-AdfsResponseHeaders -SetHeaderName "Content-Security-Policy" -SetHeaderValue "default-src ‘self’; img-src *" 

Les sources suivantes peuvent être définies pour la stratégie par défaut-srcFollowing sources can be defined for the default-src policy

  • 'self' – spécifiant cette limite à l’origine du contenu à charger à l’origine de la page web‘self’ – specifying this restricts the origin of the content to load to the origin of the web page
  • 'unsafe-inline' – Cela spécifiant dans la stratégie autorise l’utilisation de code JavaScript intégré et CSS‘unsafe-inline’ – specifying this in the policy allows the use of inline JavaScript and CSS
  • 'unsafe eval' – Cela spécifiant dans la stratégie autorise l’utilisation de texte à JavaScript des mécanismes tels qu’eval‘unsafe-eval’ – specifying this in the policy allows the use of text to JavaScript mechanisms like eval
  • 'none' – spécifiant cette limite le contenu à partir de toute origine à charger‘none’ – specifying this restricts the content from any origin to load
  • données :-spécification des données : URI permet aux créateurs de contenu incorporer des petits fichiers inline dans les documents.data: - specifying data: URIs allows content creators to embed small files inline in documents. Utilisation déconseillée.Usage not recommended.

Notes

AD FS utilise du code JavaScript dans le processus d’authentification et par conséquent, JavaScript en incluant 'unsafe inline' et 'unsafe eval' sources par défaut stratégie.AD FS uses JavaScript in the authentication process and therefore enables JavaScript by including ‘unsafe-inline’ and ‘unsafe-eval’ sources in default policy.

En-têtes personnalisésCustom Headers

Outre les précautions ci-dessus répertorié les en-têtes de réponse de sécurité (HSTS, CSP, X-Frame-Options, X-XSS-Protection et CORS), AD FS 2019 offre la possibilité de définir de nouveaux en-têtes.In addition to the above listed security response headers (HSTS, CSP, X-Frame-Options, X-XSS-Protection and CORS), AD FS 2019 provides the ability to Set new headers.

Exemple : Pour définir un nouvel en-tête « TestHeader » avec la valeur en tant que « TestHeaderValue »Example: To set a new header "TestHeader" with value as "TestHeaderValue"

Set-AdfsResponseHeaders -SetHeaderName "TestHeader" -SetHeaderValue "TestHeaderValue" 

Une fois définie, le nouvel en-tête est envoyé dans la réponse d’AD FS (fiddler extrait de code ci-dessous).Once set, the new header is sent in the AD FS response (fiddler snippet below).

Fiddler

Compatibilité de navigateur attribuant alors WebWeb browswer compatibility

Utilisez le tableau et les liens suivants pour déterminer quels sont les navigateurs web sont compatibles avec chacun des en-tête de réponse de sécurité.Use the following table and links to determine which web browsers are compatible with each of the security response headers.

En-têtes de réponse de sécurité HTTPHTTP Security Response Headers Compatibilité du navigateurBrowser Compatibility
HTTP Strict-Transport-Security (HSTS)HTTP Strict-Transport-Security (HSTS) Compatibilité des navigateurs HSTSHSTS browser compatibility
X-Frame-OptionsX-Frame-Options Compatibilité des navigateurs de X-Frame-OptionsX-Frame-Options browser compatibility
X-XSS-ProtectionX-XSS-Protection Compatibilité des navigateurs de X-XSS-ProtectionX-XSS-Protection browser compatibility
Cross-Origin Resource Sharing (CORS)Cross Origin Resource Sharing (CORS) Compatibilité des navigateurs CORSCORS browser compatibility
Stratégie de sécurité du contenu (CSP)Content Security Policy (CSP) Compatibilité des navigateurs CSPCSP browser compatibility

SuivantNext