

**Memperkenalkan pengalaman konsol baru untuk AWS WAF**

Anda sekarang dapat menggunakan pengalaman yang diperbarui untuk mengakses AWS WAF fungsionalitas di mana saja di konsol. Untuk detail selengkapnya, lihat [Bekerja dengan konsol](https://docs.aws.amazon.com/waf/latest/developerguide/working-with-console.html). 

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

# Lalu lintas paket AWS WAF perlindungan pencatatan (web ACL)
<a name="logging"></a>

Bagian ini menjelaskan opsi pencatatan untuk paket AWS WAF perlindungan Anda (web ACLs). 

Anda dapat mengaktifkan logging untuk mendapatkan informasi rinci tentang lalu lintas yang dianalisis oleh ACL web Anda. Informasi yang dicatat mencakup waktu AWS WAF menerima permintaan web dari AWS sumber daya Anda, informasi terperinci tentang permintaan, dan detail tentang aturan yang cocok dengan permintaan tersebut. Anda dapat mengirim log paket perlindungan (web ACL) ke grup CloudWatch log Amazon Logs, bucket Amazon Simple Storage Service (Amazon S3), atau aliran pengiriman Amazon Data Firehose.

Selain log yang dapat Anda aktifkan untuk paket perlindungan Anda (web ACLs), AWS juga menggunakan log layanan situs web atau lalu lintas aplikasi yang diproses oleh AWS WAF untuk memberikan dukungan dan melindungi keamanan AWS pelanggan dan layanan.

**catatan**  
Konfigurasi logging protection pack (web ACL) hanya memengaruhi AWS WAF log. Secara khusus, konfigurasi bidang yang disunting untuk pencatatan tidak berdampak pada pengambilan sampel permintaan atau pengumpulan data Security Lake. Anda dapat mengecualikan bidang dari pengumpulan atau pengambilan sampel dengan mengonfigurasi perlindungan data paket perlindungan (web ACL). Selain perlindungan data, pengumpulan data Security Lake dikonfigurasi sepenuhnya melalui layanan Security Lake. 

**Topics**
+ [Harga untuk informasi lalu lintas paket perlindungan pencatatan (web ACL)](logging-pricing.md)
+ [AWS WAF tujuan pencatatan](logging-destinations.md)
+ [Mengkonfigurasi logging untuk paket perlindungan (web ACL)](logging-management-configure.md)
+ [Menemukan catatan paket perlindungan Anda (web ACL)](logging-management.md)
+ [Bidang log untuk lalu lintas paket perlindungan (web ACL)](logging-fields.md)
+ [Contoh log untuk lalu lintas paket perlindungan (web ACL)](logging-examples.md)

**Opsi pengumpulan dan analisis data lainnya**  
Selain pencatatan, Anda dapat mengaktifkan opsi berikut untuk pengumpulan dan analisis data: 
+ **Amazon Security Lake** - Anda dapat mengonfigurasi Security Lake untuk mengumpulkan data paket perlindungan (web ACL). Security Lake mengumpulkan data log dan peristiwa dari berbagai sumber untuk normalisasi, analisis, dan manajemen. Untuk informasi tentang opsi ini, lihat [Apa itu Amazon Security Lake?](https://docs.aws.amazon.com/security-lake/latest/userguide/what-is-security-lake.html) dan [Mengumpulkan data dari AWS layanan](https://docs.aws.amazon.com/security-lake/latest/userguide/internal-sources.html) di *panduan pengguna Amazon Security Lake*. 

  AWS WAF tidak mengenakan biaya untuk menggunakan opsi ini. Untuk informasi harga, lihat Harga [Security Lake](https://aws.amazon.com/security-lake/pricing/) dan [Cara penetapan harga Security Lake](https://docs.aws.amazon.com/security-lake/latest/userguide/estimating-costs.html) di *panduan pengguna Amazon Security Lake*. 
+ **Permintaan pengambilan sampel** — Anda dapat mengonfigurasi paket perlindungan Anda (web ACL) untuk mengambil sampel permintaan web yang dievaluasi, untuk mendapatkan gambaran tentang jenis lalu lintas yang diterima aplikasi Anda. Untuk informasi tentang opsi ini, lihat[Melihat contoh permintaan web](web-acl-testing-view-sample.md). 

# Harga untuk informasi lalu lintas paket perlindungan pencatatan (web ACL)
<a name="logging-pricing"></a>

Bagian ini menjelaskan pertimbangan harga untuk menggunakan log lalu lintas paket perlindungan (web ACL).

Anda dikenakan biaya untuk informasi lalu lintas paket perlindungan pencatatan (ACL web) sesuai dengan biaya yang terkait dengan setiap jenis tujuan log. Biaya ini merupakan tambahan dari biaya untuk menggunakan AWS WAF. Biaya Anda dapat bervariasi tergantung pada faktor-faktor seperti jenis tujuan yang Anda pilih dan jumlah data yang Anda log. 

Berikut ini menyediakan tautan ke informasi harga untuk setiap jenis tujuan pencatatan:
+ **CloudWatch Log** — Biaya adalah untuk pengiriman log yang dijual. Lihat [Harga CloudWatch Log Amazon](https://aws.amazon.com/cloudwatch/pricing/). Di bawah **Tingkat Berbayar**, pilih tab **Log**, lalu di bawah **Vended Logs**, lihat informasi untuk **Pengiriman ke CloudWatch Log**.
+ **Bucket Amazon S3** — Biaya Amazon S3 adalah biaya gabungan untuk pengiriman CloudWatch log penjual Log ke ember Amazon S3 dan untuk menggunakan Amazon S3. 
  + Untuk Amazon S3, lihat Harga [Amazon S3](https://aws.amazon.com/s3/pricing/). 
  + Untuk pengiriman CloudWatch log terjual Log ke Amazon S3, lihat Harga Log [ CloudWatch Amazon](https://aws.amazon.com/cloudwatch/pricing/). Di bawah **Tingkat Berbayar**, pilih tab **Log**, lalu di bawah **Vended Logs**, lihat informasi untuk **Pengiriman ke** S3
+ **Firehose — Lihat** Harga [Amazon Data Firehose](https://aws.amazon.com/kinesis/data-firehose/pricing/).

Untuk informasi tentang AWS WAF harga, lihat [AWS WAF Harga](https://aws.amazon.com/waf/pricing/). 

# AWS WAF tujuan pencatatan
<a name="logging-destinations"></a>

Bagian ini menjelaskan opsi pencatatan yang dapat Anda pilih untuk AWS WAF log Anda. Setiap bagian menyediakan panduan untuk mengonfigurasi logging termasuk informasi tentang perilaku apa pun yang spesifik untuk jenis tujuan. Setelah mengonfigurasi tujuan pencatatan, Anda dapat memberikan spesifikasinya ke konfigurasi logging paket perlindungan (web ACL) Anda untuk mulai masuk ke sana.

**Topics**
+ [CloudWatch Log](logging-cw-logs.md)
+ [Amazon S3](logging-s3.md)
+ [Firehouse](logging-kinesis.md)

# Mengirim log lalu lintas paket perlindungan (ACL web) ke grup CloudWatch log Amazon Logs
<a name="logging-cw-logs"></a>

Topik ini memberikan informasi untuk mengirim log lalu lintas paket perlindungan (ACL web) Anda ke grup CloudWatch log Log. 

**catatan**  
Anda dikenakan biaya untuk logging selain biaya untuk menggunakan AWS WAF. Untuk informasi, lihat [Harga untuk informasi lalu lintas paket perlindungan pencatatan (web ACL)](logging-pricing.md).

Untuk mengirim log ke Amazon CloudWatch Logs, Anda membuat grup CloudWatch log Log. Saat Anda mengaktifkan login AWS WAF, Anda memberikan grup log ARN. Setelah mengaktifkan pencatatan untuk paket perlindungan (web ACL), AWS WAF kirimkan log ke grup CloudWatch log Log di aliran log. 

Saat menggunakan CloudWatch Log, Anda dapat menjelajahi log untuk paket perlindungan (web ACL) di AWS WAF konsol. Di halaman paket perlindungan (web ACL) Anda, pilih tab **Wawasan log**. Opsi ini merupakan tambahan dari wawasan logging yang disediakan untuk CloudWatch Log melalui CloudWatch konsol. 

Konfigurasikan log grup log untuk log paket AWS WAF perlindungan (web ACL) di Wilayah yang sama dengan paket perlindungan (web ACL) dan gunakan akun yang sama seperti yang Anda gunakan untuk mengelola paket perlindungan (web ACL). Untuk informasi tentang mengonfigurasi grup CloudWatch log Log, lihat [Bekerja dengan Grup Log dan Aliran Log](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html).

## Kuota untuk grup CloudWatch log Log
<a name="logging-cw-logs-quotas"></a>

CloudWatch Log memiliki kuota maksimum default untuk throughput, dibagikan di semua grup log dalam suatu wilayah, yang dapat Anda minta untuk ditingkatkan. Jika persyaratan pencatatan Anda terlalu tinggi untuk pengaturan throughput saat ini, Anda akan melihat metrik pembatasan untuk `PutLogEvents` akun Anda. Untuk melihat limit di konsol Service Quotas dan meminta peningkatan, lihat kuota [CloudWatch Log PutLogEvents ](https://console.aws.amazon.com/servicequotas/home/services/logs/quotas/L-7E1FAE88).

## Penamaan grup log
<a name="logging-cw-logs-naming"></a>

Nama grup log Anda harus dimulai dengan `aws-waf-logs-` dan dapat diakhiri dengan akhiran apa pun yang Anda suka, misalnya,`aws-waf-logs-testLogGroup2`.

Format ARN yang dihasilkan adalah sebagai berikut: 

```
arn:aws:logs:Region:account-id:log-group:aws-waf-logs-log-group-suffix
```

Aliran log memiliki format penamaan berikut: 

```
Region_web-acl-name_log-stream-number
```

Berikut ini menunjukkan contoh aliran log untuk paket perlindungan (web ACL) `TestWebACL` di Wilayah`us-east-1`. 

```
us-east-1_TestWebACL_0
```

## Izin yang diperlukan untuk mempublikasikan log ke CloudWatch Log
<a name="logging-cw-logs-permissions"></a>

Mengkonfigurasi log lalu lintas paket perlindungan (ACL web) untuk grup CloudWatch log Log memerlukan pengaturan izin yang dijelaskan di bagian ini. Izin ditetapkan untuk Anda saat Anda menggunakan salah satu kebijakan terkelola akses AWS WAF penuh, `AWSWAFConsoleFullAccess` atau`AWSWAFFullAccess`. Jika Anda ingin mengelola akses berbutir halus ke pencatatan dan AWS WAF sumber daya, Anda dapat mengatur sendiri izin tersebut. Untuk informasi tentang mengelola izin, lihat [Manajemen akses untuk AWS sumber daya](https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) di *Panduan Pengguna IAM*. Untuk informasi tentang kebijakan AWS WAF terkelola, lihat[AWS kebijakan terkelola untuk AWS WAF](security-iam-awsmanpol.md). 

Izin ini memungkinkan Anda mengubah konfigurasi logging protection pack (web ACL), mengonfigurasi pengiriman CloudWatch log untuk Log, dan untuk mengambil informasi tentang grup log Anda. Izin ini harus dilampirkan ke pengguna yang Anda gunakan untuk mengelola AWS WAF. 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "wafv2:PutLoggingConfiguration",
                "wafv2:DeleteLoggingConfiguration"
            ],
            "Resource": [
                "*"
            ],
            "Effect": "Allow",
            "Sid": "LoggingConfigurationAPI"
        },
        {
            "Sid": "WebACLLoggingCWL",
            "Action": [
                "logs:CreateLogDelivery",
                "logs:DeleteLogDelivery",
                "logs:PutResourcePolicy",
                "logs:DescribeResourcePolicies",
                "logs:DescribeLogGroups"
            ],
            "Resource": [
                "*"
            ],
            "Effect": "Allow"
        }
    ]
}
```

------

Ketika tindakan diizinkan pada semua AWS sumber daya, itu ditunjukkan dalam kebijakan dengan `"Resource"` pengaturan`"*"`. Ini berarti bahwa tindakan diizinkan pada semua AWS sumber daya *yang didukung oleh setiap tindakan*. Misalnya, tindakan hanya `wafv2:PutLoggingConfiguration` didukung untuk `wafv2` mencatat sumber daya konfigurasi. 

# Mengirim log lalu lintas paket perlindungan (ACL web) ke bucket Amazon Simple Storage Service
<a name="logging-s3"></a>

Topik ini memberikan informasi untuk mengirim log lalu lintas paket perlindungan (ACL web) Anda ke bucket Amazon S3. 

**catatan**  
Anda dikenakan biaya untuk logging selain biaya untuk menggunakan AWS WAF. Untuk informasi, lihat [Harga untuk informasi lalu lintas paket perlindungan pencatatan (web ACL)](logging-pricing.md).

Untuk mengirim log lalu lintas paket perlindungan (web ACL) ke Amazon S3, Anda menyiapkan bucket Amazon S3 dari akun yang sama seperti yang Anda gunakan untuk mengelola paket perlindungan (web ACL), dan beri nama bucket tersebut dimulai. `aws-waf-logs-` Saat mengaktifkan login AWS WAF, Anda memberikan nama bucket. Untuk informasi tentang membuat bucket logging, lihat [Membuat Bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingABucket.html) di *Panduan Pengguna Layanan Penyimpanan Sederhana Amazon*.

Anda dapat mengakses dan menganalisis log Amazon S3 Anda menggunakan layanan kueri interaktif Amazon Athena. Athena memudahkan untuk menganalisis data secara langsung di Amazon S3 menggunakan SQL standar. Dengan beberapa tindakan di dalamnya Konsol Manajemen AWS, Anda dapat mengarahkan Athena ke data yang disimpan di Amazon S3 dan dengan cepat mulai menggunakan SQL standar untuk menjalankan kueri ad-hoc dan mendapatkan hasil. Untuk informasi selengkapnya, lihat [Menanyakan AWS WAF log](https://docs.aws.amazon.com/athena/latest/ug/waf-logs.html) di panduan *pengguna Amazon Athena*. Untuk contoh tambahan kueri Amazon Athena, lihat [waf-log-sample-athenaaws-samples/](https://github.com/aws-samples/waf-log-sample-athena-queries) -queries di situs web. GitHub 

**catatan**  
AWS WAF mendukung enkripsi dengan bucket Amazon S3 untuk kunci jenis kunci Amazon S3 (SSE-S3) dan untuk (SSE-KMS). AWS Key Management Service AWS KMS keys AWS WAF tidak mendukung enkripsi untuk AWS Key Management Service kunci yang dikelola oleh AWS.

File log dari paket perlindungan Anda (web ACL) dipublikasikan ke bucket Amazon S3 dengan interval 5 menit. Setiap file log berisi catatan log untuk lalu lintas yang direkam dalam 5 menit sebelumnya.

Ukuran file maksimum untuk berkas log adalah 75 MB. Jika file log mencapai batas ukuran file dalam periode 5 menit, log berhenti menambahkan catatan ke dalamnya, menerbitkannya ke bucket Amazon S3, dan kemudian membuat file log baru.

Berkas log dikompresi. Jika Anda membuka file menggunakan konsol Amazon S3, Amazon S3 mendekompresi catatan log dan menampilkannya. Jika Anda mengunduh file log, Anda harus mendekompresnya untuk melihat catatan.

Sebuah file log tunggal berisi entri interleaved dengan beberapa catatan. Untuk melihat semua file log untuk paket perlindungan (web ACL), cari entri yang digabungkan dengan nama paket perlindungan (web ACL), Wilayah, dan ID akun Anda.

## Persyaratan penamaan dan sintaks
<a name="logging-s3-naming"></a>

Nama bucket untuk AWS WAF logging harus dimulai dengan `aws-waf-logs-` dan dapat diakhiri dengan akhiran apa pun yang Anda inginkan. Misalnya, `aws-waf-logs-LOGGING-BUCKET-SUFFIX`. 

**Lokasi ember**  
Lokasi bucket menggunakan sintaks berikut: 

```
s3://aws-waf-logs-LOGGING-BUCKET-SUFFIX/
```

**ARN Bucket**  
Format bucket Amazon Resource Name (ARN) adalah sebagai berikut: 

```
arn:aws:s3:::aws-waf-logs-LOGGING-BUCKET-SUFFIX
```

**Lokasi bucket dengan awalan**  
Jika Anda menggunakan awalan dalam nama kunci objek untuk mengatur data yang disimpan di bucket, Anda dapat memberikan awalan dalam nama bucket logging Anda.

**catatan**  
Opsi ini tidak tersedia melalui konsol. Gunakan AWS WAF APIs, CLI, atau. AWS CloudFormation

Untuk informasi tentang menggunakan awalan di Amazon S3, [lihat Mengatur objek menggunakan](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html) awalan di Panduan Pengguna Layanan Penyimpanan *Sederhana Amazon*. 

Lokasi bucket dengan awalan menggunakan sintaks berikut: 

```
s3://aws-waf-logs-LOGGING-BUCKET-SUFFIX/KEY-NAME-PREFIX/
```

**Folder bucket dan nama file**  
Di dalam bucket Anda, dan mengikuti awalan apa pun yang Anda berikan, AWS WAF log Anda ditulis di bawah struktur folder yang ditentukan oleh ID akun Anda, Wilayah, nama paket perlindungan (web ACL), serta tanggal dan waktu. 

```
AWSLogs/account-id/WAFLogs/Region/web-acl-name/YYYY/MM/dd/HH/mm
```

Di dalam folder, nama file log mengikuti format yang sama: 

```
account-id_waflogs_Region_web-acl-name_timestamp_hash.log.gz
```

Spesifikasi waktu yang digunakan dalam struktur folder dan nama file log mematuhi spesifikasi format stempel waktu. `YYYYMMddTHHmmZ`

Berikut ini menunjukkan contoh file log di bucket Amazon S3 untuk bucket bernama. `aws-waf-logs-LOGGING-BUCKET-SUFFIX` Akun AWS adalah`11111111111`. Paket perlindungan (web ACL) adalah `TEST-WEBACL` dan Wilayah adalah`us-east-1`.

```
s3://aws-waf-logs-LOGGING-BUCKET-SUFFIX/AWSLogs/11111111111/WAFLogs/us-east-1/TEST-WEBACL/2021/10/28/19/50/11111111111_waflogs_us-east-1_TEST-WEBACL_20211028T1950Z_e0ca43b5.log.gz
```

**catatan**  
Nama bucket Anda untuk AWS WAF logging harus dimulai dengan `aws-waf-logs-` dan dapat diakhiri dengan akhiran apa pun yang Anda inginkan. 

## Izin diperlukan untuk mempublikasikan log ke Amazon S3
<a name="logging-s3-permissions"></a>

Mengonfigurasi pencatatan lalu lintas paket perlindungan (ACL web) untuk bucket Amazon S3 memerlukan pengaturan izin berikut. Izin ini ditetapkan untuk Anda saat Anda menggunakan salah satu kebijakan terkelola akses AWS WAF penuh, `AWSWAFConsoleFullAccess` atau`AWSWAFFullAccess`. Jika Anda ingin mengelola akses lebih lanjut ke pencatatan dan AWS WAF sumber daya Anda, Anda dapat mengatur izin ini sendiri. Untuk informasi tentang mengelola izin, lihat [Manajemen akses untuk AWS sumber daya](https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) di *Panduan Pengguna IAM*. Untuk informasi tentang kebijakan yang AWS WAF dikelola, lihat[AWS kebijakan terkelola untuk AWS WAF](security-iam-awsmanpol.md). 

Izin berikut memungkinkan Anda mengubah konfigurasi logging protection pack (web ACL) dan mengonfigurasi pengiriman log ke bucket Amazon S3 Anda. Izin ini harus dilampirkan ke pengguna yang Anda gunakan untuk mengelola AWS WAF. 

**catatan**  
Saat Anda menetapkan izin yang tercantum di bawah ini, Anda mungkin melihat kesalahan dalam AWS CloudTrail log yang menunjukkan akses ditolak, tetapi izin tersebut benar untuk AWS WAF pencatatan. 

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Action":[
            "wafv2:PutLoggingConfiguration",
            "wafv2:DeleteLoggingConfiguration"
         ],
         "Resource":[
            "*"
         ],
         "Effect":"Allow",
         "Sid":"LoggingConfigurationAPI"
      },
    {                                                                                                                                                                
       "Sid":"WebACLLogDelivery",                                                                                                                                    
       "Action":[                                                                                                                                                    
          "logs:CreateLogDelivery",                                                                                                                                  
          "logs:DeleteLogDelivery"                                                                                                                                   
       ],                                                                                                                                                            
       "Resource": "*",                                                                                                                                              
       "Effect":"Allow"                                                                                                                                              
    },  
      {
         "Sid":"WebACLLoggingS3",
         "Action":[
            "s3:PutBucketPolicy",
            "s3:GetBucketPolicy"
         ],
         "Resource": [
         "arn:aws:s3:::aws-waf-logs-amzn-s3-demo-destination-bucket-suffix"
         ],
         "Effect":"Allow"
      }
   ]
}
```

------

Ketika tindakan diizinkan pada semua AWS sumber daya, itu ditunjukkan dalam kebijakan dengan `"Resource"` pengaturan`"*"`. Ini berarti bahwa tindakan diizinkan pada semua AWS sumber daya *yang didukung oleh setiap tindakan*. Misalnya, tindakan hanya `wafv2:PutLoggingConfiguration` didukung untuk `wafv2` mencatat sumber daya konfigurasi. 

Secara default, ember Amazon S3 dan objek yang dikandungnya bersifat pribadi. Hanya pemilik bucket yang bisa mengakses bucket dan objek yang tersimpan di dalamnya. Namun, pemilik bucket dapat memberikan akses ke sumber daya dan pengguna lain dengan menulis kebijakan akses.

Jika pengguna yang membuat log memiliki bucket, layanan akan secara otomatis melampirkan kebijakan berikut ke bucket untuk memberikan izin log untuk memublikasikan log ke bucket: 

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AWSLogDeliveryWrite",
      "Effect": "Allow",
      "Principal": {
        "Service": "delivery.logs.amazonaws.com"
      },
      "Action": "s3:PutObject",
      "Resource": "arn:aws:s3:::aws-waf-logs-amzn-s3-demo-destination-bucket-suffix/AWSLogs/123456789012/*",
      "Condition": {
        "StringEquals": {
          "s3:x-amz-acl": "bucket-owner-full-control",
          "aws:SourceAccount": ["123456789012"]
        },
        "ArnLike": {
        "aws:SourceArn": ["arn:aws:logs:us-east-2:123456789012:*"]
        }
      }
    },
    {
      "Sid": "AWSLogDeliveryAclCheck",
      "Effect": "Allow",
      "Principal": {
        "Service": "delivery.logs.amazonaws.com"
      },
      "Action": "s3:GetBucketAcl",
      "Resource": "arn:aws:s3:::aws-waf-logs-amzn-s3-demo-destination-bucket-suffix",
      "Condition": {
        "StringEquals": {
        "aws:SourceAccount": ["123456789012"]
        },
        "ArnLike": {
        "aws:SourceArn": ["arn:aws:logs:us-east-2:123456789012:*"]
        }
      }
    }
  ]
}
```

------

**catatan**  
Nama bucket Anda untuk AWS WAF logging harus dimulai dengan `aws-waf-logs-` dan dapat diakhiri dengan akhiran apa pun yang Anda inginkan. 

Jika pengguna yang membuat log tidak memiliki bucket, atau tidak memiliki `PutBucketPolicy` izin `GetBucketPolicy` dan untuk bucket, pembuatan log gagal. Dalam hal ini, pemilik bucket harus menambahkan kebijakan sebelumnya secara manual ke bucket dan menentukan ID pembuat log. Akun AWS Untuk informasi selengkapnya, lihat [Bagaimana Cara Menambahkan Kebijakan Bucket S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/add-bucket-policy.html)? di *Panduan Pengguna Layanan Penyimpanan Sederhana Amazon*. Jika bucket menerima log dari beberapa akun, tambahkan entri `Resource` elemen ke pernyataan `AWSLogDeliveryWrite` kebijakan untuk setiap akun. 

Misalnya, kebijakan bucket berikut memungkinkan Akun AWS `111122223333` untuk memublikasikan log ke bucket bernama`aws-waf-logs-LOGGING-BUCKET-SUFFIX`:

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "AWSLogDeliveryWrite20150319",
    "Statement": [
        {
            "Sid": "AWSLogDeliveryWrite",
            "Effect": "Allow",
            "Principal": {
                "Service": "delivery.logs.amazonaws.com"
            },
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::aws-waf-logs-amzn-s3-demo-destination-bucket-suffix/AWSLogs/111122223333/*",
            "Condition": {
                "StringEquals": {
                    "s3:x-amz-acl": "bucket-owner-full-control",
                    "aws:SourceAccount": ["111122223333"]
                },
                "ArnLike": {
                    "aws:SourceArn": ["arn:aws:logs:us-east-1:111122223333:*"]
                }
            }
        },
        {
            "Sid": "AWSLogDeliveryAclCheck",
            "Effect": "Allow",
            "Principal": {
                "Service": "delivery.logs.amazonaws.com"
            },
            "Action": "s3:GetBucketAcl",
            "Resource": "arn:aws:s3:::aws-waf-logs-amzn-s3-demo-destination-bucket-suffix",
            "Condition": {
                "StringEquals": {
                "aws:SourceAccount": ["111122223333"]
                },
                "ArnLike": {
                "aws:SourceArn": ["arn:aws:logs:us-east-1:111122223333:*"]
                }
            }
        }
    ]
}
```

------

**catatan**  
Dalam beberapa kasus, Anda mungkin melihat `AccessDenied` kesalahan AWS CloudTrail jika `s3:ListBucket` izin belum diberikan`delivery.logs.amazonaws.com`. Untuk menghindari kesalahan ini di CloudTrail log Anda, Anda harus memberikan `s3:ListBucket` izin `delivery.logs.amazonaws.com` dan Anda harus menyertakan `Condition` parameter yang ditampilkan dengan `s3:GetBucketAcl ` izin yang ditetapkan dalam kebijakan bucket sebelumnya. Untuk membuatnya lebih sederhana, alih-alih membuat yang baru`Statement`, Anda dapat langsung memperbarui `AWSLogDeliveryAclCheck` menjadi`“Action”: [“s3:GetBucketAcl”, “s3:ListBucket”]`.

## Izin untuk menggunakan AWS Key Management Service dengan kunci KMS
<a name="logging-s3-permissions-encrypt-kms"></a>

Jika tujuan pencatatan Anda menggunakan enkripsi sisi server dengan kunci yang disimpan di AWS Key Management Service (SSE-KMS) dan Anda menggunakan kunci terkelola pelanggan (kunci KMS), Anda harus memberikan AWS WAF izin untuk menggunakan kunci KMS Anda. Untuk melakukan ini, Anda menambahkan kebijakan kunci ke kunci KMS untuk tujuan yang Anda pilih. Ini memungkinkan AWS WAF logging untuk menulis file log Anda ke tujuan Anda. 

Tambahkan kebijakan kunci berikut ke kunci KMS Anda untuk memungkinkan masuk AWS WAF ke bucket Amazon S3 Anda.

```
{
    "Sid": "Allow AWS WAF to use the key",
    "Effect": "Allow",
    "Principal": {
        "Service": [
            "delivery.logs.amazonaws.com"
        ]
    },
    "Action": "kms:GenerateDataKey*",
    "Resource": "*"
}
```

## Izin diperlukan untuk mengakses file log Amazon S3
<a name="logging-s3-log-file-access"></a>

Amazon S3 menggunakan daftar kontrol akses (ACLs) untuk mengelola akses ke file log yang dibuat oleh log. AWS WAF Secara default, pemilik bucket memiliki izin `FULL_CONTROL` pada setiap file berkas log. Pemilik pengiriman log, jika berbeda dari pemilik bucket, tidak memiliki izin. Akun pengiriman log memiliki izin `READ` dan `WRITE`. Untuk informasi selengkapnya, lihat [Ikhtisar Daftar Kontrol Akses (ACL)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html) di *Panduan Pengguna Layanan Penyimpanan Sederhana Amazon*.

# Mengirim log lalu lintas paket perlindungan (ACL web) ke aliran pengiriman Amazon Data Firehose
<a name="logging-kinesis"></a>

Bagian ini memberikan informasi untuk mengirim log lalu lintas paket perlindungan (ACL web) Anda ke aliran pengiriman Amazon Data Firehose. 

**catatan**  
Anda dikenakan biaya untuk logging selain biaya untuk menggunakan AWS WAF. Untuk informasi, lihat [Harga untuk informasi lalu lintas paket perlindungan pencatatan (web ACL)](logging-pricing.md).

Untuk mengirim log ke Amazon Data Firehose, Anda mengirim log dari paket perlindungan (web ACL) ke aliran pengiriman Amazon Data Firehose yang Anda konfigurasikan di Firehose. Setelah Anda mengaktifkan logging, AWS WAF mengirimkan log ke tujuan penyimpanan Anda melalui titik akhir HTTPS Firehose. 

Satu AWS WAF log setara dengan satu catatan Firehose. Jika Anda biasanya menerima 10.000 permintaan per detik dan mengaktifkan log penuh, Anda harus memiliki pengaturan 10.000 catatan per detik di Firehose. Jika Anda tidak mengonfigurasi Firehose dengan benar, tidak AWS WAF akan merekam semua log. Untuk informasi selengkapnya, lihat [kuota Amazon Kinesis Data Firehose](https://docs.aws.amazon.com/firehose/latest/dev/limits.html). 

Untuk informasi tentang cara membuat aliran pengiriman Amazon Data Firehose dan meninjau log yang disimpan, lihat [Apa itu Amazon Data Firehose](https://docs.aws.amazon.com/firehose/latest/dev/what-is-this-service.html)? 

Untuk informasi tentang membuat aliran pengiriman, lihat [Membuat aliran pengiriman Amazon Data Firehose](https://docs.aws.amazon.com/firehose/latest/dev/basic-create.html).

## Mengonfigurasi aliran pengiriman Amazon Data Firehose untuk paket perlindungan Anda (web ACL)
<a name="logging-kinesis-configuration"></a>

Konfigurasikan aliran pengiriman Amazon Data Firehose untuk paket perlindungan (web ACL) Anda sebagai berikut.
+ Buat menggunakan akun yang sama seperti yang Anda gunakan untuk mengelola paket perlindungan (web ACL).
+ Buat di Wilayah yang sama dengan paket perlindungan (web ACL). Jika Anda menangkap log untuk Amazon CloudFront, buat firehose di Wilayah AS Timur (Virginia N.),. `us-east-1`
+ Berikan firehose data nama yang dimulai dengan awalan`aws-waf-logs-`. Misalnya, `aws-waf-logs-us-east-2-analytics`.
+ Konfigurasikan untuk direct put, yang memungkinkan aplikasi mengakses aliran pengiriman secara langsung. Di [konsol Amazon Data Firehose](https://console.aws.amazon.com/firehose), untuk setelan **Sumber** aliran pengiriman, pilih **Direct PUT atau sumber lainnya**. Melalui API, atur properti aliran pengiriman `DeliveryStreamType` ke`DirectPut`.
**catatan**  
Jangan gunakan `Kinesis stream` sebagai sumber Anda.

## Izin yang diperlukan untuk memublikasikan log ke aliran pengiriman Amazon Data Firehose
<a name="logging-kinesis-permissions"></a>

Untuk memahami izin yang diperlukan untuk konfigurasi Firehose Data Kinesis, [lihat Mengontrol Akses dengan Amazon Kinesis Data](https://docs.aws.amazon.com/firehose/latest/dev/controlling-access.html) Firehose.

Anda harus memiliki izin berikut agar berhasil mengaktifkan pencatatan paket perlindungan (web ACL) dengan aliran pengiriman Amazon Data Firehose.
+ `iam:CreateServiceLinkedRole`
+ `firehose:ListDeliveryStreams`
+ `wafv2:PutLoggingConfiguration`

Untuk informasi tentang peran terkait layanan dan `iam:CreateServiceLinkedRole` izin, lihat. [Menggunakan peran terkait layanan untuk AWS WAF](using-service-linked-roles.md)

# Mengkonfigurasi logging untuk paket perlindungan (web ACL)
<a name="logging-management-configure"></a>

Bagian ini memberikan instruksi untuk mengkonfigurasi perlindungan data untuk paket perlindungan (web ACL).

**catatan**  
Anda dikenakan biaya untuk logging selain biaya untuk menggunakan AWS WAF. Untuk informasi, lihat [Harga untuk informasi lalu lintas paket perlindungan pencatatan (web ACL)](logging-pricing.md).

Untuk mengaktifkan logging untuk paket perlindungan (web ACL), Anda harus sudah mengonfigurasi tujuan pencatatan yang akan Anda gunakan. Untuk informasi tentang pilihan tujuan Anda dan persyaratan untuk masing-masing, lihat[AWS WAF tujuan pencatatan](logging-destinations.md).

**Untuk mengonfigurasi logging untuk paket perlindungan (web ACL)**

1. Masuk ke Konsol Manajemen AWS dan buka AWS WAF konsol di [https://console.aws.amazon.com/wafv2/homev2](https://console.aws.amazon.com/wafv2/homev2). 

1. Di panel navigasi, pilih **paket perlindungan (web ACLs)**.

1. Pilih nama paket perlindungan (web ACL) yang ingin Anda aktifkan untuk login. Konsol membawa Anda ke deskripsi paket perlindungan (web ACL), tempat Anda dapat mengeditnya.

1. Pada tab **Logging dan metrics**, pilih **Aktifkan logging**.

1. Pilih jenis tujuan pencatatan, lalu pilih tujuan pencatatan yang Anda konfigurasikan. Anda harus memilih tujuan pencatatan yang namanya dimulai dengan`aws-waf-logs-`.

1. (Opsional) Jika Anda tidak ingin beberapa bidang disertakan dalam log, edit. Pilih bidang yang akan disunting, lalu pilih **Tambah**. Ulangi seperlunya untuk menyunting bidang tambahan. Bidang yang disunting muncul di log sebagai`xxx`.
**catatan**  
Pengaturan ini tidak berdampak pada pengambilan sampel permintaan. Anda dapat mengecualikan bidang dari pengambilan sampel permintaan dengan mengonfigurasi perlindungan data paket perlindungan (web ACL) atau dengan menonaktifkan pengambilan sampel untuk paket perlindungan (web ACL). 

1. (Opsional) Jika Anda tidak ingin mengirim semua permintaan ke log, tambahkan kriteria dan perilaku pemfilteran Anda. Di bawah **Filter log**, untuk setiap filter yang ingin Anda terapkan, pilih **Tambahkan filter**, lalu pilih kriteria pemfilteran Anda dan tentukan apakah Anda ingin menyimpan atau menghapus permintaan yang sesuai dengan kriteria. Ketika Anda selesai menambahkan filter, jika diperlukan, ubah **perilaku logging Default**. 
**catatan**  
Jika Anda menambahkan beberapa filter, AWS WAF evaluasi mereka mulai dari atas.

1. Pilih **Aktifkan pencatatan**.
**catatan**  
Bila Anda berhasil mengaktifkan logging, AWS WAF akan membuat peran service-linked dengan izin yang diperlukan untuk menulis log ke tujuan logging. Lihat informasi yang lebih lengkap di [Menggunakan peran terkait layanan untuk AWS WAF](using-service-linked-roles.md).

# Menemukan catatan paket perlindungan Anda (web ACL)
<a name="logging-management"></a>

Bagian ini menjelaskan cara menemukan catatan paket perlindungan (web ACL) Anda.

**catatan**  
Anda dikenakan biaya untuk logging selain biaya untuk menggunakan AWS WAF. Untuk informasi, lihat [Harga untuk informasi lalu lintas paket perlindungan pencatatan (web ACL)](logging-pricing.md).

**Jika Anda tidak dapat menemukan catatan log di log Anda**  
Pada kesempatan langka, pengiriman AWS WAF log mungkin turun di bawah 100%, dengan log dikirim dengan upaya terbaik. AWS WAF Arsitektur memprioritaskan keamanan aplikasi Anda di atas semua pertimbangan lainnya. Dalam beberapa situasi, seperti ketika arus logging mengalami pelambatan lalu lintas, ini dapat mengakibatkan catatan dijatuhkan. Ini seharusnya tidak mempengaruhi lebih dari beberapa catatan. Jika Anda melihat sejumlah entri log yang hilang, hubungi [AWS Dukungan Pusat](https://console.aws.amazon.com/support/home#/).

Dalam konfigurasi logging untuk paket perlindungan Anda (web ACL), Anda dapat menyesuaikan apa yang AWS WAF dikirim ke log.
+ **Redaksi bidang** - Anda dapat menyunting bidang berikut dari catatan log untuk aturan yang menggunakan pengaturan kecocokan yang sesuai: **jalur URI**, **String kueri**, **Header tunggal**, dan metode **HTTP**. Bidang yang disunting muncul seperti `REDACTED` di log. Misalnya, jika Anda menyunting bidang **string Query**, di log, itu akan terdaftar sebagai `REDACTED` untuk semua aturan yang menggunakan pengaturan komponen pencocokan **string Query**. **Redaksi hanya berlaku untuk komponen permintaan yang Anda tentukan untuk pencocokan dalam aturan, sehingga redaksi komponen **header Tunggal** tidak berlaku untuk aturan yang cocok di Header.** Untuk daftar bidang log, lihat[Bidang log untuk lalu lintas paket perlindungan (web ACL)](logging-fields.md).
**catatan**  
Pengaturan ini tidak berdampak pada pengambilan sampel permintaan. Anda dapat mengecualikan bidang dari pengambilan sampel permintaan dengan mengonfigurasi perlindungan data paket perlindungan (web ACL) atau dengan menonaktifkan pengambilan sampel untuk paket perlindungan (web ACL). 
+ **Pemfilteran log** - Anda dapat menambahkan pemfilteran untuk menentukan permintaan web mana yang disimpan di log dan mana yang dijatuhkan. Anda memfilter pengaturan yang AWS WAF berlaku selama evaluasi permintaan web. Anda dapat memfilter pada pengaturan berikut: 
  + **Label yang sepenuhnya memenuhi** syarat - Label yang sepenuhnya memenuhi syarat memiliki awalan, ruang nama opsional, dan nama label. Awalan mengidentifikasi kelompok aturan atau paket perlindungan (web ACL) konteks aturan yang menambahkan label. Untuk informasi tentang label, lihat[Pelabelan permintaan web di AWS WAF](waf-labels.md).
  + **Tindakan aturan** - Anda dapat memfilter pada setelan tindakan aturan normal dan juga pada opsi `EXCLUDED_AS_COUNT` penggantian lama untuk aturan grup aturan. Untuk informasi tentang setelan tindakan aturan, lihat[Menggunakan tindakan aturan di AWS WAF](waf-rule-action.md). Untuk informasi tentang penggantian tindakan aturan saat ini dan lama untuk aturan grup aturan, lihat. [Mengesampingkan tindakan grup aturan di AWS WAF](web-acl-rule-group-override-options.md) 
    + Filter tindakan aturan normal berlaku untuk tindakan yang dikonfigurasi dalam aturan dan juga tindakan yang dikonfigurasi menggunakan opsi saat ini untuk mengganti tindakan aturan grup aturan. 
    + Filter `EXCLUDED_AS_COUNT` log tumpang tindih dengan filter log `Count` tindakan. `EXCLUDED_AS_COUNT`memfilter opsi saat ini dan lama untuk mengganti tindakan aturan grup aturan ke. Count 

# Bidang log untuk lalu lintas paket perlindungan (web ACL)
<a name="logging-fields"></a>

Daftar berikut menjelaskan bidang log yang mungkin. 

**tindakan**  
Tindakan penghentian yang AWS WAF diterapkan pada permintaan. Ini menunjukkan baik allow, block, CAPTCHA, atau challenge. ChallengeTindakan CAPTCHA dan akan berakhir ketika permintaan web tidak berisi token yang valid.

**args**  
String kueri.

**CaptCharesponse**  
Status tindakan CAPTCHA untuk permintaan, diisi saat CAPTCHA tindakan diterapkan ke permintaan. Bidang ini diisi untuk CAPTCHA tindakan apa pun, baik penghentian atau non-penghentian. Jika permintaan memiliki CAPTCHA tindakan yang diterapkan beberapa kali, bidang ini diisi dari terakhir kali tindakan diterapkan.   
CAPTCHATindakan menghentikan pemeriksaan permintaan web ketika permintaan tidak menyertakan token atau token tidak valid atau kedaluwarsa. Jika CAPTCHA tindakan dihentikan, bidang ini menyertakan kode respons dan alasan kegagalan. Jika tindakan tidak berakhir, bidang ini menyertakan stempel waktu pemecahan. Untuk membedakan antara tindakan terminating dan non-terminating, Anda dapat memfilter atribut yang tidak kosong `failureReason` di bidang ini.

**cfDistributionTenantId**  
Pengidentifikasi untuk penyewa CloudFront distribusi yang terkait dengan permintaan web. Bidang ini bersifat opsional dan hanya berlaku untuk paket perlindungan (web ACLs) yang terkait dengan penyewa CloudFront distribusi.

**ChallengeResponse**  
Status tindakan tantangan untuk permintaan, diisi saat Challenge tindakan diterapkan pada permintaan. Bidang ini diisi untuk Challenge tindakan apa pun, baik penghentian atau non-penghentian. Jika permintaan memiliki Challenge tindakan yang diterapkan beberapa kali, bidang ini diisi dari terakhir kali tindakan diterapkan.   
ChallengeTindakan menghentikan pemeriksaan permintaan web ketika permintaan tidak menyertakan token atau token tidak valid atau kedaluwarsa. Jika Challenge tindakan dihentikan, bidang ini menyertakan kode respons dan alasan kegagalan. Jika tindakan tidak berakhir, bidang ini menyertakan stempel waktu pemecahan. Untuk membedakan antara tindakan terminating dan non-terminating, Anda dapat memfilter atribut yang tidak kosong `failureReason` di bidang ini.

**ClientaSN**  
Autonomous System Number (ASN) yang terkait dengan alamat IP asal permintaan web.  
**ClientASN** login AWS WAF log hanya ketika pernyataan pencocokan ASN digunakan. Bidang ini tidak dicatat sebaliknya.

**clientIp**  
Alamat IP klien yang mengirim permintaan.

**negeri**  
Negara sumber permintaan. Jika AWS WAF tidak dapat menentukan negara asal, ia menetapkan bidang ini ke`-`. 

**negeri**  
Negara sumber permintaan. Jika AWS WAF tidak dapat menentukan negara asal, ia menetapkan bidang ini ke`-`. 

**excludedRules**  
Digunakan hanya untuk aturan kelompok aturan. Daftar aturan dalam grup aturan yang telah Anda kecualikan. Tindakan untuk aturan-aturan ini diatur keCount.   
Jika Anda mengganti aturan untuk dihitung menggunakan opsi tindakan aturan ganti, kecocokan tidak tercantum di sini. Mereka terdaftar sebagai pasangan aksi `action` dan`overriddenAction`.    
exclusionType  
Jenis yang menunjukkan bahwa aturan yang dikecualikan memiliki tindakanCount.  
ruleId  
ID aturan dalam kelompok aturan yang dikecualikan.

**formatVersion**  
Versi format untuk log.

**TerusanDASN**  
Autonomous System Number (ASN) terkait dengan alamat IP dari entitas yang meneruskan permintaan web.

**headers**  
Daftar header.

**httpMethod**  
Metode HTTP dalam permintaan.

**httpRequest**  
Metadata tentang permintaan.

**httpSourceId**  
ID sumber daya terkait:   
+ Untuk CloudFront distribusi Amazon, ID adalah `distribution-id` dalam sintaks ARN: 

  `arn:partitioncloudfront::account-id:distribution/distribution-id` 
+ Untuk Application Load Balancer, ID adalah `load-balancer-id` dalam sintaks ARN: 

  `arn:partition:elasticloadbalancing:region:account-id:loadbalancer/app/load-balancer-name/load-balancer-id`
+ Untuk API REST Amazon API Gateway, ID adalah `api-id` dalam sintaks ARN: 

  `arn:partition:apigateway:region::/restapis/api-id/stages/stage-name`
+ Untuk AWS AppSync GraphQL API, ID adalah `GraphQLApiId` dalam sintaks ARN: 

  `arn:partition:appsync:region:account-id:apis/GraphQLApiId`
+ Untuk kumpulan pengguna Amazon Cognito, ID adalah `user-pool-id` dalam sintaks ARN: 

  `arn:partition:cognito-idp:region:account-id:userpool/user-pool-id`
+ Untuk AWS App Runner layanan, ID adalah `apprunner-service-id` dalam sintaks ARN: 

  `arn:partition:apprunner:region:account-id:service/apprunner-service-name/apprunner-service-id`

**httpSourceName**  
Sumber permintaan. Nilai yang memungkinkan: `CF` untuk Amazon CloudFront, `APIGW` untuk Amazon API Gateway, `ALB` untuk Application Load Balancer, `APPSYNC` untuk, untuk Amazon Cognito AWS AppSync, `COGNITOIDP` untuk App Runner`APPRUNNER`, `VERIFIED_ACCESS` dan untuk Akses Terverifikasi.

**httpVersion**  
Versi HTTP.

**Ja3sidik jari**  
 JA3 Sidik jari permintaan.  
JA3 pemeriksaan sidik jari hanya tersedia untuk CloudFront distribusi Amazon dan Application Load Balancer.
 JA3 Sidik jari adalah hash 32 karakter yang berasal dari TLS Client Hello dari permintaan yang masuk. Sidik jari ini berfungsi sebagai pengenal unik untuk konfigurasi TLS klien. AWS WAF menghitung dan mencatat sidik jari ini untuk setiap permintaan yang memiliki cukup informasi TLS Client Hello untuk perhitungan.   
Anda memberikan nilai ini saat mengonfigurasi kecocokan JA3 sidik jari dalam aturan paket perlindungan (web ACL) Anda. Untuk informasi tentang membuat kecocokan dengan JA3 sidik jari, lihat [JA3 sidik jari](waf-rule-statement-fields-list.md#waf-rule-statement-request-component-ja3-fingerprint) di pernyataan [Minta komponen di AWS WAF](waf-rule-statement-fields-list.md) untuk aturan.

**Ja4sidik jari**  
 JA4 Sidik jari permintaan.  
JA4 pemeriksaan sidik jari hanya tersedia untuk CloudFront distribusi Amazon dan Application Load Balancer.
 JA4 Sidik jari adalah hash 36 karakter yang berasal dari TLS Client Hello dari permintaan yang masuk. Sidik jari ini berfungsi sebagai pengenal unik untuk konfigurasi TLS klien. AWS WAF menghitung dan mencatat sidik jari ini untuk setiap permintaan yang memiliki cukup informasi TLS Client Hello untuk perhitungan.   
Anda memberikan nilai ini saat mengonfigurasi kecocokan JA4 sidik jari dalam aturan paket perlindungan (web ACL) Anda. Untuk informasi tentang membuat kecocokan dengan JA4 sidik jari, lihat [JA4 sidik jari](waf-rule-statement-fields-list.md#waf-rule-statement-request-component-ja4-fingerprint) di pernyataan [Minta komponen di AWS WAF](waf-rule-statement-fields-list.md) untuk aturan.

**label**  
Label pada permintaan web. Label ini diterapkan oleh aturan yang digunakan untuk mengevaluasi permintaan. AWS WAF mencatat 100 label pertama. 

**nonTerminatingMatchingAturan**  
Daftar aturan non-penghentian yang cocok dengan permintaan. Setiap item dalam daftar berisi informasi berikut.     
tindakan  
Tindakan yang AWS WAF diterapkan pada permintaan. Ini menunjukkan hitungan, CAPTCHA, atau tantangan. The CAPTCHA and Challenge non-terminating ketika permintaan web berisi token yang valid.  
ruleId  
ID aturan yang cocok dengan permintaan dan tidak mengakhiri.   
ruleMatchDetails  
Informasi terperinci tentang aturan yang cocok dengan permintaan. Bidang ini hanya diisi untuk pernyataan aturan pencocokan SQL injection dan cross-site scripting (XSS). Aturan pencocokan mungkin memerlukan kecocokan untuk lebih dari satu kriteria pemeriksaan, jadi detail kecocokan ini disediakan sebagai larik kriteria kecocokan. 
Setiap informasi tambahan yang diberikan untuk setiap aturan bervariasi menurut faktor seperti konfigurasi aturan, jenis pencocokan aturan, dan detail pertandingan. Misalnya untuk aturan dengan Challenge tindakan CAPTCHA atau, `captchaResponse` atau `challengeResponse` akan terdaftar. Jika aturan yang cocok ada dalam grup aturan dan Anda telah mengganti tindakan aturan yang dikonfigurasi, tindakan yang dikonfigurasi akan disediakan. `overriddenAction` 

**OversizeFields**  
Daftar bidang dalam permintaan web yang diperiksa oleh paket perlindungan (web ACL) dan yang melebihi batas AWS WAF inspeksi. Jika bidang terlalu besar tetapi paket perlindungan (web ACL) tidak memeriksanya, itu tidak akan tercantum di sini.   
Daftar ini dapat berisi nol atau lebih dari nilai-nilai berikut:`REQUEST_BODY`,`REQUEST_JSON_BODY`,`REQUEST_HEADERS`, dan`REQUEST_COOKIES`. Untuk informasi selengkapnya tentang bidang oversize, lihat[Komponen permintaan web yang terlalu besar di AWS WAF](waf-oversize-request-components.md).

**rateBasedRuleDaftar**  
Daftar aturan berbasis tarif yang bertindak atas permintaan. Untuk informasi tentang aturan berbasis tarif, lihat. [Menggunakan pernyataan aturan berbasis tarif di AWS WAF](waf-rule-statement-type-rate-based.md)    
rateBasedRuleId  
ID aturan berbasis tarif yang bertindak atas permintaan. Jika ini telah menghentikan permintaan, ID untuk `rateBasedRuleId` sama dengan ID untuk`terminatingRuleId`.  
rateBasedRuleNama  
Nama aturan berbasis tarif yang bertindak atas permintaan.   
limitKey  
Jenis agregasi yang digunakan aturan. Nilai yang mungkin adalah `IP` untuk asal permintaan web, `FORWARDED_IP` untuk IP yang diteruskan dalam header dalam permintaan, `CUSTOMKEYS` untuk pengaturan kunci agregat kustom. dan `CONSTANT` untuk menghitung semua permintaan bersama-sama, tanpa agregasi.   
LimitValue  
Digunakan hanya ketika tingkat dibatasi oleh satu jenis alamat IP. Jika permintaan berisi alamat IP yang tidak valid, `limitvalue` adalah`INVALID`.  
maxRateAllowed  
Jumlah maksimum permintaan yang diizinkan dalam jendela waktu yang ditentukan untuk contoh agregasi tertentu. Instans agregasi ditentukan oleh `limitKey` plus setiap spesifikasi kunci tambahan yang telah Anda berikan dalam konfigurasi aturan berbasis laju.   
evaluationWindowSec  
Jumlah waktu yang AWS WAF termasuk dalam permintaannya dihitung, dalam hitungan detik.   
CustomValues  
Nilai unik yang diidentifikasi oleh aturan berbasis tarif dalam permintaan. Untuk nilai string, log mencetak 32 karakter pertama dari nilai string. Tergantung pada jenis kunci, nilai-nilai ini mungkin hanya untuk kunci, seperti untuk metode HTTP atau string kueri, atau mereka mungkin untuk kunci dan nama, seperti untuk header dan nama header. 

**requestHeadersInserted**  
Daftar header yang disisipkan untuk penanganan permintaan kustom.

**requestId**  
ID permintaan, yang dihasilkan oleh layanan host yang mendasarinya. Untuk Application Load Balancer, ini adalah ID jejak. Untuk semua yang lain, ini adalah ID permintaan. 

**responseCodeSent**  
Kode respon dikirim dengan respon kustom.

**ruleGroupId**  
 ID dari grup aturan. Jika aturan memblokir permintaan, ID `ruleGroupID` untuk sama dengan ID untuk`terminatingRuleId`. 

**ruleGroupList**  
Daftar grup aturan yang bertindak atas permintaan ini, dengan informasi kecocokan.

**terminatingRule**  
Aturan yang mengakhiri permintaan. Jika ini ada, itu berisi informasi berikut.     
tindakan  
Tindakan penghentian yang AWS WAF diterapkan pada permintaan. Ini menunjukkan baik allow, block, CAPTCHA, atau challenge. ChallengeTindakan CAPTCHA dan akan berakhir ketika permintaan web tidak berisi token yang valid.  
ruleId  
ID aturan yang cocok dengan permintaan.   
ruleMatchDetails  
Informasi terperinci tentang aturan yang cocok dengan permintaan. Bidang ini hanya diisi untuk pernyataan aturan pencocokan SQL injection dan cross-site scripting (XSS). Aturan pencocokan mungkin memerlukan kecocokan untuk lebih dari satu kriteria pemeriksaan, jadi detail kecocokan ini disediakan sebagai larik kriteria kecocokan. 
Setiap informasi tambahan yang diberikan untuk setiap aturan bervariasi menurut faktor seperti konfigurasi aturan, jenis pencocokan aturan, dan detail pertandingan. Misalnya untuk aturan dengan Challenge tindakan CAPTCHA atau, `captchaResponse` atau `challengeResponse` akan terdaftar. Jika aturan yang cocok ada dalam grup aturan dan Anda telah mengganti tindakan aturan yang dikonfigurasi, tindakan yang dikonfigurasi akan disediakan. `overriddenAction` 

**terminatingRuleId**  
ID aturan yang mengakhiri permintaan. Jika tidak ada yang mengakhiri permintaan, nilainya adalah`Default_Action`.

**terminatingRuleMatchDetail**  
Informasi terperinci tentang aturan penghentian yang cocok dengan permintaan. Aturan penghentian memiliki tindakan yang mengakhiri proses inspeksi terhadap permintaan web. Tindakan yang mungkin untuk aturan penghentian termasukAllow,, BlockCAPTCHA, danChallenge. Selama inspeksi permintaan web, pada aturan pertama yang cocok dengan permintaan dan yang memiliki tindakan AWS WAF penghentian, menghentikan inspeksi dan menerapkan tindakan. Permintaan web mungkin berisi ancaman lain, selain yang dilaporkan dalam log untuk aturan penghentian yang cocok.  
Ini hanya diisi untuk pernyataan aturan pencocokan SQL injection dan cross-site scripting (XSS). Aturan pencocokan mungkin memerlukan kecocokan untuk lebih dari satu kriteria pemeriksaan, jadi detail kecocokan ini disediakan sebagai larik kriteria kecocokan. 

**terminatingRuleType**  
Jenis aturan yang mengakhiri permintaan. Nilai yang mungkin: RATE\$1BASED, REGULAR, GROUP, dan MANAGED\$1RULE\$1GROUP.

**timestamp**  
Stempel waktu dalam milidetik.

**uri**  
URI permintaan. 

**fragmen**  
Bagian dari URL yang mengikuti simbol “\$1”, memberikan informasi tambahan tentang sumber daya, misalnya, \$1section2.

**webaclId**  
GUID paket perlindungan (web ACL).

# Contoh log untuk lalu lintas paket perlindungan (web ACL)
<a name="logging-examples"></a>

Bagian ini memberikan contoh untuk lalu lintas logging protection pack (web ACL).

**Example Aturan berbasis tingkat 1: Konfigurasi aturan dengan satu kunci, atur ke `Header:dogname`**  

```
    {
      "Name": "RateBasedRule",
      "Priority": 1,
      "Statement": {
        "RateBasedStatement": {
          "Limit": 100,
          "AggregateKeyType": "CUSTOM_KEYS",
          "CustomKeys": [
            {
              "Header": {
                "Name": "dogname",
                "TextTransformations": [
                  {
                    "Priority": 0,
                    "Type": "NONE"
                  }
                ]
              }
            }
          ]
        }
      },
      "Action": {
        "Block": {}
      },
      "VisibilityConfig": {
        "SampledRequestsEnabled": true,
        "CloudWatchMetricsEnabled": true,
        "MetricName": "RateBasedRule"
      }
    }
```

**Example Aturan berbasis tarif 1: Entri log untuk permintaan yang diblokir oleh aturan berbasis tarif**  

```
{
   "timestamp":1683355579981,
   "formatVersion":1,
   "webaclId": ...,
   "terminatingRuleId":"RateBasedRule",
   "terminatingRuleType":"RATE_BASED",
   "action":"BLOCK",
   "terminatingRuleMatchDetails":[
      
   ],
   "httpSourceName":"APIGW",
   "httpSourceId":"EXAMPLE11:rjvegx5guh:CanaryTest",
   "ruleGroupList":[
      
   ],
   "rateBasedRuleList":[
      {
         "rateBasedRuleId": ...,
         "rateBasedRuleName":"RateBasedRule",
         "limitKey":"CUSTOMKEYS",
         "maxRateAllowed":100,
         "evaluationWindowSec":"120",
         "customValues":[
            {
               "key":"HEADER",
               "name":"dogname",
               "value":"ella"
            }
         ]
      }
   ],
   "nonTerminatingMatchingRules":[
      
   ],
   "requestHeadersInserted":null,
   "responseCodeSent":null,
   "httpRequest":{
      "clientIp":"52.46.82.45",
      "country":"FR",
      "headers":[
         {
            "name":"X-Forwarded-For",
            "value":"52.46.82.45"
         },
         {
            "name":"X-Forwarded-Proto",
            "value":"https"
         },
         {
            "name":"X-Forwarded-Port",
            "value":"443"
         },
         {
            "name":"Host",
            "value":"rjvegx5guh.execute-api.eu-west-3.amazonaws.com"
         },
         {
            "name":"X-Amzn-Trace-Id",
            "value":"Root=1-645566cf-7cb058b04d9bb3ee01dc4036"
         },
         {
            "name":"dogname",
            "value":"ella"
         },
         {
            "name":"User-Agent",
            "value":"RateBasedRuleTestKoipOneKeyModulePV2"
         },
         {
            "name":"Accept-Encoding",
            "value":"gzip,deflate"
         }
      ],
      "uri":"/CanaryTest",
      "args":"",
      "httpVersion":"HTTP/1.1",
      "httpMethod":"GET",
      "requestId":"Ed0AiHF_CGYF-DA="
   }
}
```

**Example Aturan berbasis tingkat 2: Konfigurasi aturan dengan dua tombol, diatur ke dan `Header:dogname` `Header:catname`**  

```
    {
      "Name": "RateBasedRule",
      "Priority": 1,
      "Statement": {
        "RateBasedStatement": {
          "Limit": 100,
          "AggregateKeyType": "CUSTOM_KEYS",
          "CustomKeys": [
            {
              "Header": {
                "Name": "dogname",
                "TextTransformations": [
                  {
                    "Priority": 0,
                    "Type": "NONE"
                  }
                ]
              }
            },
            {
              "Header": {
                "Name": "catname",
                "TextTransformations": [
                  {
                    "Priority": 0,
                    "Type": "NONE"
                  }
                ]
              }
            }
          ]
        }
      },
      "Action": {
        "Block": {}
      },
      "VisibilityConfig": {
        "SampledRequestsEnabled": true,
        "CloudWatchMetricsEnabled": true,
        "MetricName": "RateBasedRule"
      }
    }
```

**Example Aturan berbasis tarif 2: Entri log untuk permintaan yang diblokir oleh aturan berbasis tarif**  

```
{
   "timestamp":1633322211194,
   "formatVersion":1,
   "webaclId":...,
   "terminatingRuleId":"RateBasedRule",
   "terminatingRuleType":"RATE_BASED",
   "action":"BLOCK",
   "terminatingRuleMatchDetails":[
      
   ],
   "httpSourceName":"APIGW",
   "httpSourceId":"EXAMPLE11:rjvegx5guh:CanaryTest",
   "ruleGroupList":[
      
   ],
   "rateBasedRuleList":[
      {
         "rateBasedRuleId":...,
         "rateBasedRuleName":"RateBasedRule",
         "limitKey":"CUSTOMKEYS",
         "maxRateAllowed":100,
         "evaluationWindowSec":"120",
         "customValues":[
            {
               "key":"HEADER",
               "name":"dogname",
               "value":"ella"
            },
            {
               "key":"HEADER",
               "name":"catname",
               "value":"goofie"
            }
         ]
      }
   ],
   "nonTerminatingMatchingRules":[
      
   ],
   "requestHeadersInserted":null,
   "responseCodeSent":null,
   "httpRequest":{
      "clientIp":"52.46.82.35",
      "country":"FR",
      "headers":[
         {
            "name":"X-Forwarded-For",
            "value":"52.46.82.35"
         },
         {
            "name":"X-Forwarded-Proto",
            "value":"https"
         },
         {
            "name":"X-Forwarded-Port",
            "value":"443"
         },
         {
            "name":"Host",
            "value":"23llbyn8v3.execute-api.eu-west-3.amazonaws.com"
         },
         {
            "name":"X-Amzn-Trace-Id",
            "value":"Root=1-64556629-17ac754c2ed9f0620e0f2a0c"
         },
         {
            "name":"catname",
            "value":"goofie"
         },
         {
            "name":"dogname",
            "value":"ella"
         },
         {
            "name":"User-Agent",
            "value":"Apache-HttpClient/UNAVAILABLE (Java/11.0.19)"
         },
         {
            "name":"Accept-Encoding",
            "value":"gzip,deflate"
         }
      ],
      "uri":"/CanaryTest",
      "args":"",
      "httpVersion":"HTTP/1.1",
      "httpMethod":"GET",
      "requestId":"EdzmlH5OCGYF1vQ="
   }
}
```

**Example Keluaran log untuk aturan yang dipicu saat SQLi deteksi (penghentian)**  

```
{
    "timestamp": 1576280412771,
    "formatVersion": 1,
    "webaclId": "arn:aws:wafv2:ap-southeast-2:111122223333:regional/webacl/STMTest/1EXAMPLE-2ARN-3ARN-4ARN-123456EXAMPLE",
    "terminatingRuleId": "STMTest_SQLi_XSS",
    "terminatingRuleType": "REGULAR",
    "action": "BLOCK",
    "terminatingRuleMatchDetails": [
        {
            "conditionType": "SQL_INJECTION",
            "sensitivityLevel": "HIGH",
            "location": "HEADER",
            "matchedData": [
                "10",
                "AND",
                "1"
            ]
        }
    ],
    "httpSourceName": "-",
    "httpSourceId": "-",
    "ruleGroupList": [],
    "rateBasedRuleList": [],
    "nonTerminatingMatchingRules": [],
    "httpRequest": {
        "clientIp": "1.1.1.1",
        "country": "AU",
        "headers": [
            {
                "name": "Host",
                "value": "localhost:1989"
            },
            {
                "name": "User-Agent",
                "value": "curl/7.61.1"
            },
            {
                "name": "Accept",
                "value": "*/*"
            },
            {
                "name": "x-stm-test",
                "value": "10 AND 1=1"
            }
        ],
        "uri": "/myUri",
        "args": "",
        "httpVersion": "HTTP/1.1",
        "httpMethod": "GET",
        "requestId": "rid"
    },
    "labels": [
        {
            "name": "value"
        }
    ]
}
```

**Example Keluaran log untuk aturan yang dipicu saat SQLi deteksi (non-terminating)**  

```
{
    "timestamp":1592357192516
    ,"formatVersion":1
    ,"webaclId":"arn:aws:wafv2:us-east-1:123456789012:global/webacl/hello-world/5933d6d9-9dde-js82-v8aw-9ck28nv9"
    ,"terminatingRuleId":"Default_Action"
    ,"terminatingRuleType":"REGULAR"
    ,"action":"ALLOW"
    ,"terminatingRuleMatchDetails":[]
    ,"httpSourceName":"-"
    ,"httpSourceId":"-"
    ,"ruleGroupList":[]
    ,"rateBasedRuleList":[]
    ,"nonTerminatingMatchingRules":
    [{
        "ruleId":"TestRule"
        ,"action":"COUNT"
        ,"ruleMatchDetails":
        [{
            "conditionType":"SQL_INJECTION"
            ,"sensitivityLevel": "HIGH"
            ,"location":"HEADER"
            ,"matchedData":[
                "10"
                ,"and"
                ,"1"]
            }]
    }]
    ,"httpRequest":{
        "clientIp":"3.3.3.3"
        ,"country":"US"
        ,"headers":[
            {"name":"Host","value":"localhost:1989"}
            ,{"name":"User-Agent","value":"curl/7.61.1"}
            ,{"name":"Accept","value":"*/*"}
            ,{"name":"myHeader","myValue":"10 AND 1=1"}
            ]
            ,"uri":"/myUri","args":""
            ,"httpVersion":"HTTP/1.1"
            ,"httpMethod":"GET"
            ,"requestId":"rid"
    },
    "labels": [
        {
            "name": "value"
        }
    ]
}
```

**Example Keluaran log untuk beberapa aturan yang dipicu di dalam grup aturan (Aturan-XSS berakhir dan Aturan-B tidak berakhir)**  

```
{
    "timestamp":1592361810888,
    "formatVersion":1,
    "webaclId":"arn:aws:wafv2:us-east-1:123456789012:global/webacl/hello-world/5933d6d9-9dde-js82-v8aw-9ck28nv9"
    ,"terminatingRuleId":"RG-Reference"
    ,"terminatingRuleType":"GROUP"
    ,"action":"BLOCK",
    "terminatingRuleMatchDetails":
    [{
        "conditionType":"XSS"
        ,"location":"HEADER"
        ,"matchedData":["<","frameset"]
    }]
    ,"httpSourceName":"-"
    ,"httpSourceId":"-"
    ,"ruleGroupList":
    [{
        "ruleGroupId":"arn:aws:wafv2:us-east-1:123456789012:global/rulegroup/hello-world/c05lb698-1f11-4m41-aef4-99a506d53f4b"
        ,"terminatingRule":{
            "ruleId":"RuleA-XSS"
            ,"action":"BLOCK"
            ,"ruleMatchDetails":null
            }
        ,"nonTerminatingMatchingRules":
        [{
            "ruleId":"RuleB-SQLi"
            ,"action":"COUNT"
            ,"ruleMatchDetails":
            [{
                "conditionType":"SQL_INJECTION"
                ,"sensitivityLevel": "LOW"
                ,"location":"HEADER"
                ,"matchedData":[
                    "10"
                    ,"and"
                    ,"1"]
            }]
        }]
        ,"excludedRules":null
    }]
    ,"rateBasedRuleList":[]
    ,"nonTerminatingMatchingRules":[]
    ,"httpRequest":{
        "clientIp":"3.3.3.3"
        ,"country":"US"
        ,"headers":
        [
            {"name":"Host","value":"localhost:1989"}
            ,{"name":"User-Agent","value":"curl/7.61.1"}
            ,{"name":"Accept","value":"*/*"}
            ,{"name":"myHeader1","value":"<frameset onload=alert(1)>"}
            ,{"name":"myHeader2","value":"10 AND 1=1"}
            ]
        ,"uri":"/myUri"
        ,"args":""
        ,"httpVersion":"HTTP/1.1"
        ,"httpMethod":"GET"
        ,"requestId":"rid"
    },
    "labels": [
        {
            "name": "value"
        }
    ]
}
```

**Example Keluaran log untuk aturan yang dipicu untuk inspeksi badan permintaan dengan tipe konten JSON**  
AWS WAF saat ini melaporkan lokasi untuk inspeksi badan JSON sebagai`UNKNOWN`.  

```
{
    "timestamp": 1576280412771,
    "formatVersion": 1,
    "webaclId": "arn:aws:wafv2:ap-southeast-2:123456789012:regional/webacl/test/111",
    "terminatingRuleId": "STMTest_SQLi_XSS",
    "terminatingRuleType": "REGULAR",
    "action": "BLOCK",
    "terminatingRuleMatchDetails": [
        {
            "conditionType": "SQL_INJECTION",
            "sensitivityLevel": "LOW",
            "location": "UNKNOWN",
            "matchedData": [
                "10",
                "AND",
                "1"
            ]
        }
    ],
    "httpSourceName": "ALB",
    "httpSourceId": "alb",
    "ruleGroupList": [],
    "rateBasedRuleList": [],
    "nonTerminatingMatchingRules": [],
    "requestHeadersInserted":null,
    "responseCodeSent":null,
    "httpRequest": {
        "clientIp": "1.1.1.1",
        "country": "AU",
        "headers": [],
        "uri": "",
        "args": "",
        "httpVersion": "HTTP/1.1",
        "httpMethod": "POST",
        "requestId": "null"
    },
    "labels": [
        {
            "name": "value"
        }
    ]
}
```

**Example Keluaran log untuk aturan CAPTCHA terhadap permintaan web dengan token CAPTCHA yang valid dan belum kedaluwarsa**  
Daftar log berikut adalah untuk permintaan web yang cocok dengan aturan dengan CAPTCHA tindakan. Permintaan web memiliki token CAPTCHA yang valid dan belum kedaluwarsa, dan hanya dicatat sebagai kecocokan CAPTCHA oleh AWS WAF, mirip dengan perilaku untuk tindakan tersebut. Count Pertandingan CAPTCHA ini dicatat di bawah. `nonTerminatingMatchingRules`  

```
{
  "timestamp": 1632420429309,
  "formatVersion": 1,
  "webaclId": "arn:aws:wafv2:us-east-1:123456789012:regional/webacl/captcha-web-acl/585e38b5-afce-4d2a-b417-14fb08b66c67",
  "terminatingRuleId": "Default_Action",
  "terminatingRuleType": "REGULAR",
  "action": "ALLOW",
  "terminatingRuleMatchDetails": [],
  "httpSourceName": "APIGW",
  "httpSourceId": "123456789012:b34myvfw0b:pen-test",
  "ruleGroupList": [],
  "rateBasedRuleList": [],
  "nonTerminatingMatchingRules": [
    {
      "ruleId": "captcha-rule",
      "action": "CAPTCHA",
      "ruleMatchDetails": [],
      "captchaResponse": {
        "responseCode": 0,
        "solveTimestamp": 1632420429
      }
    }
  ],
  "requestHeadersInserted": [
    {
      "name": "x-amzn-waf-test-header-name",
      "value": "test-header-value"
    }
  ],
  "responseCodeSent": null,
  "httpRequest": {
    "clientIp": "72.21.198.65",
    "country": "US",
    "headers": [
      {
        "name": "X-Forwarded-For",
        "value": "72.21.198.65"
      },
      {
        "name": "X-Forwarded-Proto",
        "value": "https"
      },
      {
        "name": "X-Forwarded-Port",
        "value": "443"
      },
      {
        "name": "Host",
        "value": "b34myvfw0b.gamma.execute-api.us-east-1.amazonaws.com"
      },
      {
        "name": "X-Amzn-Trace-Id",
        "value": "Root=1-614cc24d-5ad89a09181910c43917a888"
      },
      {
        "name": "cache-control",
        "value": "max-age=0"
      },
      {
        "name": "sec-ch-ua",
        "value": "\"Chromium\";v=\"94\", \"Google Chrome\";v=\"94\", \";Not A Brand\";v=\"99\""
      },
      {
        "name": "sec-ch-ua-mobile",
        "value": "?0"
      },
      {
        "name": "sec-ch-ua-platform",
        "value": "\"Windows\""
      },
      {
        "name": "upgrade-insecure-requests",
        "value": "1"
      },
      {
        "name": "user-agent",
        "value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.54 Safari/537.36"
      },
      {
        "name": "accept",
        "value": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9"
      },
      {
        "name": "sec-fetch-site",
        "value": "same-origin"
      },
      {
        "name": "sec-fetch-mode",
        "value": "navigate"
      },
      {
        "name": "sec-fetch-user",
        "value": "?1"
      },
      {
        "name": "sec-fetch-dest",
        "value": "document"
      },
      {
        "name": "referer",
        "value": "https://b34myvfw0b.gamma.execute-api.us-east-1.amazonaws.com/pen-test/pets"
      },
      {
        "name": "accept-encoding",
        "value": "gzip, deflate, br"
      },
      {
        "name": "accept-language",
        "value": "en-US,en;q=0.9"
      },
      {
        "name": "cookie",
        "value": "aws-waf-token=51c71352-41f5-4f6d-b676-c24907bdf819:EQoAZ/J+AAQAAAAA:t9wvxbw042wva7E2Y6lgud/bS6YG0CJKVAJqaRqDZ140ythKW0Zj9wKB2O8lSkYDRqf1yONcVBFo5u0eYi0tvT4rtQCXsu+KanAardW8go4QSLw4yoED59lgV7oAhGyCalAzE7ra29j+RvvZPsQyoQuDCrtoY/TvQyMTXIXzGPDC/rKBbg=="
      }
    ],
    "uri": "/pen-test/pets",
    "args": "",
    "httpVersion": "HTTP/1.1",
    "httpMethod": "GET",
    "requestId": "GINMHHUgoAMFxug="
  }
}
```

**Example Keluaran log untuk aturan CAPTCHA terhadap permintaan web yang tidak memiliki token CAPTCHA**  
Daftar log berikut adalah untuk permintaan web yang cocok dengan aturan dengan CAPTCHA tindakan. Permintaan web tidak memiliki token CAPTCHA, dan diblokir oleh. AWS WAF  

```
{
  "timestamp": 1632420416512,
  "formatVersion": 1,
  "webaclId": "arn:aws:wafv2:us-east-1:123456789012:regional/webacl/captcha-web-acl/585e38b5-afce-4d2a-b417-14fb08b66c67",
  "terminatingRuleId": "captcha-rule",
  "terminatingRuleType": "REGULAR",
  "action": "CAPTCHA",
  "terminatingRuleMatchDetails": [],
  "httpSourceName": "APIGW",
  "httpSourceId": "123456789012:b34myvfw0b:pen-test",
  "ruleGroupList": [],
  "rateBasedRuleList": [],
  "nonTerminatingMatchingRules": [],
  "requestHeadersInserted": null,
  "responseCodeSent": 405,
  "httpRequest": {
    "clientIp": "72.21.198.65",
    "country": "US",
    "headers": [
      {
        "name": "X-Forwarded-For",
        "value": "72.21.198.65"
      },
      {
        "name": "X-Forwarded-Proto",
        "value": "https"
      },
      {
        "name": "X-Forwarded-Port",
        "value": "443"
      },
      {
        "name": "Host",
        "value": "b34myvfw0b.gamma.execute-api.us-east-1.amazonaws.com"
      },
      {
        "name": "X-Amzn-Trace-Id",
        "value": "Root=1-614cc240-18b57ff33c10e5c016b508c5"
      },
      {
        "name": "sec-ch-ua",
        "value": "\"Chromium\";v=\"94\", \"Google Chrome\";v=\"94\", \";Not A Brand\";v=\"99\""
      },
      {
        "name": "sec-ch-ua-mobile",
        "value": "?0"
      },
      {
        "name": "sec-ch-ua-platform",
        "value": "\"Windows\""
      },
      {
        "name": "upgrade-insecure-requests",
        "value": "1"
      },
      {
        "name": "user-agent",
        "value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.54 Safari/537.36"
      },
      {
        "name": "accept",
        "value": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9"
      },
      {
        "name": "sec-fetch-site",
        "value": "cross-site"
      },
      {
        "name": "sec-fetch-mode",
        "value": "navigate"
      },
      {
        "name": "sec-fetch-user",
        "value": "?1"
      },
      {
        "name": "sec-fetch-dest",
        "value": "document"
      },
      {
        "name": "accept-encoding",
        "value": "gzip, deflate, br"
      },
      {
        "name": "accept-language",
        "value": "en-US,en;q=0.9"
      }
    ],
    "uri": "/pen-test/pets",
    "args": "",
    "httpVersion": "HTTP/1.1",
    "httpMethod": "GET",
    "requestId": "GINKHEssoAMFsrg="
  },
  "captchaResponse": {
    "responseCode": 405,
    "solveTimestamp": 0,
    "failureReason": "TOKEN_MISSING"
  }
}
```