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.
Blocage des demandes dont le AWS WAF jeton n'est pas valide
Cette section explique comment bloquer les demandes de connexion dont les jetons sont manquants lors de l'utilisation du AWS WAF mobileSDK.
Lorsque vous utilisez la menace intelligente AWS Managed RulesAWSManagedRulesACFPRuleSet
, les groupes de règles et AWSManagedRulesATPRuleSet
AWSManagedRulesBotControlRuleSet
, les groupes de règles invoquent la gestion des AWS WAF jetons pour évaluer le statut du jeton de requête Web et étiqueter les demandes en conséquence.
Note
L'étiquetage des jetons s'applique uniquement aux demandes Web que vous évaluez à l'aide de l'un de ces groupes de règles gérés.
Pour plus d'informations sur l'étiquetage appliqué par la gestion des jetons, consultez la section précédente,Types d'étiquettes à jetons dans AWS WAF.
Les groupes de règles gérés d'atténuation intelligente des menaces gèrent ensuite les exigences en matière de jetons comme suit :
-
La
AWSManagedRulesACFPRuleSet
AllRequests
règle est configurée pour exécuter le Challenge action contre toutes les demandes, bloquant efficacement celles qui ne portent pas le labelaccepted
jeton. -
Le
AWSManagedRulesATPRuleSet
bloque les demandes portant le libellé durejected
jeton, mais il ne bloque pas les demandes portant le libellé duabsent
jeton. -
Le niveau de protection
AWSManagedRulesBotControlRuleSet
ciblé pose un défi aux clients après avoir envoyé cinq demandes sans étiquette deaccepted
jeton. Il ne bloque pas une demande individuelle dont le jeton n'est pas valide. Le niveau de protection commun du groupe de règles ne gère pas les exigences en matière de jetons.
Pour plus de détails sur les groupes de règles de menaces intelligentesAWS WAF Groupe de règles Fraud Control : création de comptes, prévention des fraudes (ACFP), reportez-vous aux sections AWS WAF Groupe de règles de prévention du piratage de comptes Fraud Control (ATP) etAWS WAF Groupe de règles Bot Control.
Pour bloquer les demandes auxquelles il manque des jetons lors de l'utilisation du Bot Control ou du groupe de règles ATP géré
Avec le Bot Control et les groupes de ATP règles, il est possible qu'une demande sans jeton valide quitte l'évaluation du groupe de règles et continue d'être évaluée par le WebACL.
Pour bloquer toutes les demandes dont le jeton est manquant ou dont le jeton est rejeté, ajoutez une règle à exécuter immédiatement après le groupe de règles géré afin de capturer et de bloquer les demandes que le groupe de règles ne gère pas pour vous.
Voici un exemple de JSON liste pour un site Web ACL qui utilise le groupe de règles ATP géré. Le Web ACL a ajouté une règle permettant de capturer l'awswaf:managed:token:absent
étiquette et de la gérer. La règle limite son évaluation aux demandes Web destinées au point de terminaison de connexion, afin de correspondre à l'étendue du groupe de ATP règles. La règle ajoutée est indiquée en gras.
{ "Name": "exampleWebACL", "Id": "55555555-6666-7777-8888-999999999999", "ARN": "arn:aws:wafv2:us-east-1:111111111111:regional/webacl/exampleWebACL/55555555-4444-3333-2222-111111111111", "DefaultAction": { "Allow": {} }, "Description": "", "Rules": [ { "Name": "AWS-AWSManagedRulesATPRuleSet", "Priority": 1, "Statement": { "ManagedRuleGroupStatement": { "VendorName": "AWS", "Name": "AWSManagedRulesATPRuleSet", "ManagedRuleGroupConfigs": [ { "AWSManagedRulesATPRuleSet": { "LoginPath": "/web/login", "RequestInspection": { "PayloadType": "JSON", "UsernameField": { "Identifier": "/form/username" }, "PasswordField": { "Identifier": "/form/password" } }, "ResponseInspection": { "StatusCode": { "SuccessCodes": [ 200 ], "FailureCodes": [ 401, 403, 500 ] } } } } ] } }, "OverrideAction": { "None": {} }, "VisibilityConfig": { "SampledRequestsEnabled": true, "CloudWatchMetricsEnabled": true, "MetricName": "AWS-AWSManagedRulesATPRuleSet" } }, { "Name": "RequireTokenForLogins", "Priority": 2, "Statement": { "AndStatement": { "Statements": [ { "Statement": { "LabelMatchStatement": { "Scope": "LABEL", "Key": "awswaf:managed:token:absent" } } }, { "ByteMatchStatement": { "SearchString": "/web/login", "FieldToMatch": { "UriPath": {} }, "TextTransformations": [ { "Priority": 0, "Type": "NONE" } ], "PositionalConstraint": "STARTS_WITH" } }, { "ByteMatchStatement": { "SearchString": "POST", "FieldToMatch": { "Method": {} }, "TextTransformations": [ { "Priority": 0, "Type": "NONE" } ], "PositionalConstraint": "EXACTLY" } } ] } }, "Action": { "Block": {} }, "VisibilityConfig": { "SampledRequestsEnabled": true, "CloudWatchMetricsEnabled": true, "MetricName": "RequireTokenForLogins" } } ], "VisibilityConfig": { "SampledRequestsEnabled": true, "CloudWatchMetricsEnabled": true, "MetricName": "exampleWebACL" }, "Capacity": 51, "ManagedByFirewallManager": false, "RetrofittedByFirewallManager": false, "LabelNamespace": "awswaf:111111111111:webacl:exampleWebACL:" }