Tujuan pencatatan - 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.

Tujuan pencatatan

Bagian ini menjelaskan tujuan pencatatan yang dapat Anda pilih untuk mengirim log AWS WAF kebijakan Anda. Setiap bagian menyediakan panduan untuk mengonfigurasi pencatatan log untuk jenis tujuan dan informasi tentang semua perilaku yang spesifik untuk jenis destinasi. Setelah mengonfigurasi tujuan pencatatan, Anda dapat memberikan spesifikasinya ke AWS WAF kebijakan Firewall Manager Anda untuk mulai masuk ke sana.

Anda dapat mengaktifkan pencatatan terpusat untuk AWS WAF kebijakan Anda untuk mendapatkan informasi terperinci tentang lalu lintas yang dianalisis oleh web Anda ACL dalam organisasi Anda. Informasi dalam log mencakup waktu AWS WAF menerima permintaan dari AWS sumber daya Anda, informasi terperinci tentang permintaan, dan tindakan untuk aturan yang dicocokkan oleh setiap permintaan dari semua akun dalam lingkup. Anda dapat mengirim log ke aliran data Amazon Data Firehose atau bucket Amazon Simple Storage Service (S3). Untuk informasi tentang AWS WAF pencatatan, lihat Pencatatan log AWS WAF ACLlalu lintas web di Panduan AWS WAF Pengembang.

catatan

AWS Firewall Manager mendukung opsi ini untuk AWS WAFV2, bukan untuk AWS WAF Klasik.

Firewall Manager tidak memiliki visibilitas ke kegagalan log setelah membuat konfigurasi logging. Anda bertanggung jawab untuk memverifikasi bahwa pengiriman log berfungsi seperti yang Anda inginkan.

catatan

Firewall Manager tidak mengubah konfigurasi logging yang ada di akun anggota organisasi Anda.

Aliran data Amazon Data Firehose

Topik ini memberikan informasi untuk mengirim log ACL lalu lintas web Anda ke aliran data Amazon Data Firehose.

Saat mengaktifkan pencatatan Amazon Data Firehose, Firewall Manager mengirimkan log dari web kebijakan Anda ACLs ke Amazon Data Firehose tempat Anda mengonfigurasi tujuan penyimpanan. Setelah Anda mengaktifkan logging, AWS WAF mengirimkan log untuk setiap web yang dikonfigurasiACL, melalui HTTPS titik akhir Kinesis Data Firehose ke tujuan penyimpanan yang dikonfigurasi. Sebelum Anda menggunakannya, uji aliran pengiriman Anda untuk memastikan bahwa itu memiliki throughput yang cukup untuk mengakomodasi log organisasi Anda. Untuk informasi selengkapnya tentang cara membuat Amazon Kinesis Data Firehose dan meninjau log yang disimpan, lihat Apa itu Amazon Data Firehose?

Anda harus memiliki izin berikut agar berhasil mengaktifkan logging dengan Kinesis:

  • iam:CreateServiceLinkedRole

  • firehose:ListDeliveryStreams

  • wafv2:PutLoggingConfiguration

Saat Anda mengonfigurasi tujuan pencatatan Amazon Data Firehose pada AWS WAF kebijakan, Firewall Manager membuat web ACL untuk kebijakan tersebut di akun administrator Manajer Firewall sebagai berikut:

  • Firewall Manager membuat web ACL di akun administrator Firewall Manager terlepas dari apakah akun tersebut berada dalam lingkup kebijakan.

  • Web ACL telah mengaktifkan logging, dengan nama logFMManagedWebACLV2-Loggingpolicy name-timestamp, di mana stempel waktu adalah UTC waktu log diaktifkan untuk webACL, dalam milidetik. Misalnya, FMManagedWebACLV2-LoggingMyWAFPolicyName-1621880565180. Web tidak ACL memiliki kelompok aturan dan tidak ada sumber daya terkait.

  • Anda dikenakan biaya untuk web ACL sesuai dengan AWS WAF pedoman harga. Untuk informasi selengkapnya, silakan lihat Harga AWS WAF.

  • Firewall Manager menghapus web ACL saat Anda menghapus kebijakan.

Untuk informasi tentang peran terkait layanan dan iam:CreateServiceLinkedRole izin, lihat. Menggunakan peran terkait layanan untuk AWS WAF

Untuk informasi selengkapnya tentang membuat aliran pengiriman, lihat Membuat Amazon Data Firehose Delivery Stream.

Bucket Amazon Simple Storage Service

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

Bucket yang Anda pilih sebagai tujuan pencatatan harus dimiliki oleh akun administrator Firewall Manager. Untuk informasi tentang persyaratan pembuatan bucket Amazon S3 untuk persyaratan pencatatan dan penamaan bucket, lihat Amazon Simple Storage Service di Panduan AWS WAF Pengembang.

Konsistensi akhirnya

Saat Anda mengubah AWS WAF kebijakan yang dikonfigurasi dengan tujuan pencatatan Amazon S3, Firewall Manager memperbarui kebijakan bucket untuk menambahkan izin yang diperlukan untuk pencatatan. Saat melakukannya, Firewall Manager mengikuti model last-writer-wins semantik dan konsistensi data yang diikuti Amazon Simple Storage Service. Jika Anda secara bersamaan membuat beberapa pembaruan kebijakan ke tujuan Amazon S3 di konsol Firewall Manager atau melalui PutPolicyAPI, beberapa izin mungkin tidak disimpan. Untuk informasi selengkapnya tentang model konsistensi data Amazon S3, lihat model konsistensi data Amazon S3 di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.

