Memblokir permintaan yang tidak memiliki token yang valid - AWS WAF, AWS Firewall Manager, dan AWS Shield Advanced

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Memblokir permintaan yang tidak memiliki token yang valid

Saat Anda menggunakan grup aturan Aturan AWS Terkelola ancaman cerdas AWSManagedRulesACFPRuleSet AWSManagedRulesATPRuleSetAWSManagedRulesBotControlRuleSet, dan, grup aturan akan memanggil manajemen AWS WAF token untuk mengevaluasi status token permintaan web dan memberi label permintaan yang sesuai.

catatan

Pelabelan token hanya diterapkan pada permintaan web yang Anda evaluasi menggunakan salah satu grup aturan terkelola ini.

Untuk informasi tentang pelabelan yang diterapkan manajemen token, lihat bagian sebelumnya,. Pelabelan token oleh kelompok aturan terkelola mitigasi ancaman cerdas

Kelompok aturan terkelola mitigasi ancaman cerdas kemudian menangani persyaratan token sebagai berikut:

  • AWSManagedRulesACFPRuleSetAllRequestsAturan dikonfigurasi untuk menjalankan Challenge tindakan terhadap semua permintaan, secara efektif memblokir semua yang tidak memiliki label accepted token.

  • Permintaan AWSManagedRulesATPRuleSet blok yang memiliki label rejected token, tetapi tidak memblokir permintaan dengan label absent token.

  • Tingkat perlindungan yang AWSManagedRulesBotControlRuleSet ditargetkan menantang klien setelah mereka mengirim lima permintaan tanpa label accepted token. Itu tidak memblokir permintaan individu yang tidak memiliki token yang valid. Tingkat perlindungan umum grup aturan tidak mengelola persyaratan token.

Untuk detail tambahan tentang kelompok aturan ancaman cerdas, lihatAWS WAF Grup aturan pencegahan penipuan (ACFP) pembuatan akun Kontrol Penipuan, AWS WAF Kelompok aturan pencegahan pengambilalihan akun Kontrol Penipuan (ATP) danAWS WAF Grup aturan Bot Control.

Untuk memblokir permintaan yang tidak memiliki token saat menggunakan Bot Control atau grup aturan terkelola ATP

Dengan Bot Control dan grup aturan ATP, dimungkinkan untuk permintaan tanpa token yang valid untuk keluar dari evaluasi grup aturan dan terus dievaluasi oleh ACL web.

Untuk memblokir semua permintaan yang tidak ada tokennya atau tokennya ditolak, tambahkan aturan untuk dijalankan segera setelah grup aturan terkelola menangkap dan memblokir permintaan yang tidak ditangani oleh grup aturan untuk Anda.

Berikut ini adalah contoh daftar JSON untuk ACL web yang menggunakan grup aturan terkelola ATP. Web ACL memiliki aturan tambahan untuk menangkap awswaf:managed:token:absent label dan menanganinya. Aturan mempersempit evaluasinya ke permintaan web yang masuk ke titik akhir login, agar sesuai dengan ruang lingkup grup aturan ATP. Aturan yang ditambahkan tercantum dalam huruf tebal.

{ "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, "LabelNamespace": "awswaf:111111111111:webacl:exampleWebACL:" }