Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memblokir permintaan yang tidak valid AWS WAF token
Bagian ini menjelaskan cara memblokir permintaan login yang kehilangan tokennya saat menggunakan AWS WAF ponselSDK.
Ketika Anda menggunakan ancaman cerdas AWS Grup aturan Aturan Terkelola AWSManagedRulesACFPRuleSet
AWSManagedRulesATPRuleSet
,AWSManagedRulesBotControlRuleSet
, dan, grup aturan dipanggil AWS WAF manajemen 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,. Jenis label token di AWS WAF
Kelompok aturan terkelola mitigasi ancaman cerdas kemudian menangani persyaratan token sebagai berikut:
-
AWSManagedRulesACFPRuleSet
AllRequests
Aturan dikonfigurasi untuk menjalankan Challenge tindakan terhadap semua permintaan, secara efektif memblokir apa pun yang tidak memiliki labelaccepted
token. -
Permintaan
AWSManagedRulesATPRuleSet
blok yang memiliki labelrejected
token, tetapi tidak memblokir permintaan dengan labelabsent
token. -
Tingkat perlindungan yang
AWSManagedRulesBotControlRuleSet
ditargetkan menantang klien setelah mereka mengirim lima permintaan tanpa labelaccepted
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 Fraud Control pembuatan akun pencegahan penipuan (ACFP) kelompok aturan, 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 Kontrol Bot atau grup aturan ATP terkelola
Dengan Kontrol Bot dan grup ATP aturan, dimungkinkan permintaan tanpa token yang valid untuk keluar dari evaluasi grup aturan dan terus dievaluasi oleh webACL.
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 JSON daftar untuk web ACL yang menggunakan grup aturan ATP terkelola. 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 ATP aturan. 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:" }