Izin untuk mempublikasikan log ke bucket Amazon S3

Mengonfigurasi pencatatan ACL lalu lintas web untuk bucket Amazon S3 dalam kebijakan memerlukan AWS WAF setelan izin berikut. Firewall Manager secara otomatis melampirkan izin ini ke bucket Amazon S3 saat mengonfigurasi Amazon S3 sebagai tujuan pencatatan untuk memberikan izin layanan untuk memublikasikan log ke bucket. Jika Anda ingin mengelola akses berbutir halus ke sumber daya logging dan Firewall Manager, Anda dapat mengatur sendiri izin ini. Untuk informasi tentang mengelola izin, lihat Manajemen akses untuk AWS sumber daya di Panduan IAM Pengguna. Untuk informasi tentang kebijakan AWS WAF terkelola, lihatAWS kebijakan terkelola untuk AWS WAF.

{ "Version": "2012-10-17", "Id": "AWSLogDeliveryForFirewallManager", "Statement": [ { "Sid": "AWSLogDeliveryAclCheckFMS", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::aws-waf-amzn-s3-demo-bucket" }, { "Sid": "AWSLogDeliveryWriteFMS", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::aws-waf-logs-amzn-s3-demo-bucket/policy-id/AWSLogs/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control" } } } ] }

Untuk mencegah masalah deputi lintas layanan yang membingungkan, Anda dapat menambahkan kunci konteks kondisi aws:SourceAccountglobal aws:SourceArndan global ke kebijakan bucket Anda. Untuk menambahkan kunci ini, Anda dapat mengubah kebijakan yang dibuat oleh Manajer Firewall untuk Anda saat mengonfigurasi tujuan pencatatan, atau jika Anda menginginkan kontrol berbutir halus, Anda dapat membuat kebijakan sendiri. Jika Anda menambahkan kondisi ini ke kebijakan tujuan pencatatan, Firewall Manager tidak akan memvalidasi atau memantau perlindungan deputi yang membingungkan. Untuk informasi umum tentang masalah wakil yang bingung, lihat Masalah wakil yang bingung dalam IAMUser Guide.

Saat Anda menambahkan sourceArn properti sourceAccount add, itu akan meningkatkan ukuran kebijakan bucket. Jika Anda menambahkan daftar panjang sourceArn properti sourceAccount add, berhati-hatilah agar tidak melebihi kuota ukuran kebijakan bucket Amazon S3.

Contoh berikut menunjukkan cara mencegah masalah deputi yang membingungkan dengan menggunakan kunci konteks kondisi aws:SourceAccount global aws:SourceArn dan global dalam kebijakan bucket Anda. Ganti member-account-id dengan akun IDs anggota di organisasi Anda.

{ "Version":"2012-10-17", "Id":"AWSLogDeliveryForFirewallManager", "Statement":[ { "Sid":"AWSLogDeliveryAclCheckFMS", "Effect":"Allow", "Principal":{ "Service":"delivery.logs.amazonaws.com" }, "Action":"s3:GetBucketAcl", "Resource":"arn:aws:s3:::aws-waf-logs-amzn-s3-demo-bucket", "Condition":{ "StringEquals":{ "aws:SourceAccount":[ "member-account-id", "member-account-id" ] }, "ArnLike":{ "aws:SourceArn":[ "arn:aws:logs:*:member-account-id:*", "arn:aws:logs:*:member-account-id:*" ] } } }, { "Sid":"AWSLogDeliveryWriteFMS", "Effect":"Allow", "Principal":{ "Service":"delivery.logs.amazonaws.com" }, "Action":"s3:PutObject", "Resource":"arn:aws:s3:::aws-waf-logs-amzn-s3-demo-bucket/policy-id/AWSLogs/*", "Condition":{ "StringEquals":{ "s3:x-amz-acl":"bucket-owner-full-control", "aws:SourceAccount":[ "member-account-id", "member-account-id" ] }, "ArnLike":{ "aws:SourceArn":[ "arn:aws:logs:*:member-account-id-1:*", "arn:aws:logs:*:member-account-id-2:*" ] } } } ] }

Enkripsi sisi server untuk bucket Amazon S3

Anda dapat mengaktifkan enkripsi sisi server Amazon S3 atau menggunakan kunci yang dikelola AWS Key Management Service pelanggan di bucket S3 Anda. Jika Anda memilih untuk menggunakan enkripsi Amazon S3 default di bucket Amazon S3 AWS WAF untuk log, Anda tidak perlu mengambil tindakan khusus apa pun. Namun, jika Anda memilih untuk menggunakan kunci enkripsi yang disediakan pelanggan untuk mengenkripsi data Amazon S3 Anda saat istirahat, Anda harus menambahkan pernyataan izin berikut ke kebijakan kunci Anda: AWS Key Management Service

{ "Sid": "Allow Logs Delivery to use the key", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }

Untuk informasi tentang penggunaan kunci enkripsi yang disediakan pelanggan dengan Amazon S3, lihat Menggunakan enkripsi sisi server dengan kunci yang disediakan pelanggan SSE (-C) di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.