

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Sécurité dans Amazon API Gateway
<a name="security"></a>

La sécurité du cloud AWS est la priorité absolue. En tant que AWS client, vous bénéficiez d'un centre de données et d'une architecture réseau conçus pour répondre aux exigences des entreprises les plus sensibles en matière de sécurité.

La sécurité est une responsabilité partagée entre vous AWS et vous. Le [modèle de responsabilité partagée](https://aws.amazon.com/compliance/shared-responsibility-model/) décrit ce concept comme la sécurité *du* cloud et la sécurité *dans* le cloud :
+ **Sécurité du cloud** : AWS est chargée de protéger l'infrastructure qui exécute les AWS services dans le AWS cloud. AWS vous fournit également des services que vous pouvez utiliser en toute sécurité. Des auditeurs tiers testent et vérifient régulièrement l'efficacité de notre sécurité dans le cadre des programmes de [AWS conformité Programmes](https://aws.amazon.com/compliance/programs/) de de conformité. Pour en savoir plus sur les programmes de conformité qui s'appliquent à Amazon API Gateway, consultez la section [AWS services concernés par programme de conformité](https://aws.amazon.com/compliance/services-in-scope/) et .
+ **Sécurité dans le cloud** — Votre responsabilité est déterminée par le AWS service que vous utilisez. Vous êtes également responsable d’autres facteurs, y compris de la sensibilité de vos données, des exigences de votre entreprise, ainsi que de la législation et de la réglementation applicables. 

Cette documentation vous aide à comprendre comment appliquer le modèle de responsabilité partagée lorsque vous utilisez API Gateway. Les rubriques suivantes vous montrent comment configurer API Gateway pour répondre à vos objectifs de sécurité et de conformité. Vous apprendrez également à utiliser d'autres AWS services qui vous aident à surveiller et à sécuriser vos ressources API Gateway. 

Pour plus d'informations, veuillez consulter [Présentation de la sécurité dans Amazon API Gateway](https://d1.awsstatic.com/whitepapers/api-gateway-security.pdf).

**Topics**
+ [Protection des données dans Amazon API Gateway](data-protection.md)
+ [Identity and Access Management pour Amazon API Gateway](security-iam.md)
+ [Journalisation et surveillance dans Amazon API Gateway](security-monitoring.md)
+ [Validation de conformité pour Amazon API Gateway](compliance-validation.md)
+ [Résilience dans Amazon API Gateway](disaster-recovery-resiliency.md)
+ [Sécurité de l'infrastructure dans Amazon API Gateway](infrastructure-security.md)
+ [Analyse des vulnérabilités dans Amazon API Gateway](vulnerability-analysis.md)
+ [Bonnes pratiques de sécurité dans Amazon API Gateway](security-best-practices.md)

# Protection des données dans Amazon API Gateway
<a name="data-protection"></a>

Le [modèle de responsabilité partagée](https://aws.amazon.com/compliance/shared-responsibility-model/) AWS s'applique à la protection des données dans Amazon API Gateway. Comme décrit dans ce modèle, AWS est responsable de la protection de l'infrastructure globale sur laquelle l'ensemble de AWS Cloud s'exécute. La gestion du contrôle de votre contenu hébergé sur cette infrastructure relève de votre responsabilité. Vous êtes également responsable des tâches de configuration et de gestion de la sécurité des Services AWS que vous utilisez. Pour plus d’informations sur la confidentialité des données, consultez [Questions fréquentes (FAQ) sur la confidentialité des données](https://aws.amazon.com/compliance/data-privacy-faq/). Pour en savoir plus sur la protection des données en Europe, consultez le billet de blog Modèle de responsabilité partagée [AWS et RGPD (Règlement général sur la protection des données)](https://aws.amazon.com/blogs/security/the-aws-shared-responsibility-model-and-gdpr/) sur le *Blog de sécurité AWS*.

À des fins de protection des données, nous vous recommandons de protéger les informations d’identification Compte AWS et de configurer les comptes utilisateur individuels avec AWS IAM Identity Center ou Gestion des identités et des accès AWS (IAM). Ainsi, chaque utilisateur se voit attribuer uniquement les autorisations nécessaires pour exécuter ses tâches. Nous vous recommandons également de sécuriser vos données comme indiqué ci-dessous :
+ Utilisez l’authentification multifactorielle (MFA) avec chaque compte.
+ Utilisez les certificats SSL/TLS pour communiquer avec les ressources AWS. Nous exigeons TLS 1.2 et recommandons TLS 1.3.
+ Configurez une API (Interface de programmation) et la journalisation des activités des utilisateurs avec AWS CloudTrail. Pour plus d’informations sur l’utilisation des sentiers CloudTrail pour capturer des activités AWS, consultez la section [Utilisation des sentiers CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-trails.html) dans le *Guide de l’utilisateur AWS CloudTrail*.
+ Utilisez des solutions de chiffrement AWS, ainsi que tous les contrôles de sécurité par défaut au sein des Services AWS.
+ Utilisez des services de sécurité gérés avancés tels qu’Amazon Macie, qui contribuent à la découverte et à la sécurisation des données sensibles stockées dans Amazon S3.
+ Si vous avez besoin de modules de chiffrement validés FIPS (Federal Information Processing Standard) 140-3 lorsque vous accédez à AWS via une interface de ligne de commande ou une API (interface de programmation), utilisez un point de terminaison FIPS. Pour plus d’informations sur les points de terminaison FIPS disponibles, consultez [Norme FIPS (Federal Information Processing Standard) 140-3](https://aws.amazon.com/compliance/fips/).

Nous vous recommandons fortement de ne jamais placer d’informations confidentielles ou sensibles, telles que les adresses e-mail de vos clients, dans des balises ou des champs de texte libre tels que le champ **Nom**. Cela s'applique lorsque vous utilisez API Gateway ou d'autres Services AWS avec la console, l'API, l'AWS CLI ou les kits SDK AWS. Toutes les données que vous entrez dans des balises ou des champs de texte de forme libre utilisés pour les noms peuvent être utilisées à des fins de facturation ou dans les journaux de diagnostic. Si vous fournissez une adresse URL à un serveur externe, nous vous recommandons fortement de ne pas inclure d’informations d’identification dans l’adresse URL permettant de valider votre demande adressée à ce serveur.

# Chiffrement des données dans Amazon API Gateway
<a name="data-protection-encryption"></a>

La protection des données fait référence au fait de protéger les données pendant leur transit (lorsqu’elles sont transmises en direction ou en provenance d’API Gateway) et au repos (lorsqu’elles sont stockées dans AWS).

## Chiffrement des données au repos dans Amazon API Gateway
<a name="data-protection-at-rest"></a>

Si vous choisissez d’activer la mise en cache pour une API REST, vous pouvez activer le chiffrement du cache. Pour en savoir plus, consultez la section [Paramètres de cache pour REST APIs dans API Gateway](api-gateway-caching.md).

Pour en savoir plus sur la protection des données, consultez le billet de blog [Modèle de responsabilité partagée AWS et RGPD](https://aws.amazon.com/blogs/security/the-aws-shared-responsibility-model-and-gdpr/) sur le *Blog sur la sécurité d’AWS*.

### Chiffrement et déchiffrement de la clé privée de votre certificat
<a name="private-key"></a>

Lorsque vous créez un nom de domaine personnalisé pour des API privées, votre certificat ACM et votre clé privée sont chiffrés à l’aide d’une clé KMS gérée par AWS portant l’alias **aws/acm**. Vous pouvez afficher l’ID de clé portant cet alias dans la console AWS KMS sous **Clés gérées par AWS**.

API Gateway n’accède pas directement à vos ressources ACM. Il utilise AWS TLS Connection Manager pour sécuriser les clés privées de votre certificat et y accéder. Lorsque vous utilisez votre certificat ACM pour créer un nom de domaine personnalisé API Gateway pour des API privées, API Gateway associe votre certificat à AWS TLS Connection Manager. Pour cela, une autorisation est créée dans AWS KMS pour votre clé gérée par AWS avec le préfixe **aws/acm**. Une autorisation est un instrument de politique qui autorise TLS Connection Manager à utiliser des clés KMS dans les opérations de chiffrement. Elle permet au principal bénéficiaire (TLS Connection Manager) d’appeler les opérations d’autorisation spécifiées sur la clé KMS pour déchiffrer la clé privée de votre certificat. TLS Connection Manager utilise ensuite le certificat et la clé privée déchiffrée (texte brut) pour établir une connexion sécurisée (session SSL/TLS) avec les clients des services API Gateway. Lorsque le certificat est dissocié d’un nom de domaine personnalisé API Gateway pour les API privées, l’autorisation est supprimée.

Si vous souhaitez supprimer l’accès à la clé KMS, nous vous recommandons de remplacer ou de supprimer le certificat du service à l’aide de la AWS Management Console ou de la commande `update-service` de l’AWS CLI.

### Contexte de chiffrement pour API Gateway
<a name="encryption-context"></a>

Un [contexte de chiffrement](https://docs.aws.amazon.com/kms/latest/developerguide/encrypt_context.html) est un ensemble optionnel de paires clé-valeur contenant des informations contextuelles sur l’utilisation possible de vos clés privées. AWS KMS lie le contexte de chiffrement aux données chiffrées et l’utilise comme données authentifiées supplémentaires pour prendre en charge le chiffrement authentifié.

Lorsque vos clés TLS sont utilisées avec API Gateway et TLS Connection Manager, le nom de votre service API Gateway est inclus dans le contexte de chiffrement utilisé pour chiffrer votre clé au repos. Vous pouvez vérifier le nom de domaine personnalisé API Gateway pour lequel votre certificat et votre clé privée sont utilisés en consultant le contexte de chiffrement dans vos journaux CloudTrail, comme indiqué dans la section suivante, ou en consultant l’onglet **Ressources associées** de la console ACM.

Pour déchiffrer des données, le même contexte de chiffrement est inclus dans la demande. API Gateway utilise le même contexte de chiffrement dans toutes les opérations cryptographiques AWS KMS, où la clé est `aws:apigateway:arn` et la valeur est l’Amazon Resource Name (ARN) de la ressource `PrivateDomainName` d’API Gateway.

L’exemple suivant présente le contexte de chiffrement dans la sortie d’une opération telle que `CreateGrant`.

```
"constraints": {
"encryptionContextEquals": {
"aws:acm:arn": "arn:aws:acm:us-west-2:859412291086:certificate/9177097a-f0ae-4be1-93b1-19f911ea4f88",
"aws:apigateway:arn": "arn:aws:apigateway:us-west-2:859412291086:/domainnames/denytest-part1.pdx.sahig.people.aws.dev+cbaeumzjhg"
}
},
"operations": [
"Decrypt"
],
"granteePrincipal": "tlsconnectionmanager.amazonaws.com"
```

## Chiffrement des données en transit dans Amazon API Gateway
<a name="data-protection-in-transit"></a>

Les API créées avec Amazon API Gateway présentent uniquement des points de terminaison HTTPS. API Gateway ne prend pas en charge les points de terminaison non chiffrés (HTTP).

API Gateway gère les certificats pour les points de terminaison `execute-api` par défaut. Si vous configurez un nom de domaine personnalisé, [vous spécifiez le certificat correspondant](how-to-custom-domains.md#custom-domain-names-certificates). La meilleure pratique consiste à ne pas [épingler les certificats](https://docs.aws.amazon.com/acm/latest/userguide/troubleshooting-pinning.html).

Pour plus de sécurité, vous pouvez choisir une version de protocole TLS (Transport Layer Security) minimale à appliquer pour votre domaine personnalisé API Gateway. Les API WebSocket et les API HTTP ne prennent en charge que TLS 1.2. Pour en savoir plus, consultez la section [Choisissez une politique de sécurité pour votre domaine personnalisé dans API Gateway](apigateway-custom-domain-tls-version.md).

Vous pouvez également configurer une distribution Amazon CloudFront avec un certificat SSL personnalisé dans votre compte et l’utiliser avec des API régionales. Vous pouvez ensuite configurer la politique de sécurité pour la distribution CloudFront avec TLS 1.1 ou supérieur, en fonction de vos exigences de sécurité et de conformité.

Pour plus d’informations sur la protection des données, consultez [Protégez votre REST APIs dans API Gateway](rest-api-protect.md) et la publication de blog [Responsabilité partagée AWS et RGPD](https://aws.amazon.com/blogs/security/the-aws-shared-responsibility-model-and-gdpr/) sur le *Blog de sécurité AWS*.

# Confidentialité du trafic inter-réseau
<a name="security-traffic-privacy"></a>

À l'aide d'Amazon API Gateway, vous pouvez créer des API REST privées accessibles uniquement à partir de votre Amazon Virtual Private Cloud (VPC). Le VPC utilise un [point de terminaison VPC d'interface](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html), qui est une interface réseau de terminaison que vous créez dans votre VPC. À l'aide des [stratégies de ressources](apigateway-private-api-create.md#apigateway-private-api-set-up-resource-policy), vous pouvez accorder ou refuser l'accès à votre API depuis des VPC et points de terminaison de VPC sélectionnés, y compris entre plusieurs comptes AWS. Chaque point de terminaison peut être utilisé pour accéder à plusieurs API privées. Vous pouvez également utiliser Direct Connect pour établir une connexion à partir d'un réseau sur site à Amazon VPC et pour accéder à votre API privée avec cette connexion. Dans tous les cas, le trafic vers votre API privée utilise des connexions sécurisées et ne quitte pas le réseau Amazon : il est isolé de l'Internet public. Pour en savoir plus, consultez la section [REST privé APIs dans API Gateway](apigateway-private-apis.md).

# Identity and Access Management pour Amazon API Gateway
<a name="security-iam"></a>

Gestion des identités et des accès AWS (IAM) est un outil Service AWS qui permet à un administrateur de contrôler en toute sécurité l'accès aux AWS ressources. Des administrateurs IAM contrôlent les personnes qui *s'authentifient* (sont connectées) et *sont autorisées* (disposent d'autorisations) à utiliser des ressources API Gateway. IAM est un Service AWS outil que vous pouvez utiliser sans frais supplémentaires.

**Topics**
+ [Public ciblé](#security_iam_audience)
+ [Authentification par des identités](#security_iam_authentication)
+ [Gestion de l’accès à l’aide de politiques](#security_iam_access-manage)
+ [Fonctionnement d'Amazon API Gateway avec IAM](security_iam_service-with-iam.md)
+ [Exemples de stratégie basée sur l'identité d'Amazon API Gateway](security_iam_id-based-policy-examples.md)
+ [Exemples de politique basée sur les ressources d'Amazon API Gateway](security_iam_resource-based-policy-examples.md)
+ [Résolution des problèmes d'identité et d'accès à Amazon API Gateway](security_iam_troubleshoot.md)
+ [Utilisation de rôles liés à un service pour API Gateway](using-service-linked-roles.md)

## Public ciblé
<a name="security_iam_audience"></a>

La façon dont vous utilisez Gestion des identités et des accès AWS (IAM) varie en fonction de votre rôle :
+ **Utilisateur du service** : demandez des autorisations à votre administrateur si vous ne pouvez pas accéder aux fonctionnalités (voir [Résolution des problèmes d'identité et d'accès à Amazon API Gateway](security_iam_troubleshoot.md))
+ **Administrateur du service** : déterminez l’accès des utilisateurs et soumettez les demandes d’autorisation (voir [Fonctionnement d'Amazon API Gateway avec IAM](security_iam_service-with-iam.md))
+ **Administrateur IAM** : rédigez des politiques pour gérer l’accès (voir [Exemples de stratégie basée sur l'identité d'Amazon API Gateway](security_iam_id-based-policy-examples.md))

## Authentification par des identités
<a name="security_iam_authentication"></a>

L'authentification est la façon dont vous vous connectez à AWS l'aide de vos informations d'identification. Vous devez être authentifié en tant qu'utilisateur IAM ou en assumant un rôle IAM. Utilisateur racine d'un compte AWS

Vous pouvez vous connecter en tant qu'identité fédérée à l'aide d'informations d'identification provenant d'une source d'identité telle que AWS IAM Identity Center (IAM Identity Center), d'une authentification unique ou d'informations d'identification. Google/Facebook Pour plus d’informations sur la connexion, consultez [Connexion à votre Compte AWS](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html) dans le *Guide de l’utilisateur Connexion à AWS *.

Pour l'accès par programmation, AWS fournit un SDK et une CLI pour signer les demandes de manière cryptographique. Pour plus d’informations, consultez [Signature AWS Version 4 pour les demandes d’API](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html) dans le *Guide de l’utilisateur IAM*.

### Compte AWS utilisateur root
<a name="security_iam_authentication-rootuser"></a>

 Lorsque vous créez un Compte AWS, vous commencez par une seule identité de connexion appelée *utilisateur Compte AWS root* qui dispose d'un accès complet à toutes Services AWS les ressources. Il est vivement déconseillé d’utiliser l’utilisateur racine pour vos tâches quotidiennes. Pour les tâches qui requièrent des informations d’identification de l’utilisateur racine, consultez [Tâches qui requièrent les informations d’identification de l’utilisateur racine](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks) dans le *Guide de l’utilisateur IAM*. 

### Utilisateurs et groupes IAM
<a name="security_iam_authentication-iamuser"></a>

Un *[utilisateur IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)* est une identité qui dispose d’autorisations spécifiques pour une seule personne ou application. Nous vous recommandons d’utiliser ces informations d’identification temporaires au lieu des utilisateurs IAM avec des informations d’identification à long terme. Pour plus d'informations, voir [Exiger des utilisateurs humains qu'ils utilisent la fédération avec un fournisseur d'identité pour accéder à AWS l'aide d'informations d'identification temporaires](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp) dans le *guide de l'utilisateur IAM*.

[https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html) spécifient une collection d’utilisateurs IAM et permettent de gérer plus facilement les autorisations pour de grands ensembles d’utilisateurs. Pour plus d’informations, consultez [Cas d’utilisation pour les utilisateurs IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/gs-identities-iam-users.html) dans le *Guide de l’utilisateur IAM*.

### Rôles IAM
<a name="security_iam_authentication-iamrole"></a>

Un *[rôle IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)* est une identité dotée d’autorisations spécifiques qui fournit des informations d’identification temporaires. Vous pouvez assumer un rôle en [passant d'un rôle d'utilisateur à un rôle IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html) ou en appelant une opération d' AWS API AWS CLI ou d'API. Pour plus d’informations, consultez [Méthodes pour endosser un rôle](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html) dans le *Guide de l’utilisateur IAM*.

Les rôles IAM sont utiles pour l’accès des utilisateurs fédérés, les autorisations temporaires des utilisateurs IAM, les accès intercompte, les accès entre services et les applications exécutées sur Amazon EC2. Pour plus d’informations, consultez [Accès intercompte aux ressources dans IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) dans le *Guide de l’utilisateur IAM*.

## Gestion de l’accès à l’aide de politiques
<a name="security_iam_access-manage"></a>

Vous contrôlez l'accès en AWS créant des politiques et en les associant à AWS des identités ou à des ressources. Une politique définit les autorisations lorsqu'elles sont associées à une identité ou à une ressource. AWS évalue ces politiques lorsqu'un directeur fait une demande. La plupart des politiques sont stockées AWS sous forme de documents JSON. Pour plus d’informations les documents de politique JSON, consultez [Vue d’ensemble des politiques JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json) dans le *Guide de l’utilisateur IAM*.

À l’aide de politiques, les administrateurs précisent qui a accès à quoi en définissant quel **principal** peut effectuer des **actions** sur quelles **ressources** et dans quelles **conditions**.

Par défaut, les utilisateurs et les rôles ne disposent d’aucune autorisation. Un administrateur IAM crée des politiques IAM et les ajoute aux rôles, que les utilisateurs peuvent ensuite assumer. Les politiques IAM définissent les autorisations quelle que soit la méthode que vous utilisez pour exécuter l’opération.

### Politiques basées sur l’identité
<a name="security_iam_access-manage-id-based-policies"></a>

Les stratégies basées sur l’identité sont des documents de stratégie d’autorisations JSON que vous attachez à une identité (utilisateur, groupe ou rôle). Ces politiques contrôlent les actions que peuvent exécuter ces identités, sur quelles ressources et dans quelles conditions. Pour découvrir comment créer une politique basée sur l’identité, consultez [Définition d’autorisations IAM personnalisées avec des politiques gérées par le client](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) dans le *Guide de l’utilisateur IAM*.

Les politiques basées sur l’identité peuvent être des *politiques intégrées* (intégrées directement dans une seule identité) ou des *politiques gérées (politiques* autonomes associées à plusieurs identités). Pour découvrir comment choisir entre des politiques gérées et en ligne, consultez [Choix entre les politiques gérées et les politiques en ligne](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-choosing-managed-or-inline.html) dans le *Guide de l’utilisateur IAM*.

### Politiques basées sur les ressources
<a name="security_iam_access-manage-resource-based-policies"></a>

Les politiques basées sur les ressources sont des documents de politique JSON que vous attachez à une ressource. Les exemples incluent *les politiques de confiance de rôle* IAM et les *stratégies de compartiment* Amazon S3. Dans les services qui sont compatibles avec les politiques basées sur les ressources, les administrateurs de service peuvent les utiliser pour contrôler l’accès à une ressource spécifique. Vous devez [spécifier un principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html) dans une politique basée sur les ressources.

Les politiques basées sur les ressources sont des politiques en ligne situées dans ce service. Vous ne pouvez pas utiliser les politiques AWS gérées par IAM dans une stratégie basée sur les ressources.

### Listes de contrôle d'accès (ACLs)
<a name="security_iam_access-manage-acl"></a>

Les listes de contrôle d'accès (ACLs) contrôlent les principaux (membres du compte, utilisateurs ou rôles) autorisés à accéder à une ressource. ACLs sont similaires aux politiques basées sur les ressources, bien qu'elles n'utilisent pas le format de document de politique JSON.

Amazon S3 et AWS WAF Amazon VPC sont des exemples de services compatibles. ACLs Pour en savoir plus ACLs, consultez la [présentation de la liste de contrôle d'accès (ACL)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html) dans le *guide du développeur Amazon Simple Storage Service*.

### Autres types de politique
<a name="security_iam_access-manage-other-policies"></a>

AWS prend en charge des types de politiques supplémentaires qui peuvent définir les autorisations maximales accordées par les types de politiques les plus courants :
+ **Limites d’autorisations** : une limite des autorisations définit le nombre maximum d’autorisations qu’une politique basée sur l’identité peut accorder à une entité IAM. Pour plus d’informations, consultez [Limites d’autorisations pour des entités IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html) dans le *Guide de l’utilisateur IAM*.
+ **Politiques de contrôle des services (SCPs)** — Spécifiez les autorisations maximales pour une organisation ou une unité organisationnelle dans AWS Organizations. Pour plus d’informations, consultez [Politiques de contrôle de service](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html) dans le *Guide de l’utilisateur AWS Organizations *.
+ **Politiques de contrôle des ressources (RCPs)** : définissez le maximum d'autorisations disponibles pour les ressources de vos comptes. Pour plus d'informations, voir [Politiques de contrôle des ressources (RCPs)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html) dans le *guide de AWS Organizations l'utilisateur*.
+ **Politiques de session** : politiques avancées que vous passez en tant que paramètre lorsque vous créez par programmation une session temporaire pour un rôle ou un utilisateur fédéré. Pour plus d’informations, consultez [Politiques de session](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session) dans le *Guide de l’utilisateur IAM*.

### Plusieurs types de politique
<a name="security_iam_access-manage-multiple-policies"></a>

Lorsque plusieurs types de politiques s’appliquent à la requête, les autorisations en résultant sont plus compliquées à comprendre. Pour savoir comment AWS déterminer s'il faut autoriser une demande lorsque plusieurs types de politiques sont impliqués, consultez la section [Logique d'évaluation des politiques](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html) dans le *guide de l'utilisateur IAM*.

# Fonctionnement d'Amazon API Gateway avec IAM
<a name="security_iam_service-with-iam"></a>

Avant d'utiliser IAM pour gérer l'accès à API Gateway, vous devez comprendre les fonctions IAM disponibles avec API Gateway. Pour obtenir une vue d'ensemble du fonctionnement d'API Gateway et des autres AWS services avec IAM, consultez la section [AWS Services That Work with IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) dans le guide de l'utilisateur d'*IAM*.

**Topics**
+ [Stratégies basées sur l'identité d'API Gateway](#security_iam_service-with-iam-id-based-policies)
+ [Stratégies basées sur les ressources API Gateway](#security_iam_service-with-iam-resource-based-policies)
+ [Autorisation basée sur les balises API Gateway](#security_iam_service-with-iam-tags)
+ [Rôles IAM API Gateway](#security_iam_service-with-iam-roles)

## Stratégies basées sur l'identité d'API Gateway
<a name="security_iam_service-with-iam-id-based-policies"></a>

Avec les stratégies IAM basées sur l'identité, vous pouvez spécifier quelles actions et ressources sont autorisées ou refusées, ainsi que les conditions dans lesquelles elles le sont. API Gateway prend en charge des actions, ressources et clés de condition spécifiques. Pour plus d'informations sur les actions, ressources et clés de condition spécifiques à API Gateway, consultez[Actions, ressources et clés de condition pour Amazon API Gateway Management](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonapigatewaymanagement.html)et[Actions, ressources et clés de condition pour Amazon API Gateway Management V2](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonapigatewaymanagementv2.html). Pour plus d'informations sur tous les éléments que vous utilisez dans une stratégie JSON, consultez [Références des éléments de stratégie JSON IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) dans le *Guide de l'utilisateur IAM*.

L'exemple suivant montre une politique basée sur l'identité qui permet à un utilisateur de créer ou de mettre à jour uniquement un REST privé. APIs Pour obtenir plus d’exemples, consultez [Exemples de stratégie basée sur l'identité d'Amazon API Gateway](security_iam_id-based-policy-examples.md).

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "ScopeToPrivateApis",
      "Effect": "Allow",
      "Action": [
        "apigateway:PATCH",
        "apigateway:POST",
        "apigateway:PUT"
      ],
      "Resource": [
        "arn:aws:apigateway:us-east-1::/restapis",
        "arn:aws:apigateway:us-east-1::/restapis/??????????"
      ],
      "Condition": {
        "ForAllValues:StringEqualsIfExists": {
          "apigateway:Request/EndpointType": "PRIVATE",
          "apigateway:Resource/EndpointType": "PRIVATE"
        }
      }
    },
    {
      "Sid": "AllowResourcePolicyUpdates",
      "Effect": "Allow",
      "Action": [
          "apigateway:UpdateRestApiPolicy"
      ],
      "Resource": [
          "arn:aws:apigateway:us-east-1::/restapis/*"
      ]
    }
  ]
}
```

------

### Actions
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

L'élément `Action` d'une stratégie JSON décrit les actions que vous pouvez utiliser pour autoriser ou refuser l'accès à une stratégie.

Les actions de stratégie dans API Gateway utilisent le préfixe suivant avant l'action : `apigateway:`. Les déclarations de stratégie doivent inclure un élément `Action` ou `NotAction`. API Gateway définit son propre ensemble d'actions qui décrivent les tâches que vous pouvez effectuer avec ce service.



Le format `apigateway:action` de l'`Action`expression de gestion des API *action* est l'une des actions API Gateway suivantes : **GET**, **POST**, PUT, **DELETE**, **PATCH** (pour **mettre** à jour les ressources) ou **\$1**, qui correspond à toutes les actions précédentes.

Voici quelques exemples d'expression `Action` :
+ **apigateway:\$1** pour toutes les actions API Gateway.
+ **apigateway:GET** pour l'action GET uniquement dans API Gateway.

Pour spécifier plusieurs actions dans une seule déclaration, séparez-les par des virgules comme suit :

```
"Action": [
      "apigateway:action1",
      "apigateway:action2"
```

Pour plus d'informations sur les verbes HTTP à utiliser pour des opérations spécifiques d'API Gateway, consultez la [référence d'API (REST APIs) d'Amazon API Gateway version 1](https://docs.aws.amazon.com/apigateway/api-reference/) et la [référence d'API Amazon API Gateway version 2](https://docs.aws.amazon.com/apigatewayv2/latest/api-reference/api-reference.html) (WebSocket et HTTP APIs).

Pour de plus amples informations, veuillez consulter [Exemples de stratégie basée sur l'identité d'Amazon API Gateway](security_iam_id-based-policy-examples.md).

### Ressources
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

Les administrateurs peuvent utiliser les politiques AWS JSON pour spécifier qui a accès à quoi. C’est-à-dire, quel **principal** peut effectuer **des actions** sur quelles **ressources** et dans quelles **conditions**.

L’élément de politique JSON `Resource` indique le ou les objets auxquels l’action s’applique. Il est recommandé de définir une ressource à l’aide de son [Amazon Resource Name (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html). Pour les actions qui ne sont pas compatibles avec les autorisations de niveau ressource, utilisez un caractère générique (\$1) afin d’indiquer que l’instruction s’applique à toutes les ressources.

```
"Resource": "*"
```



Les ressources API Gateway sont au format ARN suivant :

```
arn:aws:apigateway:region::resource-path-specifier
```

Par exemple, pour spécifier une API REST avec l'ID *`api-id`* et ses sous-ressources, telles que les autorisations dans votre instruction, utilisez l'ARN suivant :

```
"Resource": "arn:aws:apigateway:us-east-2::/restapis/api-id/*"
```

Pour spécifier toutes les ressources REST APIs et les sous-ressources appartenant à un compte spécifique, utilisez le caractère générique (\$1) :

```
"Resource": "arn:aws:apigateway:us-east-2::/restapis/*"
```

Pour obtenir une liste des types de ressources API Gateway et de leurs ARNs caractéristiques, consultez[Référence Amazon Resource Name (ARN) API Gateway](arn-format-reference.md). 

### Clés de condition
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

Les administrateurs peuvent utiliser les politiques AWS JSON pour spécifier qui a accès à quoi. C’est-à-dire, quel **principal** peut effectuer **des actions** sur quelles **ressources** et dans quelles **conditions**.

L’élément `Condition` indique à quel moment les instructions s’exécutent en fonction de critères définis. Vous pouvez créer des expressions conditionnelles qui utilisent des [opérateurs de condition](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html), tels que les signes égal ou inférieur à, pour faire correspondre la condition de la politique aux valeurs de la demande. Pour voir toutes les clés de condition AWS globales, voir les clés de [contexte de condition AWS globales](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) dans le *guide de l'utilisateur IAM*.

API Gateway définit son propre ensemble de clés de condition et prend également en charge l'utilisation des clés de condition globales. Pour accéder à la liste des clés de condition API Gateway, consultez [Clés de condition pour Amazon API Gateway](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_manageamazonapigateway.html#manageamazonapigateway-policy-keys) dans le *Guide de l'utilisateur IAM*. Pour savoir avec quelles actions et ressources vous pouvez utiliser une clé de condition, consultez [Actions définies par Amazon API Gateway](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_manageamazonapigateway.html#amazonapigateway-actions-as-permissions).

Pour plus d'informations sur l’étiquette, y compris le contrôle d'accès basé sur les attributs, consultez [Ajout de balises à vos ressources API Gateway](apigateway-tagging.md).

### Exemples
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>



Pour accéder à des exemples de stratégies API Gateway basées sur l'identité, consultez [Exemples de stratégie basée sur l'identité d'Amazon API Gateway](security_iam_id-based-policy-examples.md).

## Stratégies basées sur les ressources API Gateway
<a name="security_iam_service-with-iam-resource-based-policies"></a>

Les stratégies basées sur les ressources sont des documents de stratégie JSON précisant les actions qu'un principal indiqué peut effectuer sur la ressource API Gateway et dans quelles conditions. API Gateway prend en charge les politiques d'autorisation basées sur les ressources pour REST. APIs Vous pouvez utiliser des stratégies de ressources pour déterminer qui peut appeler une API REST. Pour de plus amples informations, veuillez consulter [Contrôle d’accès à une API REST avec des politiques de ressources API Gateway](apigateway-resource-policies.md). 

### Exemples
<a name="security_iam_service-with-iam-resource-based-policies-examples"></a>

Pour accéder à des exemples de stratégies API Gateway basées sur les ressources, consultez [Exemples de politiques de ressources API Gateway](apigateway-resource-policies-examples.md).

## Autorisation basée sur les balises API Gateway
<a name="security_iam_service-with-iam-tags"></a>

Vous pouvez attacher des balises aux ressources API Gateway ou transmettre des balises dans une requête à API Gateway. Pour contrôler l'accès basé sur des balises, vous devez fournir les informations des balises dans [l'élément de condition](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) d'une stratégie en utilisant les clés de condition `apigateway:ResourceTag/key-name`, `aws:RequestTag/key-name` ou `aws:TagKeys`. Pour de plus amples informations sur le balisage des ressources API Gateway, veuillez consulter [Utilisation de balises pour contrôler l’accès aux ressources API REST API Gateway](apigateway-tagging-iam-policy.md).

Pour accéder à des exemples de stratégies basées sur l'identité permettant de limiter l'accès à une ressource en fonction des balises de cette ressource, consultez [Utilisation de balises pour contrôler l’accès aux ressources API REST API Gateway](apigateway-tagging-iam-policy.md).

## Rôles IAM API Gateway
<a name="security_iam_service-with-iam-roles"></a>

Un [rôle IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) est une entité de votre AWS compte qui possède des autorisations spécifiques.

### Utilisation des informations d'identification temporaires avec API Gateway
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

Vous pouvez utiliser des informations d'identification temporaires pour vous connecter à l’aide de la fédération, endosser un rôle IAM ou encore pour endosser un rôle entre comptes. Vous obtenez des informations d'identification de sécurité temporaires en appelant des opérations d' AWS STS API telles que [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)ou [GetFederationToken](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetFederationToken.html). 

API Gateway prend en charge l'utilisation des informations d'identification temporaires. 

### Rôles liés à un service
<a name="security_iam_service-with-iam-roles-service-linked"></a>

Les [rôles liés aux](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role) AWS services permettent aux services d'accéder aux ressources d'autres services pour effectuer une action en votre nom. Les rôles liés à un service s’affichent dans votre compte IAM et sont la propriété du service. Un administrateur IAM peut consulter, mais ne peut pas modifier, les autorisations concernant les rôles liés à un service.

API Gateway prend en charge les rôles liés au service. Pour plus d'informations sur la création ou la gestion des rôles liés à un service API Gateway, consultez [Utilisation de rôles liés à un service pour API Gateway](using-service-linked-roles.md).

### Rôles de service
<a name="security_iam_service-with-iam-roles-service"></a>

Un service peut endosser un [rôle de service](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-role) en votre nom. Un rôle de service autorise le service à accéder à des ressources d'autres services pour effectuer une action en votre nom. Sachant que les fonctions du service apparaissent dans votre compte IAM et qu'elles sont la propriété du compte, un administrateur peut modifier les autorisations associées à ce rôle. Toutefois, une telle action peut perturber le bon fonctionnement du service.

API Gateway prend en charge les rôles de service. 

# Exemples de stratégie basée sur l'identité d'Amazon API Gateway
<a name="security_iam_id-based-policy-examples"></a>

Par défaut, les utilisateurs et rôles IAM ne sont pas autorisés à créer ou modifier les ressources API Gateway. Ils ne peuvent pas non plus effectuer de tâches à l'aide du AWS Management Console AWS CLI, ou AWS SDKs. Un administrateur IAM doit créer des politiques IAM autorisant les utilisateurs et les rôles à exécuter des opérations d'API spécifiques sur les ressources spécifiées dont ils ont besoin. Il doit ensuite attacher ces stratégies aux utilisateurs ou aux groupes IAM ayant besoin de ces autorisations.

Pour plus d'informations sur la création de stratégies IAM, consultez la section [Création de stratégies sous l'onglet JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-json-editor) du *Guide de l'utilisateur IAM*. Pour plus d'informations sur les actions, les ressources et les conditions spécifiques à API Gateway, voir [Actions, ressources et clés de condition pour Amazon API Gateway Management](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonapigatewaymanagement.html) et [Actions, ressources et clés de condition pour Amazon API Gateway Management V2](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonapigatewaymanagementv2.html).

**Topics**
+ [Bonnes pratiques en matière de politiques](#security_iam_service-with-iam-policy-best-practices)
+ [Autorisation accordée aux utilisateurs pour afficher leurs propres autorisations](#security_iam_id-based-policy-examples-view-own-permissions)
+ [Autorisations de lecture simple](#api-gateway-policy-example-apigateway-general)
+ [Créer uniquement des mécanismes d'autorisation REQUEST ou JWT](#security_iam_id-based-policy-examples-v2-import)
+ [Exiger que le point de terminaison `execute-api` par défaut soit désactivé](#security_iam_id-based-policy-examples-v2-endpoint-status)
+ [Permettre aux utilisateurs de créer ou de mettre à jour uniquement un REST privé APIs](#security_iam_id-based-policy-examples-private-api)
+ [Exiger que les routes d'API disposent d'une autorisation](#security_iam_id-based-policy-examples-require-authorization)
+ [Empêcher un utilisateur de créer ou de mettre à jour un lien VPC](#security_iam_id-based-policy-examples-deny-vpc-link)
+ [Exemples de politiques d’utilisation des règles de routage](#security_iam_id-based-policy-examples-routing-mode)

## Bonnes pratiques en matière de politiques
<a name="security_iam_service-with-iam-policy-best-practices"></a>

Les stratégies basées sur l'identité déterminent si une personne peut créer, consulter ou supprimer des ressources API Gateway dans votre compte. Ces actions peuvent entraîner des frais pour votre Compte AWS. Lorsque vous créez ou modifiez des politiques basées sur l’identité, suivez ces instructions et recommandations :
+ **Commencez AWS par les politiques gérées et passez aux autorisations du moindre privilège : pour commencer à accorder des autorisations** à vos utilisateurs et à vos charges de travail, utilisez les *politiques AWS gérées* qui accordent des autorisations pour de nombreux cas d'utilisation courants. Ils sont disponibles dans votre Compte AWS. Nous vous recommandons de réduire davantage les autorisations en définissant des politiques gérées par les AWS clients spécifiques à vos cas d'utilisation. Pour plus d’informations, consultez [politiques gérées par AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) ou [politiques gérées par AWS pour les activités professionnelles](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) dans le *Guide de l’utilisateur IAM*.
+ **Accordez les autorisations de moindre privilège** : lorsque vous définissez des autorisations avec des politiques IAM, accordez uniquement les autorisations nécessaires à l’exécution d’une seule tâche. Pour ce faire, vous définissez les actions qui peuvent être entreprises sur des ressources spécifiques dans des conditions spécifiques, également appelées *autorisations de moindre privilège*. Pour plus d’informations sur l’utilisation d’IAM pour appliquer des autorisations, consultez [politiques et autorisations dans IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) dans le *Guide de l’utilisateur IAM*.
+ **Utilisez des conditions dans les politiques IAM pour restreindre davantage l’accès** : vous pouvez ajouter une condition à vos politiques afin de limiter l’accès aux actions et aux ressources. Par exemple, vous pouvez écrire une condition de politique pour spécifier que toutes les demandes doivent être envoyées via SSL. Vous pouvez également utiliser des conditions pour accorder l'accès aux actions de service si elles sont utilisées par le biais d'un service spécifique Service AWS, tel que CloudFormation. Pour plus d’informations, consultez [Conditions pour éléments de politique JSON IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) dans le *Guide de l’utilisateur IAM*.
+ **Utilisez l’Analyseur d’accès IAM pour valider vos politiques IAM afin de garantir des autorisations sécurisées et fonctionnelles** : l’Analyseur d’accès IAM valide les politiques nouvelles et existantes de manière à ce que les politiques IAM respectent le langage de politique IAM (JSON) et les bonnes pratiques IAM. IAM Access Analyzer fournit plus de 100 vérifications de politiques et des recommandations exploitables pour vous aider à créer des politiques sécurisées et fonctionnelles. Pour plus d’informations, consultez [Validation de politiques avec IAM Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) dans le *Guide de l’utilisateur IAM*.
+ **Exiger l'authentification multifactorielle (MFA**) : si vous avez un scénario qui nécessite des utilisateurs IAM ou un utilisateur root, activez l'authentification MFA pour une sécurité accrue. Compte AWS Pour exiger la MFA lorsque des opérations d’API sont appelées, ajoutez des conditions MFA à vos politiques. Pour plus d’informations, consultez [Sécurisation de l’accès aux API avec MFA](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) dans le *Guide de l’utilisateur IAM*.

Pour plus d’informations sur les bonnes pratiques dans IAM, consultez [Bonnes pratiques de sécurité dans IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) dans le *Guide de l’utilisateur IAM*.

## Autorisation accordée aux utilisateurs pour afficher leurs propres autorisations
<a name="security_iam_id-based-policy-examples-view-own-permissions"></a>

Cet exemple montre comment créer une politique qui permet aux utilisateurs IAM d’afficher les politiques en ligne et gérées attachées à leur identité d’utilisateur. Cette politique inclut les autorisations permettant d'effectuer cette action sur la console ou par programmation à l'aide de l'API AWS CLI or AWS .

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ViewOwnUserInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetUserPolicy",
                "iam:ListGroupsForUser",
                "iam:ListAttachedUserPolicies",
                "iam:ListUserPolicies",
                "iam:GetUser"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        },
        {
            "Sid": "NavigateInConsole",
            "Effect": "Allow",
            "Action": [
                "iam:GetGroupPolicy",
                "iam:GetPolicyVersion",
                "iam:GetPolicy",
                "iam:ListAttachedGroupPolicies",
                "iam:ListGroupPolicies",
                "iam:ListPolicyVersions",
                "iam:ListPolicies",
                "iam:ListUsers"
            ],
            "Resource": "*"
        }
    ]
}
```

## Autorisations de lecture simple
<a name="api-gateway-policy-example-apigateway-general"></a>

Cet exemple de politique autorise un utilisateur à obtenir des informations sur toutes les ressources d'un HTTP ou d'une WebSocket API dont l'identifiant est `a123456789` in the AWS Region of us-east-1. La ressource `arn:aws:apigateway:us-east-1::/apis/a123456789/*` inclut toutes les sous-ressources de l'API, comme les mécanismes d'autorisation et les déploiements.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "apigateway:GET"
      ],
      "Resource": [
        "arn:aws:apigateway:us-east-1::/apis/a123456789/*"
      ]
    }
  ]
}
```

------

## Créer uniquement des mécanismes d'autorisation REQUEST ou JWT
<a name="security_iam_id-based-policy-examples-v2-import"></a>

Cet exemple de politique permet à un utilisateur de créer uniquement APIs avec `REQUEST` ou avec `JWT` des autorisateurs, y compris par [importation](https://docs.aws.amazon.com/apigatewayv2/latest/api-reference/apis.html#ImportApi). Dans la section `Resource` de la stratégie, `arn:aws:apigateway:us-east-1::/apis/??????????` exige que les ressources comportent un maximum de 10 caractères, ce qui exclut les sous-ressources d'une API. Cet exemple utilise `ForAllValues` dans la section `Condition` car les utilisateurs peuvent créer plusieurs mécanismes d'autorisation à la fois en important une API.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "OnlyAllowSomeAuthorizerTypes",
      "Effect": "Allow",
      "Action": [
        "apigateway:PUT",
        "apigateway:POST",
        "apigateway:PATCH"
      ],
      "Resource": [
        "arn:aws:apigateway:us-east-1::/apis",
        "arn:aws:apigateway:us-east-1::/apis/??????????",
        "arn:aws:apigateway:us-east-1::/apis/*/authorizers",
        "arn:aws:apigateway:us-east-1::/apis/*/authorizers/*"
      ],
      "Condition": {
        "ForAllValues:StringEqualsIfExists": {
          "apigateway:Request/AuthorizerType": [
            "REQUEST",
            "JWT"
          ]
        }
      }
    }
  ]
}
```

------

## Exiger que le point de terminaison `execute-api` par défaut soit désactivé
<a name="security_iam_id-based-policy-examples-v2-endpoint-status"></a>

 Cet exemple de stratégie permet aux utilisateurs de créer, de mettre à jour ou d'importer une API, avec l'exigence que `DisableExecuteApiEndpoint` soit `true`. Lorsque `DisableExecuteApiEndpoint` est `true`, les clients ne peuvent pas utiliser le point de terminaison `execute-api` par défaut pour appeler une API.

Nous utilisons la condition `BoolIfExists` pour gérer un appel visant à mettre à jour une API pour laquelle la clé de condition `DisableExecuteApiEndpoint` n'est pas renseignée. Lorsqu'un utilisateur tente de créer ou d'importer une API, la clé de condition `DisableExecuteApiEndpoint` est toujours renseignée.

Comme la `apis/*` ressource capture également des sous-ressources telles que les autorisateurs ou les méthodes, nous la définissons explicitement à l' APIs aide d'une simple `Deny` instruction.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "DisableExecuteApiEndpoint",
      "Effect": "Allow",
      "Action": [
        "apigateway:PATCH",
        "apigateway:POST",
        "apigateway:PUT"
      ],
      "Resource": [
        "arn:aws:apigateway:us-east-1::/apis",
        "arn:aws:apigateway:us-east-1::/apis/*"
      ],
      "Condition": {
        "BoolIfExists": {
          "apigateway:Request/DisableExecuteApiEndpoint": true
        }
      }
    },
    {
      "Sid": "ScopeDownToJustApis",
      "Effect": "Deny",
      "Action": [
        "apigateway:PATCH",
        "apigateway:POST",
        "apigateway:PUT"
      ],
      "Resource": [
        "arn:aws:apigateway:us-east-1::/apis/*/*"
      ]
    }
  ]
}
```

------

## Permettre aux utilisateurs de créer ou de mettre à jour uniquement un REST privé APIs
<a name="security_iam_id-based-policy-examples-private-api"></a>

Cet exemple de politique utilise des clés de condition pour obliger un utilisateur à créer uniquement `PRIVATE` APIs et pour empêcher les mises à jour susceptibles de modifier le type `PRIVATE` d'une API, par exemple`REGIONAL`.

Nous utilisons `ForAllValues` pour exiger que chaque `EndpointType` ajouté à une API soit `PRIVATE`. Nous utilisons une clé de condition de ressource pour autoriser toute mise à jour d'une API à condition qu'elle soit de type `PRIVATE`. `ForAllValues` s’applique uniquement si une clé de condition est présente. 

Nous utilisons le matcher (`?`), qui n'est pas gourmand, pour établir une correspondance explicite avec l'API afin d'empêcher l'autorisation de ressources non IDs liées à l'API, telles que les autorisateurs.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ScopePutToPrivateApis",
            "Effect": "Allow",
            "Action": [
                "apigateway:PUT"
            ],
            "Resource": [
                "arn:aws:apigateway:us-east-1::/restapis",
                "arn:aws:apigateway:us-east-1::/restapis/??????????"
            ],
            "Condition": {
                "ForAllValues:StringEquals": {
                    "apigateway:Resource/EndpointType": "PRIVATE"
                }
            }
        },
        {
            "Sid": "ScopeToPrivateApis",
            "Effect": "Allow",
            "Action": [
                "apigateway:DELETE",
                "apigateway:PATCH",
                "apigateway:POST"
            ],
            "Resource": [
                "arn:aws:apigateway:us-east-1::/restapis",
                "arn:aws:apigateway:us-east-1::/restapis/??????????"
            ],
            "Condition": {
                "ForAllValues:StringEquals": {
                    "apigateway:Request/EndpointType": "PRIVATE",
                    "apigateway:Resource/EndpointType": "PRIVATE"
                }
            }
        },
        {
            "Sid": "AllowResourcePolicyUpdates",
            "Effect": "Allow",
            "Action": [
                "apigateway:UpdateRestApiPolicy"
            ],
            "Resource": [
                "arn:aws:apigateway:us-east-1::/restapis/*"
            ]
        }
    ]
}
```

------

## Exiger que les routes d'API disposent d'une autorisation
<a name="security_iam_id-based-policy-examples-require-authorization"></a>

Cette stratégie entraîne l'échec des tentatives de création ou de mise à jour d'une route (y compris par le biais d'une [importation](https://docs.aws.amazon.com/apigatewayv2/latest/api-reference/apis.html#ImportApi)) si celle-ci ne dispose d'aucune autorisation. `ForAnyValue` prend la valeur false en l'absence de la clé, par exemple lorsqu'une route n'est pas créée ou mise à jour. Nous utilisons `ForAnyValue` car plusieurs acheminements peuvent être créées par le biais d'une importation.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowUpdatesOnApisAndRoutes",
      "Effect": "Allow",
      "Action": [
        "apigateway:POST",
        "apigateway:PATCH",
        "apigateway:PUT"
      ],
      "Resource": [
        "arn:aws:apigateway:us-east-1::/apis",
        "arn:aws:apigateway:us-east-1::/apis/??????????",
        "arn:aws:apigateway:us-east-1::/apis/*/routes",
        "arn:aws:apigateway:us-east-1::/apis/*/routes/*"
      ]
    },
    {
      "Sid": "DenyUnauthorizedRoutes",
      "Effect": "Deny",
      "Action": [
        "apigateway:POST",
        "apigateway:PATCH",
        "apigateway:PUT"
      ],
      "Resource": [
        "arn:aws:apigateway:us-east-1::/apis",
        "arn:aws:apigateway:us-east-1::/apis/*"
      ],
      "Condition": {
        "ForAnyValue:StringEqualsIgnoreCase": {
          "apigateway:Request/RouteAuthorizationType": "NONE"
        }
      }
    }
  ]
}
```

------

## Empêcher un utilisateur de créer ou de mettre à jour un lien VPC
<a name="security_iam_id-based-policy-examples-deny-vpc-link"></a>

Cette politique empêche un utilisateur de créer ou de mettre à jour un lien VPC Un lien VPC vous permet d'exposer des ressources dans un VPC Amazon à des clients en dehors du VPC.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "DenyVPCLink",
      "Effect": "Deny",
      "Action": [
        "apigateway:POST",
        "apigateway:PUT",
        "apigateway:PATCH"
      ],
      "Resource": [
        "arn:aws:apigateway:us-east-1::/vpclinks",
        "arn:aws:apigateway:us-east-1::/vpclinks/*"
      ]
    }
  ]
}
```

------

## Exemples de politiques d’utilisation des règles de routage
<a name="security_iam_id-based-policy-examples-routing-mode"></a>

Les exemples de politiques suivants montrent comment utiliser les clés de RoutingRule condition pour contrôler la manière dont les utilisateurs peuvent acheminer le trafic de leurs noms de domaine personnalisés vers leur REST APIs. Vous pouvez utiliser ces exemples pour créer des politiques détaillées concernant les règles de routage que les utilisateurs peuvent définir. Pour de plus amples informations, veuillez consulter [Règles de routage pour connecter les étapes de l'API à un nom de domaine personnalisé pour REST APIs](rest-api-routing-rules.md).

### Méthode pour empêcher un utilisateur de modifier la façon dont un nom de domaine personnalisé achemine une demande
<a name="security_iam_id-based-policy-examples-routing-mode-1"></a>

Cette politique empêche un utilisateur de créer ou de mettre à jour `BasePathMapping`, `ApiMapping` ou `RoutingRule`. Toutes ces ressources peuvent modifier la manière dont un nom de domaine personnalisé achemine les demandes APIs.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "DenyAccessBasePathMappingsApiMappingsRoutingRules",
      "Effect": "Deny",
      "Action": "apigateway:*",
      "Resource": [
        "arn:aws:apigateway:us-east-1::/domainnames/example.com/basepathmappings/*",
        "arn:aws:apigateway:us-east-1::/domainnames/example.com/apimappings/*",
        "arn:aws:apigateway:us-east-1:111122223333:/domainnames/example.com/routingrules/*"
      ]
    }
  ]
}
```

------

### Autorisation d’un utilisateur à mettre à jour certaines priorités d’une règle de routage
<a name="security_iam_id-based-policy-examples-routing-mode-2"></a>

Cette politique autorise un utilisateur à modifier la priorité d’une règle de routage entre 1 001 et 2 000. Vous pouvez utiliser cette règle pour séparer vos règles de production des règles de priorité inférieure, puis autoriser les utilisateurs à modifier les règles de priorité inférieure sans affecter les règles de production.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "UpdatingRoutingRulePriorityBetween1001And2000",
      "Effect": "Allow",
      "Action": "apigateway:UpdateRoutingRule",
      "Resource": "arn:aws:apigateway:us-east-1:111122223333:/domainnames/example.com/routingrules/*",
      "Condition": {
        "NumericGreaterThanEquals": {
          "apigateway:Resource/Priority": 1001,
          "apigateway:Request/Priority": 1001
        },
       "NumericLessThanEquals": {
          "apigateway:Resource/Priority": 2000,
          "apigateway:Request/Priority": 2000
        } 
      }
    }
  ]
}
```

------

### Autorisation d’un utilisateur à mettre à jour une règle de routage ou un mappage de chemin de base pour une certaine valeur de chemin de base
<a name="security_iam_id-based-policy-examples-routing-mode-3"></a>

Cette politique autorise un utilisateur à mettre à jour un mappage de chemin de base uniquement pour les chemins de base commençant par `orders`, ou à mettre à jour une règle de routage correspondant à un chemin de base commençant par `orders`. Dans cette politique, un utilisateur peut mettre à jour un mappage de chemin de base ou une règle de routage pour `orders/create` ou `orders123`, mais pas pour `payment/orders`.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
      {
        "Sid": "AllowUpdateRoutingRuleUnderPathOrders",
        "Effect": "Allow",
        "Action": "apigateway:UpdateRoutingRule",
        "Resource": "arn:aws:apigateway:us-east-1:111122223333:/domainnames/example.com/routingrules/*",
        "Condition": {
            "ForAllValues:StringLike": {
                "apigateway:Request/ConditionBasePaths": ["orders*"],
                "apigateway:Resource/ConditionBasePaths": ["orders*"]
            },
            "Null":{
                 "apigateway:Request/ConditionBasePaths":"false",
                 "apigateway:Resource/ConditionBasePaths":"false"             
          }
        }
      }
  ]
}
```

------

### Autorisation d’un utilisateur à mettre à jour des valeurs spécifiques du mode de routage
<a name="security_iam_id-based-policy-examples-routing-mode-4"></a>

Cette politique autorise un utilisateur à remplacer le mode de routage par `API_MAPPING_ONLY` et `ROUTING_RULE_THEN_API_MAPPING` uniquement. Pour plus d’informations sur le mode de routage, consultez [Définition du mode de routage de votre nom de domaine personnalisé](set-routing-mode.md).

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
        {
           "Sid": "AllowUpdateRoutingModeToAnythingWithApiMapping",
           "Effect": "Allow",
           "Action": ["apigateway:PATCH"],
           "Resource": "arn:aws:apigateway:us-east-1::/domainnames/example.com",
              "Condition": {
               "StringLike": {
                   "apigateway:Request/RoutingMode":"*API_MAPPING*"
               }
           }
       }
    ]
}
```

------

# Exemples de politique basée sur les ressources d'Amazon API Gateway
<a name="security_iam_resource-based-policy-examples"></a>

Pour accéder à des exemples de stratégies basées sur les ressources, veuillez consulter [Exemples de politiques de ressources API Gateway](apigateway-resource-policies-examples.md).

# Résolution des problèmes d'identité et d'accès à Amazon API Gateway
<a name="security_iam_troubleshoot"></a>

Utilisez les informations suivantes pour identifier et résoudre les problèmes courants que vous pouvez rencontrer lorsque vous travaillez avec API Gateway et IAM.

**Topics**
+ [Je ne suis pas autorisé à effectuer une action dans API Gateway](#security_iam_troubleshoot-no-permissions)
+ [Je ne suis pas autorisé à effectuer iam : PassRole](#security_iam_troubleshoot-passrole)
+ [Je souhaite autoriser des personnes extérieures à mon AWS compte à accéder à mes ressources API Gateway](#security_iam_troubleshoot-cross-account-access)

## Je ne suis pas autorisé à effectuer une action dans API Gateway
<a name="security_iam_troubleshoot-no-permissions"></a>

Si vous recevez une erreur qui indique que vous n’êtes pas autorisé à effectuer une action, vos politiques doivent être mises à jour afin de vous permettre d’effectuer l’action.

L’exemple d’erreur suivant se produit quand l’utilisateur IAM `mateojackson` tente d’utiliser la console pour afficher des informations détaillées sur une ressource `my-example-widget` fictive, mais ne dispose pas des autorisations `apigateway:GetWidget` fictives.

```
User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: apigateway:GetWidget on resource: my-example-widget because no identity-based policy allows the GetWidget action 
```

Dans ce cas, la politique qui s’applique à l’utilisateur `mateojackson` doit être mise à jour pour autoriser l’accès à la ressource `my-example-widget` à l’aide de l’action `apigateway:GetWidget`.

Si vous avez besoin d'aide, contactez votre AWS administrateur. Votre administrateur vous a fourni vos informations d’identification de connexion.

## Je ne suis pas autorisé à effectuer iam : PassRole
<a name="security_iam_troubleshoot-passrole"></a>

Si vous recevez un message d'erreur selon lequel vous n'êtes pas autorisé à effectuer l'action `iam:PassRole`, vos stratégies doivent être mises à jour pour vous permettre de transmettre un rôle à API Gateway.

Certains vous Services AWS permettent de transmettre un rôle existant à ce service au lieu de créer un nouveau rôle de service ou un rôle lié à un service. Pour ce faire, vous devez disposer des autorisations nécessaires pour transmettre le rôle au service.

L'exemple d'erreur suivant se produit lorsqu'un utilisateur IAM nommé `marymajor` essaie d'utiliser la console pour exécuter une action dans API Gateway. Toutefois, l'action nécessite que le service ait des autorisations accordées par une fonction du service. Mary n'est pas autorisée à transmettre le rôle au service.

```
User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole
```

Dans ce cas, les politiques de Mary doivent être mises à jour pour lui permettre d’exécuter l’action `iam:PassRole`.

Si vous avez besoin d'aide, contactez votre AWS administrateur. Votre administrateur vous a fourni vos informations d’identification de connexion.

## Je souhaite autoriser des personnes extérieures à mon AWS compte à accéder à mes ressources API Gateway
<a name="security_iam_troubleshoot-cross-account-access"></a>

Vous pouvez créer un rôle que les utilisateurs provenant d’autres comptes ou les personnes extérieures à votre organisation pourront utiliser pour accéder à vos ressources. Vous pouvez spécifier qui est autorisé à assumer le rôle. Pour les services qui prennent en charge les politiques basées sur les ressources ou les listes de contrôle d'accès (ACLs), vous pouvez utiliser ces politiques pour autoriser les utilisateurs à accéder à vos ressources.

Pour plus d’informations, consultez les éléments suivants :
+ Pour savoir si API Gateway prend en charge ces fonctions, veuillez consulter [Fonctionnement d'Amazon API Gateway avec IAM](security_iam_service-with-iam.md).
+ Pour savoir comment fournir l'accès à vos ressources sur celles Comptes AWS que vous possédez, consultez la section [Fournir l'accès à un utilisateur IAM dans un autre utilisateur Compte AWS que vous possédez](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html) dans le Guide de l'*utilisateur IAM*.
+ Pour savoir comment fournir l'accès à vos ressources à des tiers Comptes AWS, consultez la section [Fournir un accès à des ressources Comptes AWS détenues par des tiers](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html) dans le *guide de l'utilisateur IAM*.
+ Pour savoir comment fournir un accès par le biais de la fédération d’identité, consultez [Fournir un accès à des utilisateurs authentifiés en externe (fédération d’identité)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_federated-users.html) dans le *Guide de l’utilisateur IAM*.
+ Pour en savoir plus sur la différence entre l’utilisation des rôles et des politiques basées sur les ressources pour l’accès intercompte, consultez [Accès intercompte aux ressources dans IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) dans le *Guide de l’utilisateur IAM*.

# Utilisation de rôles liés à un service pour API Gateway
<a name="using-service-linked-roles"></a>

Amazon API Gateway utilise des rôles Gestion des identités et des accès AWS liés à un [service](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role) (IAM). Un rôle lié à un service est un type unique de rôle IAM lié directement à API Gateway. Les rôles liés à un service sont prédéfinis par API Gateway et incluent toutes les autorisations dont le service a besoin pour appeler d'autres AWS services en votre nom. 

Un rôle lié à un service simplifie la configuration d’API Gateway, car vous n’avez pas besoin d’ajouter manuellement les autorisations requises. API Gateway définit les autorisations de ses rôles liés à un service et, sauf définition contraire, seul API Gateway peut endosser ses rôles. Les autorisations définies comprennent la politique d’approbation et la politique d’autorisation. De plus, cette politique d’autorisation ne peut pas être attachée à une autre entité IAM.

Vous pouvez supprimer un rôle lié à un service uniquement après la suppression préalable des ressources connexes. Vos ressources API Gateway sont ainsi protégées, car vous ne pouvez pas involontairement supprimer l’autorisation d’accès aux ressources.

Pour plus d’informations sur les autres services qui prennent en charge les rôles liés à un service, consultez [Services AWS qui fonctionnent avec IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) et recherchez les services avec un **Oui ** dans la colonne **Rôle lié à un service**. Choisissez un **Oui** ayant un lien permettant de consulter la documentation du rôle lié à un service, pour ce service.

## Autorisations des rôles liés à un service pour API Gateway
<a name="slr-permissions"></a>

API Gateway utilise le rôle lié au service nommé **AWSServiceRoleForAPIGateway**— Permet à API Gateway d'accéder à Elastic Load Balancing, Amazon Data Firehose et à d'autres ressources de service en votre nom.

Le rôle AWSService RoleFor APIGateway lié à un service fait confiance aux services suivants pour assumer le rôle :
+ `ops.apigateway.amazonaws.com`

La politique d’autorisations liée au rôle permet à API Gateway de réaliser les actions suivantes sur les ressources spécifiées :

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "elasticloadbalancing:AddListenerCertificates",
                "elasticloadbalancing:RemoveListenerCertificates",
                "elasticloadbalancing:ModifyListener",
                "elasticloadbalancing:DescribeListeners",
                "elasticloadbalancing:DescribeLoadBalancers",
                "xray:PutTraceSegments",
                "xray:PutTelemetryRecords",
                "xray:GetSamplingTargets",
                "xray:GetSamplingRules",
                "logs:CreateLogDelivery",
                "logs:GetLogDelivery",
                "logs:UpdateLogDelivery",
                "logs:DeleteLogDelivery",
                "logs:ListLogDeliveries",
                "servicediscovery:DiscoverInstances"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "firehose:DescribeDeliveryStream",
                "firehose:PutRecord",
                "firehose:PutRecordBatch"
            ],
            "Resource": "arn:aws:firehose:*:*:deliverystream/amazon-apigateway-*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "acm:DescribeCertificate",
                "acm:GetCertificate"
            ],
            "Resource": "arn:aws:acm:*:*:certificate/*"
        },
        {
            "Effect": "Allow",
            "Action": "ec2:CreateNetworkInterfacePermission",
            "Resource": "arn:aws:ec2:*:*:network-interface/*"
        },
        {
            "Effect": "Allow",
            "Action": "ec2:CreateTags",
            "Resource": "arn:aws:ec2:*:*:network-interface/*",
            "Condition": {
                "ForAllValues:StringEquals": {
                    "aws:TagKeys": [
                        "Owner",
                        "VpcLinkId"
                    ]
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:ModifyNetworkInterfaceAttribute",
                "ec2:DeleteNetworkInterface",
                "ec2:AssignPrivateIpAddresses",
                "ec2:CreateNetworkInterface",
                "ec2:DeleteNetworkInterfacePermission",
                "ec2:DescribeNetworkInterfaces",
                "ec2:DescribeAvailabilityZones",
                "ec2:DescribeNetworkInterfaceAttribute",
                "ec2:DescribeVpcs",
                "ec2:DescribeNetworkInterfacePermissions",
                "ec2:UnassignPrivateIpAddresses",
                "ec2:DescribeSubnets",
                "ec2:DescribeRouteTables",
                "ec2:DescribeSecurityGroups"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "servicediscovery:GetNamespace",
            "Resource": "arn:aws:servicediscovery:*:*:namespace/*"
        },
        {
            "Effect": "Allow",
            "Action": "servicediscovery:GetService",
            "Resource": "arn:aws:servicediscovery:*:*:service/*"
        }
    ]
}
```

------

Vous devez configurer les autorisations de manière à permettre à une entité IAM (comme un utilisateur, un groupe ou un rôle) de créer, modifier ou supprimer un rôle lié à un service. Pour plus d’informations, consultez [Service-Linked Role Permissions (autorisations du rôle lié à un service)](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions) dans le *Guide de l’utilisateur IAM*.

## Création d’un rôle lié à un service pour API Gateway
<a name="create-slr"></a>

Vous n’avez pas besoin de créer manuellement un rôle lié à un service. Lorsque vous créez une API, un nom de domaine personnalisé ou un lien VPC dans l' AWS Management Console AWS API AWS CLI, API Gateway crée le rôle lié au service pour vous. 

Si vous supprimez ce rôle lié à un service et que vous avez ensuite besoin de le recréer, vous pouvez utiliser la même procédure pour recréer le rôle dans votre compte. Lorsque vous créez une API, un nom de domaine personnalisé ou un lien VPC, API Gateway crée à nouveau le rôle lié à un service pour vous. 

## Modification d’un rôle lié à un service pour API Gateway
<a name="edit-slr"></a>

API Gateway ne vous permet pas de modifier le rôle AWSService RoleFor APIGateway lié au service. Une fois que vous avez créé un rôle lié à un service, vous ne pouvez pas changer le nom du rôle, car plusieurs entités peuvent faire référence au rôle. Néanmoins, vous pouvez modifier la description du rôle à l’aide d’IAM. Pour en savoir plus, consultez [Modification d’un rôle lié à un service](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role) dans le *Guide de l’utilisateur IAM*.

## Suppression d’un rôle lié à un service pour API Gateway
<a name="delete-slr"></a>

Si vous n’avez plus besoin d’utiliser une fonction ou un service qui nécessite un rôle lié à un service, nous vous recommandons de supprimer ce rôle. De cette façon, vous n’avez aucune entité inutilisée qui n’est pas surveillée ou gérée activement. Cependant, vous devez nettoyer les ressources de votre rôle lié à un service avant de pouvoir les supprimer manuellement.

**Note**  
Si le service API Gateway utilise le rôle lorsque vous essayez de supprimer les ressources, la suppression peut échouer. Si cela se produit, patientez quelques minutes et réessayez.

**Pour supprimer les ressources API Gateway utilisées par AWSService RoleFor APIGateway**

1. Ouvrez la console API Gateway à l'adresse [https://console.aws.amazon.com/apigateway/](https://console.aws.amazon.com/apigateway/). 

1. Accédez à l’API, au nom de domaine personnalisé ou au lien VPC qui utilise le rôle lié à un service.

1. Utilisez la console pour supprimer la ressource.

1. Répétez la procédure pour supprimer tous les APIs noms de domaine personnalisés ou les liens VPC qui utilisent le rôle lié à un service.

**Pour supprimer manuellement le rôle lié au service à l’aide d’IAM**

Utilisez la console IAM, le AWS CLI, ou l' AWS API pour supprimer le rôle lié au AWSService RoleFor APIGateway service. Pour plus d’informations, consultez [Suppression d’un rôle lié à un service](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role) dans le *Guide de l’utilisateur IAM*.

## Régions prises en charge pour les rôles liés à un service API Gateway
<a name="slr-regions"></a>

API Gateway prend en charge l’utilisation des rôles liés à un service dans toutes les régions où le service est disponible. Pour plus d’informations, consultez [Points de terminaison du service AWS](https://docs.aws.amazon.com/general/latest/gr/rande.html).

## Mises à jour des politiques AWS gérées par API Gateway
<a name="security-iam-awsmanpol-updates"></a>



Consultez les détails des mises à jour apportées aux politiques AWS gérées pour API Gateway depuis que ce service a commencé à suivre ces modifications. Pour obtenir des alertes automatiques concernant les modifications apportées à cette page, abonnez-vous au flux RSS de la page d’[historique API Gateway Document](history.md).


| Modification | Description | Date | 
| --- | --- | --- | 
|  Ajout de la prise en charge de `acm:GetCertificate` à la politique `AWSServiceRoleForAPIGateway`.  |  La politique `AWSServiceRoleForAPIGateway` inclut désormais l’autorisation d’appeler l’action d’API `GetCertificate` ACM.  | 12 Juillet 2021 | 
|  API Gateway a commencé à suivre les modifications  |  API Gateway a commencé à suivre les modifications apportées AWS à ses politiques gérées.  | 12 Juillet 2021 | 

# Journalisation et surveillance dans Amazon API Gateway
<a name="security-monitoring"></a>

La surveillance est un enjeu important pour assurer la fiabilité, la disponibilité et les performances d’API Gateway et de vos solutions AWS. Vous devez collecter les données de surveillance de toutes les parties de votre solution AWS afin de pouvoir déboguer plus facilement une éventuelle défaillance à plusieurs points. AWS fournit plusieurs outils pour surveiller vos ressources API Gateway et répondre aux incidents potentiels :

**Amazon CloudWatch Logs**  
Pour vous aider à déboguer les problèmes liés à l’exécution de requêtes ou à l’accès client à votre API, vous pouvez activer CloudWatch Logs pour journaliser les appels d’API. Pour de plus amples informations, veuillez consulter [Configuration de la CloudWatch journalisation pour REST APIs dans API Gateway](set-up-logging.md).

**Alarmes Amazon CloudWatch**  
Les alarmes Amazon CloudWatch permettent de surveiller une métrique unique sur une période de temps que vous spécifiez. Si la métrique dépasse un seuil donné, une notification est envoyée à une rubrique Amazon Simple Notification Service ou à une politique AWS Auto Scaling. Les alarmes CloudWatch n’appellent pas d’actions lorsqu’une métrique est dans un état particulier. L’état doit avoir changé et avoir été conservé pendant un nombre de périodes spécifié. Pour de plus amples informations, consultez [Surveillez l'exécution de l'API REST avec CloudWatch les métriques Amazon](monitoring-cloudwatch.md).

**Accès à la journalisation de Firehose**  
Pour vous aider à résoudre des problèmes liés à l’accès client à votre API, vous pouvez activer Firehose afin de journaliser les appels d’API. Pour de plus amples informations, consultez [Journalisation des appels d’API REST adressés à Amazon Data Firehose dans API Gateway](apigateway-logging-to-kinesis.md).

**AWS CloudTrail**  
CloudTrail fournit un enregistrement des actions réalisées par un utilisateur, un rôle ou un service AWS dans API Gateway. Avec les informations collectées par CloudTrail, vous pouvez déterminer la demande qui a été envoyée à API Gateway, l’adresse IP à partir de laquelle la demande a été effectuée, l’auteur et la date de la demande, ainsi que d’autres détails. Pour de plus amples informations, veuillez consulter [Journalisation des appels d'API Amazon API Gateway à l'aide de AWS CloudTrail](cloudtrail.md). 

**AWS X-Ray**  
X-Ray est un service AWS qui collecte des données sur les demandes traitées par votre application et les utilise pour construire une cartographie des services qui vous permet d’identifier les problèmes liés à votre application et les opportunités d’optimisation. Pour de plus amples informations, veuillez consulter [Configuration AWS X-Ray avec API Gateway REST APIs](apigateway-enabling-xray.md). 

**AWS Config**  
AWS Config fournit une vue détaillée de la configuration des ressources AWS de votre compte. Vous pouvez voir comment les ressources sont liées, obtenir un historique des changements de configuration, et voir comment les configurations et les relations changent au fil du temps. Vous pouvez utiliser AWS Config pour définir des règles qui évaluent les configurations de ressources pour assurer la conformité des données. Les règles AWS Config représentent les paramètres de configuration idéaux pour vos ressources API Gateway. Si une ressource enfreint une règle et est signalée comme non conforme, AWS Config peut vous avertir à l’aide d’une rubrique Amazon Simple Notification Service (Amazon SNS). Pour plus d’informations, consultez [Surveillance de la configuration de l'API API Gateway avec AWS Config](apigateway-config.md). 

# Journalisation des appels d'API Amazon API Gateway à l'aide de AWS CloudTrail
<a name="cloudtrail"></a>

Amazon API Gateway est intégré à [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)un service qui fournit un enregistrement des actions entreprises par un utilisateur, un rôle ou un Service AWS. CloudTrail capture tous les appels d'API REST pour le service API Gateway sous forme d'événements. Les appels capturés incluent des appels provenant de la console API Gateway et des appels de code adressés au service API Gateway APIs. À l'aide des informations collectées par CloudTrail, vous pouvez déterminer la demande qui a été envoyée à API Gateway, l'adresse IP à partir de laquelle la demande a été faite, la date à laquelle elle a été faite et des informations supplémentaires.

**Note**  
[TestInvokeAuthorizer](https://docs.aws.amazon.com/cli/latest/reference/apigateway/test-invoke-authorizer.html)et ne [TestInvokeMethod](https://docs.aws.amazon.com/cli/latest/reference/apigateway/test-invoke-method.html)sont pas connectés CloudTrail.

Chaque événement ou entrée de journal contient des informations sur la personne ayant initié la demande. Les informations relatives à l’identité permettent de déterminer :
+ Si la demande a été effectuée avec des informations d’identification d’utilisateur root ou d’utilisateur root.
+ Si la demande a été faite au nom d'un utilisateur du centre d'identité IAM.
+ Si la demande a été effectuée avec les informations d’identification de sécurité temporaires d’un rôle ou d’un utilisateur fédéré.
+ Si la requête a été effectuée par un autre Service AWS.

CloudTrail est actif dans votre compte Compte AWS lorsque vous créez le compte et vous avez automatiquement accès à l'**historique des CloudTrail événements**. L'**historique des CloudTrail événements** fournit un enregistrement consultable, consultable, téléchargeable et immuable des 90 derniers jours des événements de gestion enregistrés dans un. Région AWS Pour plus d'informations, consultez la section [Utilisation de l'historique des CloudTrail événements](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html) dans le *guide de AWS CloudTrail l'utilisateur*. La consultation de CloudTrail l'**historique des événements est gratuite**.

Pour un enregistrement continu des événements de vos 90 Compte AWS derniers jours, créez un magasin de données sur les événements de Trail ou [CloudTrailLake](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-lake.html).

**CloudTrail sentiers**  
Un *suivi* permet CloudTrail de fournir des fichiers journaux à un compartiment Amazon S3. Tous les sentiers créés à l'aide du AWS Management Console sont multirégionaux. Vous ne pouvez créer un journal de suivi en une ou plusieurs régions à l'aide de l' AWS CLI. Il est recommandé de créer un parcours multirégional, car vous capturez l'activité dans l'ensemble Régions AWS de votre compte. Si vous créez un journal de suivi pour une seule région, il convient de n'afficher que les événements enregistrés dans le journal de suivi pour une seule région Région AWS. Pour plus d'informations sur les journaux de suivi, consultez [Créez un journal de suivi dans vos Compte AWS](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html) et [Création d'un journal de suivi pour une organisation](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/creating-trail-organization.html) dans le *AWS CloudTrail Guide de l'utilisateur*.  
Vous pouvez envoyer une copie de vos événements de gestion en cours dans votre compartiment Amazon S3 gratuitement CloudTrail en créant un journal. Toutefois, des frais de stockage Amazon S3 sont facturés. Pour plus d'informations sur la CloudTrail tarification, consultez la section [AWS CloudTrail Tarification](https://aws.amazon.com/cloudtrail/pricing/). Pour obtenir des informations sur la tarification Amazon S3, consultez [Tarification Amazon S3](https://aws.amazon.com/s3/pricing/).

**CloudTrail Stockages de données sur les événements du lac**  
*CloudTrail Lake* vous permet d'exécuter des requêtes SQL sur vos événements. CloudTrail Lake convertit les événements existants au format JSON basé sur les lignes au format [Apache ORC](https://orc.apache.org/). ORC est un format de stockage en colonnes qui est optimisé pour une récupération rapide des données. Les événements sont agrégés dans des *magasins de données d’événement*. Ceux-ci constituent des collections immuables d’événements basées sur des critères que vous sélectionnez en appliquant des [sélecteurs d’événements avancés](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-lake-concepts.html#adv-event-selectors). Les sélecteurs que vous appliquez à un magasin de données d’événement contrôlent les événements qui persistent et que vous pouvez interroger. Pour plus d'informations sur CloudTrail Lake, consultez la section [Travailler avec AWS CloudTrail Lake](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-lake.html) dans le *guide de AWS CloudTrail l'utilisateur*.  
CloudTrail Les stockages et requêtes de données sur les événements de Lake entraînent des coûts. Lorsque vous créez un magasin de données d’événement, vous choisissez l’[option de tarification](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-lake-manage-costs.html#cloudtrail-lake-manage-costs-pricing-option) que vous voulez utiliser pour le magasin de données d’événement. L’option de tarification détermine le coût d’ingestion et de stockage des événements, ainsi que les périodes de conservation par défaut et maximale pour le magasin de données d’événement. Pour plus d'informations sur la CloudTrail tarification, consultez la section [AWS CloudTrail Tarification](https://aws.amazon.com/cloudtrail/pricing/).

## Événements de gestion d'API Gateway dans CloudTrail
<a name="cloudtrail-management-events"></a>

[Les événements de gestion](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-management-events-with-cloudtrail.html#logging-management-events) fournissent des informations sur les opérations de gestion effectuées sur les ressources de votre Compte AWS. Ils sont également connus sous le nom opérations de plan de contrôle. Par défaut, CloudTrail enregistre les événements de gestion.

Amazon API Gateway enregistre toutes les actions d'API Gateway en tant qu'événements de gestion, à l'exception de [TestInvokeAuthorizer](https://docs.aws.amazon.com/cli/latest/reference/apigateway/test-invoke-authorizer.html)et [TestInvokeMethod](https://docs.aws.amazon.com/cli/latest/reference/apigateway/test-invoke-method.html). Pour obtenir la liste des actions Amazon API Gateway auxquelles API Gateway se connecte CloudTrail, consultez le manuel [Amazon API Gateway API Reference](https://docs.aws.amazon.com/apigateway/latest/api/API_Operations.html).

## Exemple d’événement API Gateway
<a name="cloudtrail-event-examples"></a>

Un événement représente une demande unique provenant de n'importe quelle source et inclut des informations sur l'opération d'API demandée, la date et l'heure de l'opération, les paramètres de la demande, etc. CloudTrail les fichiers journaux ne constituent pas une trace ordonnée des appels d'API publics. Les événements n'apparaissent donc pas dans un ordre spécifique.

L'exemple suivant montre un CloudTrail événement illustrant l'`GetResource`action API Gateway :

```
{
    Records: [
        {
            eventVersion: "1.03",
            userIdentity: {
                type: "Root",
                principalId: "AKIAI44QH8DHBEXAMPLE",
                arn: "arn:aws:iam::123456789012:root",
                accountId: "123456789012",
                accessKeyId: "AKIAIOSFODNN7EXAMPLE",
                sessionContext: {
                    attributes: {
                        mfaAuthenticated: "false",
                        creationDate: "2015-06-16T23:37:58Z"
                    }
                }
            },
            eventTime: "2015-06-17T00:47:28Z",
            eventSource: "apigateway.amazonaws.com",
            eventName: "GetResource",
            awsRegion: "us-east-1",
            sourceIPAddress: "203.0.113.11",
            userAgent: "example-user-agent-string",
            requestParameters: {
                restApiId: "3rbEXAMPLE",
                resourceId: "5tfEXAMPLE",
                template: false
            },
            responseElements: null,
            requestID: "6d9c4bfc-148a-11e5-81b6-7577cEXAMPLE",
            eventID: "4d293154-a15b-4c33-9e0a-ff5eeEXAMPLE",
            readOnly: true,
            eventType: "AwsApiCall",
            recipientAccountId: "123456789012"
        },
        ... additional entries ...
    ]
}
```

Pour plus d'informations sur le contenu des CloudTrail enregistrements, voir [le contenu des CloudTrail enregistrements](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-record-contents.html) dans le *Guide de AWS CloudTrail l'utilisateur*.

# Surveillance de la configuration de l'API API Gateway avec AWS Config
<a name="apigateway-config"></a>

Vous pouvez utiliser [AWS Config](https://aws.amazon.com/config/) afin d'enregistrer les modifications de configuration apportées à vos ressources de l'API d'API Gateway et envoyer des notifications en fonction de ces modifications. Il peut être utile de conserver un historique des modifications de configuration apportées aux ressources API Gateway pour un dépannage et un audit opérationnel ainsi que pour des cas d'utilisation de conformité.

AWS Config peut suivre les modifications apportées à :
+ **Configuration des étapes d'API**, notamment :
  + paramètres de cluster de cache ;
  + paramètres de restriction ;
  + paramètres des journaux d'accès ;
  + déploiement actif défini sur l'étape.
+ **Configuration d'API**, notamment :
  + configuration du point de terminaison ;
  + version ;
  + protocole ;
  + balises.

En outre, AWS Config Rules cette fonctionnalité vous permet de définir des règles de configuration et de détecter, suivre et signaler automatiquement les violations de ces règles. En suivant les modifications apportées à ces propriétés de configuration des ressources, vous pouvez également créer des AWS Config règles déclenchées par des modifications pour vos ressources API Gateway et tester vos configurations de ressources par rapport aux meilleures pratiques.

Vous pouvez l'activer AWS Config dans votre compte à l'aide de la AWS Config console ou du AWS CLI. Sélectionnez les types de ressources pour lesquels vous souhaitez suivre les modifications. Si vous avez déjà configuré AWS Config pour enregistrer tous les types de ressources, ces ressources API Gateway seront automatiquement enregistrées dans votre compte. Support pour Amazon API Gateway in AWS Config est disponible dans toutes les régions AWS publiques et AWS GovCloud (US). Pour obtenir la liste complète des Régions prises en charge, veuillez consulter les [points de terminaison et quotas Amazon API Gateway](https://docs.aws.amazon.com/general/latest/gr/apigateway.html) dans le document Références générales AWS.

**Topics**
+ [Types de ressources pris en charge](#apigateway-config-resources-rules)
+ [Con AWS Config figuration](#apigateway-config-setup)
+ [Configuration AWS Config pour enregistrer les ressources d'API Gateway](#apigateway-config-configuring)
+ [Afficher les détails de configuration d'API Gateway dans la AWS Config console](#apigateway-config-console)
+ [Évaluation des ressources d'API Gateway à l'aide de AWS Config règles](#apigateway-config-rules)

## Types de ressources pris en charge
<a name="apigateway-config-resources-rules"></a>

Les types de ressources API Gateway suivants sont intégrés AWS Config et sont documentés dans [AWS Config Supported AWS Resource Types and Resource Relationships](https://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html) :
+ `AWS::ApiGatewayV2::Api`(WebSocket et API HTTP)
+ `AWS::ApiGateway::RestApi` (API REST)
+ `AWS::ApiGatewayV2::Stage`(WebSocket et étape de l'API HTTP)
+ `AWS::ApiGateway::Stage` (étape de l'API REST)

Pour plus d'informations à ce sujet AWS Config, consultez le [guide du AWS Config développeur](https://docs.aws.amazon.com/config/latest/developerguide/). Pour obtenir des informations sur la tarification, consultez la [page des informations de tarification d'AWS Config](https://aws.amazon.com/config/pricing/).

**Important**  
Si vous modifiez l'une des propriétés de l'API suivantes après le déploiement de l'API, vous *devez* [redéployer](how-to-deploy-api.md) l'API pour propager les modifications. Dans le cas contraire, les attributs seront modifiés dans la AWS Config console, mais les paramètres de propriété précédents seront toujours en vigueur ; le comportement d'exécution de l'API restera inchangé.  
**`AWS::ApiGateway::RestApi`** – `binaryMediaTypes`, `minimumCompressionSize`, `apiKeySource`
**`AWS::ApiGatewayV2::Api`** – `apiKeySelectionExpression`

## Con AWS Config figuration
<a name="apigateway-config-setup"></a>

Pour la configuration initiale AWS Config, consultez les rubriques suivantes du [guide du AWS Config développeur](https://docs.aws.amazon.com/config/latest/developerguide/).
+ [Configuration à l' AWS Config aide de la console](https://docs.aws.amazon.com/config/latest/developerguide/gs-console.html)
+ [Configuration à l' AWS Config aide du AWS CLI](https://docs.aws.amazon.com/config/latest/developerguide/gs-cli.html)

## Configuration AWS Config pour enregistrer les ressources d'API Gateway
<a name="apigateway-config-configuring"></a>

Par défaut, AWS Config enregistre les modifications de configuration pour tous les types de ressources régionales pris en charge qu'il découvre dans la région dans laquelle votre environnement s'exécute. Vous pouvez le personnaliser AWS Config pour enregistrer uniquement les modifications relatives à des types de ressources spécifiques ou les modifications apportées aux ressources globales.

Pour en savoir plus sur les ressources régionales par rapport aux ressources mondiales et sur la façon de personnaliser votre AWS Config configuration, consultez la section [Sélection des ressources AWS Config enregistrées](https://docs.aws.amazon.com/config/latest/developerguide/select-resources.html).

## Afficher les détails de configuration d'API Gateway dans la AWS Config console
<a name="apigateway-config-console"></a>

Vous pouvez utiliser la AWS Config console pour rechercher des ressources API Gateway et obtenir des informations actuelles et historiques sur leurs configurations. La procédure ci-après illustre comment rechercher des informations sur une API Amazon API Gateway.

**Pour rechercher une ressource API Gateway dans la console de AWS configuration**

1. Ouvrez la [console AWS Config](https://console.aws.amazon.com/config).

1. Choisissez **Ressources**.

1. Sur la page **Resource Inventory (Inventaire des ressources)**, choisissez **Resources (Ressources)**.

1. Ouvrez le menu **Type de ressource**, faites défiler l'écran jusqu'à APIGateway APIGateway V2, puis choisissez un ou plusieurs types de ressources API Gateway.

1. Choisissez **Recherche**.

1. Choisissez un ID de ressource dans la liste des ressources qui AWS Config s'affiche. AWS Config affiche les détails de configuration et d'autres informations sur la ressource que vous avez sélectionnée.

1. Pour voir tous les détails de la configuration enregistrée, choisissez **View Details (Afficher les détails)**.

Pour en savoir plus sur les moyens de rechercher une ressource et d'afficher les informations sur cette page, consultez la section [Affichage AWS des configurations et de l'historique des ressources](https://docs.aws.amazon.com/config/latest/developerguide/view-manage-resource.html) dans le guide du AWS Config développeur.

## Évaluation des ressources d'API Gateway à l'aide de AWS Config règles
<a name="apigateway-config-rules"></a>

Vous pouvez créer des AWS Config règles qui représentent les paramètres de configuration idéaux pour vos ressources API Gateway. Vous pouvez utiliser des [règles AWS Config gérées](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html) prédéfinies ou définir des règles personnalisées. AWS Config suit en permanence les modifications apportées à la configuration de vos ressources afin de déterminer si ces modifications enfreignent l'une des conditions de vos règles. La AWS Config console indique l'état de conformité de vos règles et de vos ressources.

Si une ressource enfreint une règle et est signalée comme non conforme, vous AWS Config pouvez vous en informer à l'aide d'une rubrique [Amazon Simple Notification Service Developer Guide](https://docs.aws.amazon.com/sns/latest/dg/) (Amazon SNS). Pour programmer la consommation des données contenues dans ces alertes AWS Config , utilisez une file d'attente Amazon Simple Queue Service (Amazon SQS) comme point de terminaison de notification pour la rubrique Amazon SNS.

Pour en savoir plus sur la configuration et l'utilisation de règles, veuillez consulter [Évaluation des ressources à l'aide de règles](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) dans le [Guide du développeur AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/). 

# Validation de conformité pour Amazon API Gateway
<a name="compliance-validation"></a>

Pour savoir si un [programme Services AWS de conformité Service AWS s'inscrit dans le champ d'application de programmes de conformité](https://aws.amazon.com/compliance/services-in-scope/) spécifiques, consultez Services AWS la section de conformité et sélectionnez le programme de conformité qui vous intéresse. Pour des informations générales, voir Programmes de [AWS conformité Programmes AWS](https://aws.amazon.com/compliance/programs/) de .

Vous pouvez télécharger des rapports d'audit tiers à l'aide de AWS Artifact. Pour plus d'informations, voir [Téléchargement de rapports dans AWS Artifact](https://docs.aws.amazon.com/artifact/latest/ug/downloading-documents.html) .

Votre responsabilité en matière de conformité lors de l'utilisation Services AWS est déterminée par la sensibilité de vos données, les objectifs de conformité de votre entreprise et les lois et réglementations applicables. Pour plus d'informations sur votre responsabilité en matière de conformité lors de l'utilisation Services AWS, consultez [AWS la documentation de sécurité](https://docs.aws.amazon.com/security/).

# Résilience dans Amazon API Gateway
<a name="disaster-recovery-resiliency"></a>

L’infrastructure mondiale AWS s’articule autour de régions et de zones de disponibilité AWS. AWS Les régions fournissent plusieurs zones de disponibilité physiquement séparées et isolées, reliées par un réseau à latence faible, à haut débit et hautement redondant. Avec les zones de disponibilité, vous pouvez concevoir et exploiter des applications et des bases de données qui basculent automatiquement d’une zone à l’autre sans interruption. Les zones de disponibilité sont davantage disponibles, tolérantes aux pannes et ont une plus grande capacité de mise à l’échelle que les infrastructures traditionnelles à un ou plusieurs centres de données. 

En tant que service régional entièrement géré, API Gateway fonctionne dans plusieurs zones de disponibilité de chaque région, en utilisant la redondance des zones de disponibilité pour minimiser les défaillances de l’infrastructure en tant que catégorie de risque pour la disponibilité. API Gateway est conçu pour récupérer automatiquement après la défaillance d’une zone de disponibilité. 

Pour plus d’informations sur les régions et les zones de disponibilité AWS, consultez [AWS Infrastructure mondiale](https://aws.amazon.com/about-aws/global-infrastructure/).

Pour éviter que vos API soient submergées par un trop grand nombre de demandes, API Gateway régule le flux des demandes soumises à vos API. En particulier, API Gateway définit une limite sur les soumissions de demandes à un débit régulier et en mode rafale pour toutes les API dans votre compte. Vous pouvez configurer la limitation personnalisée pour vos API. Pour en savoir plus, veuillez consulter la section [Limitez les requêtes adressées à votre REST APIs pour améliorer le débit dans API Gateway](api-gateway-request-throttling.md).

Vous pouvez utiliser les surveillances de l’état de Route 53 pour contrôler le basculement DNS d’une API de passerelle API dans une région principale vers une API API Gateway dans une région secondaire. Pour obtenir un exemple, consultez [Configuration de surveillances de l’état personnalisées pour le basculement DNS d’une API API Gateway](dns-failover.md).

# Sécurité de l'infrastructure dans Amazon API Gateway
<a name="infrastructure-security"></a>

En tant que service géré, Amazon API Gateway est protégé par la sécurité du réseau AWS mondial. Pour plus d'informations sur les services AWS de sécurité et sur la manière dont AWS l'infrastructure est protégée, consultez la section [Sécurité du AWS cloud](https://aws.amazon.com/security/). Pour concevoir votre AWS environnement en utilisant les meilleures pratiques en matière de sécurité de l'infrastructure, consultez la section [Protection de l'infrastructure](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/infrastructure-protection.html) dans le cadre * AWS bien architecturé du pilier de sécurité*.

Vous utilisez des appels d'API AWS publiés pour accéder à API Gateway via le réseau. Les clients doivent prendre en charge les éléments suivants :
+ Protocole TLS (Transport Layer Security). Nous exigeons TLS 1.2 et recommandons TLS 1.3.
+ Ses suites de chiffrement PFS (Perfect Forward Secrecy) comme DHE (Ephemeral Diffie-Hellman) ou ECDHE (Elliptic Curve Ephemeral Diffie-Hellman). La plupart des systèmes modernes tels que Java 7 et les versions ultérieures prennent en charge ces modes.

Vous pouvez appeler ces opérations d'API à partir de n'importe quel emplacement sur le réseau, mais API Gateway prend en charge les stratégies d'accès basées sur les ressources, ce qui peut inclure des restrictions en fonction de l'adresse IP source. Vous pouvez également utiliser des politiques basées sur les ressources pour contrôler l'accès depuis des points de terminaison Amazon Virtual Private Cloud (Amazon VPC) spécifiques ou spécifiques. VPCs En fait, cela isole l'accès réseau à une ressource API Gateway donnée uniquement du VPC spécifique au sein AWS du réseau.

# Analyse des vulnérabilités dans Amazon API Gateway
<a name="vulnerability-analysis"></a>

La configuration et les contrôles informatiques sont une responsabilité partagée entre AWS et vous, notre client. Pour plus d'informations, consultez [Modèle de responsabilité partagée](https://aws.amazon.com/compliance/shared-responsibility-model/) AWS.

# Bonnes pratiques de sécurité dans Amazon API Gateway
<a name="security-best-practices"></a>

API Gateway fournit différentes fonctions de sécurité à prendre en compte lorsque vous développez et implémentez vos propres politiques de sécurité. Les bonnes pratiques suivantes doivent être considérées comme des instructions générales et ne représentent pas une solution de sécurité complète. Étant donné que ces bonnes pratiques peuvent ne pas être appropriées ou suffisantes pour votre environnement, considérez-les comme des remarques utiles plutôt que comme des recommandations.

**Implémentation d’un accès sur la base du moindre privilège**  
Utilisez les politiques IAM pour mettre en œuvre l'accès avec le moindre privilège lors de la création, de la lecture, de la mise à jour ou de la suppression d'API Gateway APIs. Pour en savoir plus, veuillez consulter la section [Identity and Access Management pour Amazon API Gateway](security-iam.md). API Gateway propose plusieurs options pour contrôler l'accès à APIs ce que vous créez. Pour en savoir plus, consultez [Contrôler et gérer l'accès à REST APIs dans API Gateway](apigateway-control-access-to-api.md), [Contrôler et gérer l'accès WebSocket APIs à API Gateway](apigateway-websocket-api-control-access.md) et [Contrôlez l'accès au HTTP APIs avec les autorisateurs JWT dans API Gateway](http-api-jwt-authorizer.md).

**Mise en œuvre de la journalisation**  
Utilisez CloudWatch Logs ou Amazon Data Firehose pour enregistrer les demandes adressées à votre. APIs Pour en savoir plus, consultez [Surveillance des API REST dans API Gateway](rest-api-monitor.md), [Configuration de la journalisation WebSocket APIs dans API Gateway](websocket-api-logging.md) et [Configuration de la journalisation pour HTTP APIs dans API Gateway](http-api-logging.md).

**Implémenter les CloudWatch alarmes Amazon**  
À l'aide d' CloudWatch alarmes, vous observez une seule métrique sur une période que vous spécifiez. Si la métrique dépasse un seuil donné, une notification est envoyée à un sujet ou à une AWS Auto Scaling politique Amazon Simple Notification Service. CloudWatch les alarmes n'appellent pas d'actions lorsqu'une métrique est dans un état particulier. L’état doit avoir changé et avoir été conservé pendant un nombre de périodes spécifié. Pour de plus amples informations, veuillez consulter [Surveillez l'exécution de l'API REST avec CloudWatch les métriques Amazon](monitoring-cloudwatch.md).

**Activer AWS CloudTrail**  
CloudTrail fournit un enregistrement des actions entreprises par un utilisateur, un rôle ou un AWS service dans API Gateway. À l'aide des informations collectées par CloudTrail, vous pouvez déterminer la demande qui a été faite à API Gateway, l'adresse IP à partir de laquelle la demande a été faite, l'auteur de la demande, la date à laquelle elle a été faite et des informations supplémentaires. Pour de plus amples informations, veuillez consulter [Journalisation des appels d'API Amazon API Gateway à l'aide de AWS CloudTrail](cloudtrail.md). 

**Activer AWS Config**  
AWS Config fournit une vue détaillée de la configuration des AWS ressources de votre compte. Vous pouvez voir comment les ressources sont liées, obtenir un historique des changements de configuration, et voir comment les configurations et les relations changent au fil du temps. Vous pouvez l'utiliser AWS Config pour définir des règles qui évaluent les configurations des ressources en termes de conformité des données. AWS Config les règles représentent les paramètres de configuration idéaux pour vos ressources API Gateway. Si une ressource enfreint une règle et est signalée comme non conforme, vous AWS Config pouvez être alertée via une rubrique Amazon Simple Notification Service (Amazon SNS). Pour en savoir plus, consultez [Surveillance de la configuration de l'API API Gateway avec AWS Config](apigateway-config.md). 

**Utiliser AWS Security Hub CSPM**  
Surveillez votre utilisation d’API Gateway, car elle est liée aux bonnes pratiques de sécurité, en utilisant [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html). Security Hub CSPM utilise des *contrôles de sécurité* pour évaluer les configurations des ressources et les *normes de sécurité* afin de vous aider à vous conformer aux différents cadres de conformité. Pour plus d'informations sur l'utilisation de Security Hub CSPM pour évaluer les ressources d'API Gateway, consultez les [contrôles Amazon API Gateway](https://docs.aws.amazon.com/securityhub/latest/userguide/apigateway-controls.html) dans le guide de l'*AWS Security Hub utilisateur*.