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

Pour vous protéger contre les failles de sécurité courantes et fournir aux administrateurs la possibilité de tirer parti des dernières avancées dans les mécanismes de protection basés sur un navigateur, AD FS 2019 a ajouté la fonctionnalité de personnalisation des 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. Pour ce faire, vous devez introduire deux nouvelles applets de Get-AdfsResponseHeaders commande Set-AdfsResponseHeaders: et.This is accomplished through the introduction of two new cmdlets: Get-AdfsResponseHeaders and Set-AdfsResponseHeaders.

Notes

La fonctionnalité de personnalisation des en-têtes de réponse de sécurité http (à l’exception des en- Get-AdfsResponseHeaders têtes Set-AdfsResponseHeaders cors) à l’aide des applets de commande: et a été reportée à AD FS 2016.The functionality to customize the HTTP security response headers (except CORS Headers) using cmdlets: Get-AdfsResponseHeaders and Set-AdfsResponseHeaders was backported to AD FS 2016. Vous pouvez ajouter la fonctionnalité à votre AD FS 2016 en installant KB4493473 et KB4507459.You can add the functionality to your AD FS 2016 by installing KB4493473 and KB4507459.

Dans ce document, nous aborderons les en-têtes de réponse de sécurité couramment utilisés 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 de discuter des en-têtes, examinons quelques scénarios qui créent 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 point d’accès Wi-Fi public 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 la sécurité en activant HSTS pour les sous-domaines.She would like to further strengthen security by enabling HSTS for subdomains.
  2. L’administrateur a configuré l’en-tête de réponse X-Frame-options (empêche le rendu d’une page Web dans un IFRAME) pour empêcher les pages Web d’être 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 doit personnaliser la valeur d’en-tête en raison d’une nouvelle exigence commerciale pour afficher les données (dans un iFrame) à partir d’une application avec une origine différente (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é la protection X-XSS (empêchant les attaques entre scripts) d’assainir et de bloquer la page si le navigateur détecte des attaques de script croisé.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 permettre au chargement de la page d’être nettoyée.However, she needs to customize header to allow the page to load once sanitized.
  4. L’administrateur doit activer le partage des ressources Cross-Origin (cors) 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é l’en-tête de stratégie de sécurité de contenu (CSP) pour empêcher les attaques par injection de données et de script entre sites 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 commerciale, elle doit personnaliser l’en-tête pour permettre à la page Web de charger des images à partir de n’importe quelle origine et de restreindre le média 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 à 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 Get-AdfsResponseHeaders à l’aide de l’applet de commande, comme indiqué ci-dessous.The headers can be listed using the Get-AdfsResponseHeaders cmdlet as shown below.

Réponse d’en-tête

L' 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 sont envoyés uniquement ResponseHeadersEnabled si a True la valeur (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 sur False pour empêcher AD FS y compris les 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. Toutefois, cela n’est pas recommandé.However this is not recommended. Pour ce faire, utilisez ce qui suit: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 permet d’atténuer les attaques par rétrogradation de protocole et le piratage de cookies pour les services qui ont à la fois 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 aux serveurs Web de déclarer que les navigateurs Web (ou d’autres agents utilisateur conformes) 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 de AD FS pour le trafic d’authentification Web sont ouverts exclusivement via HTTPs.All AD FS endpoints for web authentication traffic are opened exclusively over HTTPS. Par conséquent, AD FS atténue efficacement les menaces fournies par le mécanisme de stratégie de sécurité de transport strict (par défaut, il n’y a pas de passage à HTTP, car il n’y a aucun écouteur dans 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 =<expiration-Time> – le délai d’expiration (en secondes) spécifie la durée pendant laquelle le site ne doit être accessible qu’à l’aide du protocole HTTPS.max-age=<expire-time> – The expiry time (in seconds) specifies how long the site should only be accessed using HTTPS. La valeur par défaut et la valeur recommandée est de 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. S’il est spécifié, la règle HSTS s’applique également à tous les sous-domaines.If specified, the HSTS rule applies to all subdomains as well.

Personnalisation de HSTSHSTS Customization

Par défaut, l’en-tête est max-age activé et défini sur 1 an; Toutefois, les administrateurs max-age peuvent modifier la valeur (la diminution de l’âge maximal n’est pas recommandée) ou activer HSTS Set-AdfsResponseHeaders pour les sous-domaines via l’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 ResponseHeaders dans l’attribut; Toutefois, les administrateurs peuvent supprimer l' Set-AdfsResponseHeaders en-tête par le biais de l’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 lors de l’exécution de connexions interactives.AD FS by default does not allow external applications to use iFrames when performing interactive logins. Cela permet d’éviter certains styles d’attaques par hameçonnage.This is done to prevent certain style of phishing attacks. Notez que les connexions non interactives peuvent être effectuées via un iFrame en raison de la sécurité au niveau de la 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 pouvez faire confiance à une application spécifique qui nécessite une page de connexion AD FS interactive prenant en charge iFrame.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, qu’il puisse <afficher>une>page dans un IFRAME de cadre/<.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 sur l’une des valeurs suivantes:The header can be set to one of the following values:

  • Deny : la page dans un frame ne s’affiche pas.deny – The page in a frame will not be displayed. Il s’agit de la valeur par défaut et recommandée.This is the default and recommended setting.
  • sameorigin : la page s’affiche uniquement dans le frame 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: à partir de la page s’affiche uniquement dans le frame si 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 des options X-FrameX-Frame-Options Customization

Par défaut, l’en-tête est défini sur Deny; Toutefois, les administrateurs peuvent modifier la valeur par Set-AdfsResponseHeaders le biais de l’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 ResponseHeaders dans l’attribut; Toutefois, les administrateurs peuvent supprimer l' Set-AdfsResponseHeaders en-tête par le biais de l’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 empêcher le chargement des pages Web lorsque des attaques de script entre sites (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. C’est ce que l’on appelle le filtrage XSS.This is referred as XSS filtering. L’en-tête peut être défini sur l’une des valeurs suivantes.The header can be set to one of the following values

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

Personnalisation X-XSS-protectionX-XSS-Protection Customization

Par défaut, l’en-tête est défini sur 1; mode = bloc; Toutefois, les administrateurs peuvent modifier la valeur par Set-AdfsResponseHeaders le biais de l’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 ResponseHeaders dans l’attribut; Toutefois, les administrateurs peuvent supprimer l' Set-AdfsResponseHeaders en-tête par le biais de l’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" 

En-têtes de partage des ressources Cross-Origin (CORS)Cross Origin Resource Sharing (CORS) headers

La sécurité du navigateur Web empêche une page Web de créer des requêtes Cross-Origin lancées à partir de scripts.Web browser security prevents a web page from making cross-origin requests initiated from within scripts. Toutefois, il peut arriver que vous souhaitiez accéder à des 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 la demande CORS, voyons un scénario dans lequel une application à page unique (SPA) doit appeler une API Web avec un domaine différent.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, considérons que SPA et l’API sont configurés sur ADFS 2019 AD FS et que CORS est activé, c.-à-d. AD FS pouvez identifier les en-têtes CORS dans la requête HTTP, valider les valeurs d’en-tête et inclure les en-têtes CORS appropriés dans la réponse (détails sur l’activation et la configurer CORS sur AD FS 2019 dans la section de personnalisation CORS 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 flow:Sample flow:

  1. L’utilisateur accède au SPA par le biais du navigateur client et est redirigé vers AD FS point de terminaison d’authentification pour l’authentification.User accesses SPA through client browser and is redirected to AD FS auth endpoint for authentication. Étant donné que SPA est configuré pour le workflow d’octroi implicite, la requête retourne un jeton d’accès + ID au 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. Après l’authentification de l’utilisateur, le code JavaScript frontal inclus dans le SPA fait une demande d’accès à l’API Web.After user authentication, the front-end JavaScript included in SPA makes a request to access the web API. La demande 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 cible.Options – describes the communication options for the target resource
    • Origin: comprend l’origine de l’API Web.Origin – includes the origin of the web API
    • Access-Control-Request-Method: identifie la méthode HTTP (par exemple, DELETE) à utiliser lorsque 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 lorsque la demande réelle est effectuéeAccess-Control-Request-Headers - identifies the HTTP headers to be used when actual request is made

    Notes

    La demande CORS ressemble à une requête HTTP standard. Toutefois, la présence d’un en-tête Origin indique que la demande entrante est liée à CORS.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 l’origine de l’API Web incluse dans l’en-tête est répertoriée dans les origines approuvées configurées dans AD FS (détails sur la modification des origines approuvées dans la section de personnalisation CORS 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 – valeur identique à celle de l’en-tête OriginAccess-Control-Allow-Origin – value same as in the Origin header
    • Access-Control-allow-Method – valeur identique à celle de l’en-tête Access-Control-Request-MethodAccess-Control-Allow-Method – value same as in the Access-Control-Request-Method header
    • Access-Control-allow-en-têtes-valeur identique à celle de l’en-tête Access-Control-request-headersAccess-Control-Allow-Headers - value same as in the Access-Control-Request-Headers header
  4. Le 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, DELETE)HTTP method (eg, DELETE)
    • Origin: comprend l’origine de l’API Web.Origin – 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 la vérification effectuée, AD FS approuve la requête en incluant le domaine de l’API Web (Origin) 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 au navigateur d’accéder à 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 CORSCORS customization

Par défaut, les fonctionnalités CORS ne sont pas activées; Toutefois, les administrateurs peuvent activer la fonctionnalité par le biais de 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 fois activée, les administrateurs peuvent énumérer une liste d’origines approuvées à l’aide de la même 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 autorise les requêtes CORS à partir 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 requêtes CORS à partir de n’importe quelle origine en incluant «*» dans la liste des origines approuvées, bien que cette approche ne soit pas recommandée en raison des failles de sécurité et qu’un message d’avertissement est fourni s’ils choisissent de le faire.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é de contenu (CSP)Content Security Policy (CSP)

Cet en-tête de réponse de sécurité HTTP est utilisé pour empêcher les attaques de script entre sites, le détournement et autres attaques par injection de données en empêchant les navigateurs d’exécuter par inadvertance du 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 CSP ignorent 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

La personnalisation de l’en-tête CSP implique la modification de la stratégie de sécurité qui définit que le navigateur des ressources est autorisé à 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:;

La directive par défaut de SRC est utilisée pour modifier des directives-SRC sans répertorier chaque directive explicitement.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 la même que 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 explicitement listée, la valeur spécifiée remplace la valeur donnée pour default-SRC. Dans l’exemple ci-dessous, img-src prend la valeur «*» (autorisant le chargement des images à partir de n’importe quelle origine), tandis que les autres directives-SRC prennent la valeur comme «Self» (ce qui limite à 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 de SRCFollowing sources can be defined for the default-src policy

  • 'Self': spécifier cela restreint 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' – la spécification de ce paramètre dans la stratégie permet l’utilisation de JavaScript inline et de CSS‘unsafe-inline’ – specifying this in the policy allows the use of inline JavaScript and CSS
  • 'unsafe-eval' – la spécification de ce paramètre dans la stratégie permet l’utilisation de mécanismes de texte à JavaScript comme eval‘unsafe-eval’ – specifying this in the policy allows the use of text to JavaScript mechanisms like eval
  • 'none' – la spécification de ce paramètre limite le contenu d’une origine à une charge‘none’ – specifying this restricts the content from any origin to load
  • Data:-spécification des données: Les URI permettent aux créateurs de contenu d’incorporer des fichiers de petite taille dans des documents.data: - specifying data: URIs allows content creators to embed small files inline in documents. Utilisation non recommandée.Usage not recommended.

Notes

AD FS utilise JavaScript dans le processus d’authentification et, par conséquent, active JavaScript en incluant des sources «unsafe-inline» et «unsafe-eval» dans la stratégie par défaut.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

En plus des en-têtes de réponse de sécurité indiqués ci-dessus (HSTS, CSP, X-Frame-options, X-XSS-protection et CORS), AD FS 2019 permet 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 «TestHeaderValue»Example: To set a new header "TestHeader" with value as "TestHeaderValue"

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

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

Fiddler

Compatibilité Web navigateur attribuant alorsWeb browswer compatibility

Utilisez le tableau et les liens suivants pour déterminer les navigateurs Web compatibles avec chacun des en-têtes 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é du navigateur HSTSHSTS browser compatibility
X-Frame-optionsX-Frame-Options Compatibilité du navigateur X-Frame-optionsX-Frame-Options browser compatibility
X-XSS-protectionX-XSS-Protection Compatibilité du navigateur X-XSS-protectionX-XSS-Protection browser compatibility
Partage des ressources Cross-Origin (CORS)Cross Origin Resource Sharing (CORS) Compatibilité des navigateurs CORSCORS browser compatibility
Stratégie de sécurité de contenu (CSP)Content Security Policy (CSP) Compatibilité du navigateur CSPCSP browser compatibility

SuivantNext