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.
Comment ? AWS WAF fonctionne avec IAM
Cette section explique comment utiliser les fonctionnalités IAM de AWS WAF.
Avant d'utiliser IAM pour gérer l'accès à AWS WAF, découvrez quelles IAM fonctionnalités peuvent être utilisées avec AWS WAF.
IAMfonctionnalité | AWS WAF Prise en charge de par la |
---|---|
Oui |
|
Oui |
|
Oui |
|
Oui |
|
Oui |
|
Non |
|
Partielle |
|
Oui |
|
Oui |
|
Oui |
|
Oui |
Pour obtenir une vue d'ensemble de la manière dont AWS WAF et autres AWS les services fonctionnent avec la plupart IAM des fonctionnalités, voir AWS services compatibles avec IAM le Guide de l'IAMutilisateur.
Politiques basées sur l'identité pour AWS WAF
Prend en charge les politiques basées sur l’identité : oui
Les politiques basées sur l'identité sont JSON des documents de politique d'autorisation que vous pouvez joindre à une identité, telle qu'un IAM utilisateur, un groupe d'utilisateurs ou un rôle. Ces politiques contrôlent quel type d’actions des utilisateurs et des rôles peuvent exécuter, sur quelles ressources et dans quelles conditions. Pour savoir comment créer une politique basée sur l'identité, consultez la section Création de IAM politiques dans le Guide de l'IAMutilisateur.
Avec les politiques IAM basées sur l'identité, vous pouvez spécifier les actions et les ressources autorisées ou refusées ainsi que les conditions dans lesquelles les actions sont autorisées ou refusées. Vous ne pouvez pas spécifier le principal dans une politique basée sur une identité, car celle-ci s’applique à l’utilisateur ou au rôle auquel elle est attachée. Pour en savoir plus sur tous les éléments que vous pouvez utiliser dans une JSON politique, consultez la référence aux éléments de IAM JSON politique dans le Guide de IAM l'utilisateur.
Pour voir des exemples de AWS WAF politiques basées sur l'identité, voir. Exemples de politiques basées sur l'identité pour AWS WAF
Politiques basées sur les ressources au sein de AWS WAF
Prend en charge les politiques basées sur les ressources : Oui
Les politiques basées sur les ressources sont des documents JSON de stratégie que vous attachez à une ressource. Les politiques de confiance dans les IAM rôles et les politiques relatives aux compartiments Amazon S3 sont des exemples de politiques basées sur les ressources. 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. Pour la ressource dans laquelle se trouve la politique, cette dernière définit quel type d’actions un principal spécifié peut effectuer sur cette ressource et dans quelles conditions. Vous devez spécifier un principal dans une politique basée sur les ressources. Les principaux peuvent inclure des comptes, des utilisateurs, des rôles, des utilisateurs fédérés ou Services AWS.
Pour activer l'accès entre comptes, vous pouvez spécifier un compte entier ou IAM des entités d'un autre compte comme principal dans une politique basée sur les ressources. L’ajout d’un principal entre comptes à une politique basée sur les ressources ne représente qu’une partie de l’instauration de la relation d’approbation. Lorsque le principal et la ressource sont différents Comptes AWS, un IAM administrateur du compte sécurisé doit également accorder à l'entité principale (utilisateur ou rôle) l'autorisation d'accéder à la ressource. Pour ce faire, il attache une politique basée sur une identité à l’entité. Toutefois, si une politique basée sur des ressources accorde l’accès à un principal dans le même compte, aucune autre politique basée sur l’identité n’est requise. Pour plus d'informations, voir Accès aux ressources entre comptes IAM dans le Guide de IAM l'utilisateur.
AWS WAF utilise des politiques basées sur les ressources pour favoriser le partage de groupes de règles entre les comptes. Vous partagez un groupe de règles dont vous êtes propriétaire avec un autre AWS compte en fournissant les paramètres de politique basés sur les ressources au AWS WAF APIappel PutPermissionPolicy
ou vers un équivalent CLI ou un SDK appel. Pour plus d'informations, y compris des exemples et des liens vers la documentation des autres langues disponibles, consultez PutPermissionPolicyle AWS WAF APIRéférence. Cette fonctionnalité n'est pas disponible par d'autres moyens, tels que la console ou AWS CloudFormation.
Actions politiques pour AWS WAF
Prend en charge les actions de politique : oui
Les administrateurs peuvent utiliser AWS JSONpolitiques 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'Action
élément d'une JSON politique décrit les actions que vous pouvez utiliser pour autoriser ou refuser l'accès dans une politique. Les actions politiques portent généralement le même nom que les actions associées AWS APIopération. Il existe certaines exceptions, telles que les actions avec autorisation uniquement qui n'ont pas d'opération correspondante. API Certaines opérations nécessitent également plusieurs actions dans une politique. Ces actions supplémentaires sont nommées actions dépendantes.
Intégration d’actions dans une politique afin d’accorder l’autorisation d’exécuter les opérations associées.
Pour voir la liste des AWS WAF actions et autorisations pour chacune, voir Actions définies par AWS WAF V2 dans la référence d'autorisation de service.
Actions politiques dans AWS WAF utilisez le préfixe suivant avant l'action :
wafv2
Pour indiquer plusieurs actions dans une seule déclaration, séparez-les par des virgules.
"Action": [ "wafv2:
action1
", "wafv2:action2
" ]
Vous pouvez aussi spécifier plusieurs actions à l’aide de caractères génériques (*). Par exemple, pour spécifier toutes les actions dans AWS WAF qui commencent parList
, incluent l'action suivante :
"Action": "wafv2:List*"
Pour voir des exemples de AWS WAF politiques basées sur l'identité, voir. Exemples de politiques basées sur l'identité pour AWS WAF
Actions nécessitant des paramètres d'autorisation supplémentaires
Certaines actions nécessitent des autorisations qui ne peuvent pas être complètement décrites dans la section Actions définies par AWS WAF V2 dans la référence d'autorisation de service. Cette section fournit des informations supplémentaires sur les autorisations.
Rubriques
Autorisations pour AssociateWebACL
Cette section répertorie les autorisations requises pour associer un site Web ACL à une ressource à l'aide du AWS WAF actionAssociateWebACL
.
Pour les CloudFront distributions Amazon, utilisez l'action au lieu de cette CloudFront actionUpdateDistribution
. Pour plus d'informations, consultez UpdateDistributionle Amazon CloudFront API Reference.
APIPasserelle Amazon REST API
Nécessite l'autorisation d'appeler API Gateway SetWebACL
sur le type de REST API ressource et d'appeler AWS WAF AssociateWebACL
sur un site WebACL.
{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:
region
:account-id
:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "apigateway:SetWebACL" ], "Resource": [ "arn:aws:apigateway:*::/restapis/*/stages/*" ] }
Application Load Balancer
Nécessite l'autorisation d'appeler une elasticloadbalancing:SetWebACL
action sur le type de ressource Application Load Balancer et d'appeler AWS WAF
AssociateWebACL
sur un site WebACL.
{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:
region
:account-id
:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "elasticloadbalancing:SetWebACL" ], "Resource": [ "arn:aws:elasticloadbalancing:*:account-id
:loadbalancer/app/*/*" ] }
AWS AppSync GraphQL API
Nécessite une autorisation pour appeler AWS AppSync SetWebACL
sur le type de API ressource GraphQL et pour appeler AWS WAF AssociateWebACL
sur un site WebACL.
{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:
region
:account-id
:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "appsync:SetWebACL" ], "Resource": [ "arn:aws:appsync:*:account-id
:apis/*" ] }
Groupe d'utilisateurs Amazon Cognito
Nécessite l'autorisation d'appeler l'AssociateWebACL
action Amazon Cognito sur le type de ressource du groupe d'utilisateurs et d'appeler AWS WAF AssociateWebACL
sur un site WebACL.
{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:
region
:account-id
:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "cognito-idp:AssociateWebACL" ], "Resource": [ "arn:aws:cognito-idp:*:account-id
:userpool/*" ] }
AWS App Runner web
Nécessite une autorisation pour appeler l'AssociateWebACL
action App Runner sur le type de ressource de service App Runner et pour appeler AWS WAF AssociateWebACL
sur un site WebACL.
{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:
region
:account-id
:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "apprunner:AssociateWebAcl" ], "Resource": [ "arn:aws:apprunner:*:account-id
:service/*/*" ] }
AWS Instance d'accès vérifié
Nécessite une autorisation pour appeler l'ec2:AssociateVerifiedAccessInstanceWebAcl
action sur le type de ressource d'instance Verified Access et pour appeler AWS WAF AssociateWebACL
sur un site WebACL.
{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:
region
:account-id
:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "ec2:AssociateVerifiedAccessInstanceWebAcl" ], "Resource": [ "arn:aws:ec2:*:account-id
:verified-access-instance/*" ] }
Autorisations pour DisassociateWebACL
Cette section répertorie les autorisations requises pour dissocier un site Web d'une ressource ACL à l'aide du AWS WAF actionDisassociateWebACL
.
Pour les CloudFront distributions Amazon, au lieu de cette action, utilisez l' CloudFront action UpdateDistribution
avec un ACL identifiant Web vide. Pour plus d'informations, consultez UpdateDistributionle Amazon CloudFront API Reference.
APIPasserelle Amazon REST API
Nécessite l'autorisation d'appeler API Gateway SetWebACL
sur le type de REST API ressource. Ne nécessite pas d'autorisation pour appeler AWS WAF DisassociateWebACL
.
{ "Sid": "DisassociateWebACL", "Effect": "Allow", "Action": [ "apigateway:SetWebACL" ], "Resource": [ "arn:aws:apigateway:*::/restapis/*/stages/*" ] }
Application Load Balancer
Nécessite l'autorisation d'appeler l'elasticloadbalancing:SetWebACL
action sur le type de ressource Application Load Balancer. Ne nécessite pas d'autorisation pour appeler AWS WAF DisassociateWebACL
.
{ "Sid": "DisassociateWebACL", "Effect": "Allow", "Action": [ "elasticloadbalancing:SetWebACL" ], "Resource": [ "arn:aws:elasticloadbalancing:*:
account-id
:loadbalancer/app/*/*" ] }
AWS AppSync GraphQL API
Nécessite une autorisation pour appeler AWS AppSync SetWebACL
sur le type de API ressource GraphQL. Ne nécessite pas d'autorisation pour appeler AWS WAF DisassociateWebACL
.
{ "Sid": "DisassociateWebACL", "Effect": "Allow", "Action": [ "appsync:SetWebACL" ], "Resource": [ "arn:aws:appsync:*:
account-id
:apis/*" ] }
Groupe d'utilisateurs Amazon Cognito
Nécessite l'autorisation d'appeler l'DisassociateWebACL
action Amazon Cognito sur le type de ressource du groupe d'utilisateurs et d'appeler AWS WAF DisassociateWebACL
.
{ "Sid": "DisassociateWebACL1", "Effect": "Allow", "Action": "wafv2:DisassociateWebACL", "Resource": "*" }, { "Sid": "DisassociateWebACL2", "Effect": "Allow", "Action": [ "cognito-idp:DisassociateWebACL" ], "Resource": [ "arn:aws:cognito-idp:*:
account-id
:userpool/*" ] }
AWS App Runner web
Nécessite une autorisation pour appeler l'DisassociateWebACL
action App Runner sur le type de ressource de service App Runner et pour appeler AWS WAF DisassociateWebACL
.
{ "Sid": "DisassociateWebACL1", "Effect": "Allow", "Action": "wafv2:DisassociateWebACL", "Resource": "*" }, { "Sid": "DisassociateWebACL2", "Effect": "Allow", "Action": [ "apprunner:DisassociateWebAcl" ], "Resource": [ "arn:aws:apprunner:*:
account-id
:service/*/*" ] }
AWS Instance d'accès vérifié
Nécessite une autorisation pour appeler l'ec2:DisassociateVerifiedAccessInstanceWebAcl
action sur le type de ressource d'instance Verified Access et pour appeler AWS WAF DisassociateWebACL
.
{ "Sid": "DisassociateWebACL1", "Effect": "Allow", "Action": "wafv2:DisassociateWebACL", "Resource": "*" }, { "Sid": "DisassociateWebACL2", "Effect": "Allow", "Action": [ "ec2:DisassociateVerifiedAccessInstanceWebAcl" ], "Resource": [ "arn:aws:ec2:*:
account-id
:verified-access-instance/*" ] }
Autorisations pour GetWebACLForResource
Cette section répertorie les autorisations requises pour accéder au Web ACL pour une ressource protégée à l'aide du AWS WAF actionGetWebACLForResource
.
Pour les CloudFront distributions Amazon, utilisez l'action au lieu de cette CloudFront actionGetDistributionConfig
. Pour plus d'informations, consultez GetDistributionConfigle Amazon CloudFront API Reference.
Note
GetWebACLForResource
nécessite l'autorisation d'appelerGetWebACL
. Dans ce contexte, AWS WAF utilisé GetWebACL
uniquement pour vérifier que votre compte dispose de l'autorisation nécessaire pour accéder au site Web ACL qui GetWebACLForResource
revient. Lorsque vous appelezGetWebACLForResource
, un message d'erreur peut s'afficher indiquant que votre compte n'est pas autorisé à effectuer des opérations wafv2:GetWebACL
sur la ressource. AWS WAF n'ajoute pas ce type d'erreur au AWS CloudTrail historique des événements.
Amazon API Gateway RESTAPI, Application Load Balancer et AWS AppSync GraphQL API
Exiger une autorisation pour appeler AWS WAF GetWebACLForResource
et GetWebACL
pour un site WebACL.
{ "Sid": "GetWebACLForResource", "Effect": "Allow", "Action": [ "wafv2:GetWebACLForResource", "wafv2:GetWebACL" ], "Resource": [ "arn:aws:wafv2:
region
:account-id
:regional/webacl/*/*" ] }
Groupe d'utilisateurs Amazon Cognito
Nécessite l'autorisation d'appeler l'GetWebACLForResource
action Amazon Cognito sur le type de ressource du groupe d'utilisateurs et d'appeler AWS WAF GetWebACLForResource
et GetWebACL
.
{ "Sid": "GetWebACLForResource1", "Effect": "Allow", "Action": [ "wafv2:GetWebACLForResource", "wafv2:GetWebACL" ], "Resource": [ "arn:aws:wafv2:
region
:account-id
:regional/webacl/*/*" ] }, { "Sid": "GetWebACLForResource2", "Effect": "Allow", "Action": [ "cognito-idp:GetWebACLForResource" ], "Resource": [ "arn:aws:cognito-idp:*:account-id
:userpool/*" ] }
AWS App Runner web
Nécessite une autorisation pour appeler l'DescribeWebAclForService
action App Runner sur le type de ressource de service App Runner et pour appeler AWS WAF
GetWebACLForResource
et GetWebACL
.
{ "Sid": "GetWebACLForResource1", "Effect": "Allow", "Action": [ "wafv2:GetWebACLForResource", "wafv2:GetWebACL" ], "Resource": [ "arn:aws:wafv2:
region
:account-id
:regional/webacl/*/*" ] }, { "Sid": "GetWebACLForResource2", "Effect": "Allow", "Action": [ "apprunner:DescribeWebAclForService" ], "Resource": [ "arn:aws:apprunner:*:account-id
:service/*/*" ] }
AWS Instance d'accès vérifié
Nécessite une autorisation pour appeler l'ec2:GetVerifiedAccessInstanceWebAcl
action sur le type de ressource d'instance Verified Access et pour appeler AWS WAF GetWebACLForResource
et GetWebACL
.
{ "Sid": "GetWebACLForResource1", "Effect": "Allow", "Action": [ "wafv2:GetWebACLForResource", "wafv2:GetWebACL" ], "Resource": [ "arn:aws:wafv2:
region
:account-id
:regional/webacl/*/*" ] }, { "Sid": "GetWebACLForResource2", "Effect": "Allow", "Action": [ "ec2:GetVerifiedAccessInstanceWebAcl" ], "Resource": [ "arn:aws:ec2:*:account-id
:verified-access-instance/*" ] }
Autorisations pour ListResourcesForWebACL
Cette section répertorie les autorisations requises pour récupérer la liste des ressources protégées pour un site Web ACL à l'aide du AWS WAF actionListResourcesForWebACL
.
Pour les CloudFront distributions Amazon, utilisez l'action au lieu de cette CloudFront actionListDistributionsByWebACLId
. Pour plus d'informations, consultez ListDistributionsByWebACLIdle Amazon CloudFront API Reference.
Amazon API Gateway RESTAPI, Application Load Balancer et AWS AppSync GraphQL API
Exiger une autorisation pour appeler AWS WAF ListResourcesForWebACL
pour un site WebACL.
{ "Sid": "ListResourcesForWebACL", "Effect": "Allow", "Action": [ "wafv2:ListResourcesForWebACL" ], "Resource": [ "arn:aws:wafv2:
region
:account-id
:regional/webacl/*/*" ] }
Groupe d'utilisateurs Amazon Cognito
Nécessite l'autorisation d'appeler l'ListResourcesForWebACL
action Amazon Cognito sur le type de ressource du groupe d'utilisateurs et d'appeler AWS WAF
ListResourcesForWebACL
.
{ "Sid": "ListResourcesForWebACL1", "Effect": "Allow", "Action": [ "wafv2:ListResourcesForWebACL" ], "Resource": [ "arn:aws:wafv2:
region
:account-id
:regional/webacl/*/*" ] }, { "Sid": "ListResourcesForWebACL2", "Effect": "Allow", "Action": [ "cognito-idp:ListResourcesForWebACL" ], "Resource": [ "arn:aws:cognito-idp:*:account-id
:userpool/*" ] }
AWS App Runner web
Nécessite une autorisation pour appeler l'ListAssociatedServicesForWebAcl
action App Runner sur le type de ressource de service App Runner et pour appeler AWS WAF ListResourcesForWebACL
.
{ "Sid": "ListResourcesForWebACL1", "Effect": "Allow", "Action": [ "wafv2:ListResourcesForWebACL" ], "Resource": [ "arn:aws:wafv2:
region
:account-id
:regional/webacl/*/*" ] }, { "Sid": "ListResourcesForWebACL2", "Effect": "Allow", "Action": [ "apprunner:ListAssociatedServicesForWebAcl" ], "Resource": [ "arn:aws:apprunner:*:account-id
:service/*/*" ] }
AWS Instance d'accès vérifié
Nécessite une autorisation pour appeler l'ec2:DescribeVerifiedAccessInstanceWebAclAssociations
action sur le type de ressource d'instance Verified Access et pour appeler AWS WAF
ListResourcesForWebACL
.
{ "Sid": "ListResourcesForWebACL1", "Effect": "Allow", "Action": [ "wafv2:ListResourcesForWebACL" ], "Resource": [ "arn:aws:wafv2:
region
:account-id
:regional/webacl/*/*" ] }, { "Sid": "ListResourcesForWebACL2", "Effect": "Allow", "Action": [ "ec2:DescribeVerifiedAccessInstanceWebAclAssociations" ], "Resource": [ "arn:aws:ec2:*:account-id
:verified-access-instance/*" ] }
Ressources politiques pour AWS WAF
Prend en charge les ressources de politique : oui
Les administrateurs peuvent utiliser AWS JSONpolitiques 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 Resource
JSON de stratégie indique le ou les objets auxquels s'applique l'action. Les instructions doivent inclure un élément Resource
ou NotResource
. Il est recommandé de spécifier une ressource en utilisant son Amazon Resource Name (ARN). Vous pouvez le faire pour des actions qui prennent en charge un type de ressource spécifique, connu sous la dénomination autorisations de niveau ressource.
Pour les actions qui ne sont pas compatibles avec les autorisations de niveau ressource, telles que les opérations de liste, utilisez un caractère générique (*) afin d’indiquer que l’instruction s’applique à toutes les ressources.
"Resource": "*"
Pour voir la liste des AWS WAF types de ressources et leurs ARNs caractéristiques, voir Ressources définies par AWS WAF V2 dans la référence d'autorisation de service. Pour savoir quelles actions vous pouvez définir pour chaque ressource, voir Actions définies par ARN AWS WAF V2. Pour autoriser ou refuser l'accès à un sous-ensemble de AWS WAF ressources, incluez ARN la ressource dans l'resource
élément de votre politique.
Le ARNs de AWS WAF wafv2
les ressources ont le format suivant :
arn:
partition
:wafv2:region
:account-id
:scope
/resource-type
/resource-name
/resource-id
Pour obtenir des informations générales sur les ARN spécifications, consultez Amazon Resource Names (ARNs) dans le Référence générale d'Amazon Web Services.
La liste suivante répertorie les exigences spécifiques ARNs aux wafv2
ressources :
-
region
Pour : AWS WAF ressources que vous utilisez pour protéger les CloudFront distributions Amazon, définissez ce paramètre surus-east-1
. Sinon, définissez ce paramètre sur la région que vous utilisez avec vos ressources régionales protégées. -
scope
: définissez le champ d'applicationglobal
pour une utilisation avec une CloudFront distribution Amazon ouregional
pour une utilisation avec l'une des ressources régionales qui AWS WAF soutient. Les ressources régionales sont un Amazon API Gateway RESTAPI, un Application Load Balancer, un AWS AppSync GraphQLAPI, un groupe d'utilisateurs Amazon Cognito, un AWS App Runner un service, et un AWS Instance d'accès vérifié. -
resource-type
: Spécifiez l'une des valeurs suivantes :webacl
rulegroup
,ipset
,regexpatternset
, oumanagedruleset
. -
resource-name
: Spécifiez le nom que vous avez donné au AWS WAF resource, ou spécifiez un caractère générique (*
) pour indiquer toutes les ressources qui répondent aux autres spécifications duARN. Vous devez soit spécifier le nom et l'ID de la ressource, soit spécifier un caractère générique pour les deux. -
resource-id
: Spécifiez l'ID du AWS WAF resource, ou spécifiez un caractère générique (*
) pour indiquer toutes les ressources qui répondent aux autres spécifications duARN. Vous devez soit spécifier le nom et l'ID de la ressource, soit spécifier un caractère générique pour les deux.
Par exemple, ce qui suit ARN indique tous les sites Web ACLs ayant une portée régionale pour le compte 111122223333
dans Region us-west-1
:
arn:aws:wafv2:us-west-1:111122223333:regional/webacl/*/*
Ce qui suit ARN indique le groupe de règles nommé MyIPManagementRuleGroup
avec une portée globale pour le compte 111122223333
dans Region us-east-1
:
arn:aws:wafv2:us-east-1:111122223333:global/rulegroup/MyIPManagementRuleGroup/1111aaaa-bbbb-cccc-dddd-example-id
Pour voir des exemples de AWS WAF politiques basées sur l'identité, voir. Exemples de politiques basées sur l'identité pour AWS WAF
Clés de conditions de politique pour AWS WAF
Prend en charge les clés de condition de politique spécifiques au service : oui
Les administrateurs peuvent utiliser AWS JSONpolitiques 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
(ou le bloc Condition
) vous permet de spécifier des conditions lorsqu’une instruction est appliquée. L’élément Condition
est facultatif. Vous pouvez créer des expressions conditionnelles qui utilisent des opérateurs de condition, tels que les signes égal ou inférieur à, pour faire correspondre la condition de la politique aux valeurs de la demande.
Si vous spécifiez plusieurs Condition
éléments dans une instruction ou plusieurs clés dans un seul Condition
élément, AWS les évalue à l'aide d'une AND
opération logique. Si vous spécifiez plusieurs valeurs pour une seule clé de condition, AWS évalue la condition à l'aide d'une OR
opération logique. Toutes les conditions doivent être remplies avant que les autorisations associées à l’instruction ne soient accordées.
Vous pouvez aussi utiliser des variables d’espace réservé quand vous spécifiez des conditions. Par exemple, vous pouvez autoriser un IAM utilisateur à accéder à une ressource uniquement si celle-ci est étiquetée avec son nom IAM d'utilisateur. Pour plus d'informations, consultez IAMla section Éléments de politique : variables et balises dans le Guide de IAM l'utilisateur.
AWS prend en charge les clés de condition globales et les clés de condition spécifiques au service. Pour tout voir AWS clés de condition globales, voir AWS clés contextuelles des conditions globales dans le guide de IAM l'utilisateur.
En outre, AWS WAF prend en charge les clés de condition suivantes que vous pouvez utiliser pour filtrer avec précision vos IAM politiques :
-
wafv2 : LogDestinationResource
Cette clé de condition utilise une spécification Amazon Resource Name (ARN) pour la destination de journalisation. Il s'agit de ARN celle que vous fournissez pour la destination de journalisation lorsque vous utilisez l'RESTAPIappel
PutLoggingConfiguration
.Vous pouvez spécifier explicitement un ARN et vous pouvez spécifier un filtrage pour leARN. L'exemple suivant indique le filtrage pour les compartiments Amazon S3 dotés ARNs d'un emplacement et d'un préfixe spécifiques.
"Condition": { "ArnLike": { "wafv2:LogDestinationResource": "arn:aws:s3:::aws-waf-logs-suffix/custom-prefix/*" } }
-
wafv2 : LogScope
Cette clé de condition définit la source de la configuration de journalisation dans une chaîne. Actuellement, ce paramètre est toujours défini sur la valeur par défaut de
Customer
, ce qui indique que vous détenez et gérez la destination de journalisation.
Pour voir la liste des AWS WAF clés de condition, voir Clés de condition pour AWS WAF V2 dans la référence d'autorisation de service. Pour savoir avec quelles actions et ressources vous pouvez utiliser une clé de condition, voir Actions définies par AWS WAF V2.
Pour voir des exemples de AWS WAF politiques basées sur l'identité, voir. Exemples de politiques basées sur l'identité pour AWS WAF
ACLsdans AWS WAF
Supports ACLs : Non
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. ACLssont similaires aux politiques basées sur les ressources, bien qu'elles n'utilisent pas le format du document JSON de stratégie.
ABACavec AWS WAF
Supports ABAC (balises dans les politiques) : Partiel
Le contrôle d'accès basé sur les attributs (ABAC) est une stratégie d'autorisation qui définit les autorisations en fonction des attributs. Entrée AWS, ces attributs sont appelés balises. Vous pouvez associer des tags à IAM des entités (utilisateurs ou rôles) et à de nombreuses AWS ressources. Le balisage des entités et des ressources est la première étape deABAC. Vous concevez ensuite des ABAC politiques pour autoriser les opérations lorsque le tag du principal correspond à celui de la ressource à laquelle il essaie d'accéder.
ABACest utile dans les environnements qui se développent rapidement et aide dans les situations où la gestion des politiques devient fastidieuse.
Pour contrôler l’accès basé sur des étiquettes, vous devez fournir les informations d’étiquette dans l’élément de condition d’une politique utilisant les clés de condition aws:ResourceTag/
, key-name
aws:RequestTag/
ou key-name
aws:TagKeys
.
Si un service prend en charge les trois clés de condition pour tous les types de ressources, alors la valeur pour ce service est Oui. Si un service prend en charge les trois clés de condition pour certains types de ressources uniquement, la valeur est Partielle.
Pour plus d'informationsABAC, voir Qu'est-ce que c'est ABAC ? dans le guide de IAM l'utilisateur. Pour consulter un didacticiel présentant les étapes de configurationABAC, voir Utiliser le contrôle d'accès basé sur les attributs (ABAC) dans le guide de l'IAMutilisateur.
Utilisation d'informations d'identification temporaires avec AWS WAF
Prend en charge les informations d’identification temporaires : oui
Momentanée Services AWS ne fonctionnent pas lorsque vous vous connectez à l'aide d'informations d'identification temporaires. Pour plus d'informations, y compris lesquelles Services AWS utilisez des informations d'identification temporaires, voir Services AWS qui fonctionnent avec IAM le Guide de l'IAMutilisateur.
Vous utilisez des informations d'identification temporaires si vous vous connectez au AWS Management Console en utilisant n'importe quelle méthode, à l'exception du nom d'utilisateur et du mot de passe. Par exemple, lorsque vous accédez AWS à l'aide du lien d'authentification unique (SSO) de votre entreprise, ce processus crée automatiquement des informations d'identification temporaires. Vous créez également automatiquement des informations d’identification temporaires lorsque vous vous connectez à la console en tant qu’utilisateur, puis changez de rôle. Pour plus d'informations sur le changement de rôle, consultez la section Passage à un rôle (console) dans le guide de IAM l'utilisateur.
Vous pouvez créer manuellement des informations d'identification temporaires à l'aide du AWS CLI or AWS API. Vous pouvez ensuite utiliser ces informations d'identification temporaires pour accéder AWS. AWS recommande de générer dynamiquement des informations d'identification temporaires au lieu d'utiliser des clés d'accès à long terme. Pour plus d'informations, consultez la section Informations d'identification de sécurité temporaires dans IAM.
Transférer les sessions d'accès pour le service AWS WAF
Prend en charge les sessions d'accès transféré (FAS) : Oui
Lorsque vous utilisez un IAM utilisateur ou un rôle pour effectuer des actions dans AWS, vous êtes considéré comme un directeur. Lorsque vous utilisez certains services, vous pouvez effectuer une action qui initie une autre action dans un autre service. FASutilise les autorisations du principal appelant un Service AWS, combiné à la demande Service AWS pour adresser des demandes aux services en aval. FASles demandes ne sont effectuées que lorsqu'un service reçoit une demande nécessitant des interactions avec d'autres Services AWS ou des ressources à compléter. Dans ce cas, vous devez disposer d’autorisations nécessaires pour effectuer les deux actions. Pour plus de détails sur les politiques relatives FAS aux demandes, consultez la section Transférer les sessions d'accès.
Rôles de service pour AWS WAF
Prend en charge les rôles de service : oui
Un rôle de service est un IAMrôle qu'un service assume pour effectuer des actions en votre nom. Un IAM administrateur peut créer, modifier et supprimer un rôle de service de l'intérieurIAM. Pour plus d'informations, voir Création d'un rôle pour déléguer des autorisations à un Service AWS dans le guide de l'utilisateur IAM.
Avertissement
La modification des autorisations pour un rôle de service peut être interrompue AWS WAF fonctionnalité. Modifier les rôles de service uniquement lorsque AWS WAF fournit des conseils pour ce faire.
Rôles liés à un service pour AWS WAF
Prend en charge les rôles liés aux services : Oui
Un rôle lié à un service est un type de rôle de service lié à un Service AWS. Le service peut assumer le rôle d'effectuer une action en votre nom. Les rôles liés à un service apparaissent dans votre Compte AWS et appartiennent au service. Un IAM administrateur peut consulter, mais pas modifier les autorisations pour les rôles liés à un service.
Pour plus de détails sur la création ou la gestion AWS WAF rôles liés à un service, voir. Utilisation de rôles liés à un service pour AWS WAF