Bagaimana AWS WAF bekerja dengan IAM - AWS WAF, AWS Firewall Manager AWS Shield Advanced, dan direktur keamanan AWS Shield jaringan

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.

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

Bagaimana AWS WAF bekerja dengan IAM

Bagian ini menjelaskan cara menggunakan fitur IAM dengan AWS WAF.

Sebelum Anda menggunakan IAM untuk mengelola akses AWS WAF, pelajari fitur IAM yang tersedia untuk digunakan. AWS WAF

Untuk mendapatkan tampilan tingkat tinggi tentang cara AWS WAF dan AWS layanan lain bekerja dengan sebagian besar fitur IAM, lihat AWS layanan yang bekerja dengan IAM di Panduan Pengguna IAM.

Kebijakan berbasis identitas untuk AWS WAF

Mendukung kebijakan berbasis identitas: Ya

Kebijakan berbasis identitas adalah dokumen kebijakan izin JSON yang dapat Anda lampirkan ke sebuah identitas, seperti pengguna IAM, grup pengguna IAM, atau peran IAM. Kebijakan ini mengontrol jenis tindakan yang dapat dilakukan oleh pengguna dan peran, di sumber daya mana, dan berdasarkan kondisi seperti apa. Untuk mempelajari cara membuat kebijakan berbasis identitas, lihat Tentukan izin IAM kustom dengan kebijakan terkelola pelanggan dalam Panduan Pengguna IAM.

Dengan kebijakan berbasis identitas IAM, Anda dapat menentukan secara spesifik apakah tindakan dan sumber daya diizinkan atau ditolak, serta kondisi yang menjadi dasar dikabulkan atau ditolaknya tindakan tersebut. Untuk mempelajari semua elemen yang dapat Anda gunakan dalam kebijakan JSON, lihat Referensi elemen kebijakan JSON IAM dalam Panduan Pengguna IAM.

Untuk melihat contoh kebijakan AWS WAF berbasis identitas, lihat. Contoh kebijakan berbasis identitas untuk AWS WAF

Kebijakan berbasis sumber daya dalam AWS WAF

Mendukung kebijakan berbasis sumber daya: Ya

Kebijakan berbasis sumber daya adalah dokumen kebijakan JSON yang Anda lampirkan ke sumber daya. Contoh kebijakan berbasis sumber daya adalah kebijakan kepercayaan peran IAM dan kebijakan bucket Amazon S3. Dalam layanan yang mendukung kebijakan berbasis sumber daya, administrator layanan dapat menggunakannya untuk mengontrol akses ke sumber daya tertentu. Untuk sumber daya tempat kebijakan dilampirkan, kebijakan menentukan tindakan apa yang dapat dilakukan oleh principal tertentu pada sumber daya tersebut dan dalam kondisi apa. Anda harus menentukan principal dalam kebijakan berbasis sumber daya. Prinsipal dapat mencakup akun, pengguna, peran, pengguna federasi, atau. Layanan AWS

Untuk mengaktifkan akses lintas akun, Anda dapat menentukan secara spesifik seluruh akun atau entitas IAM di akun lain sebagai principal dalam kebijakan berbasis sumber daya. Untuk informasi selengkapnya, lihat Akses sumber daya lintas akun di IAM dalam Panduan Pengguna IAM.

AWS WAF menggunakan kebijakan berbasis sumber daya untuk mendukung pembagian grup aturan di seluruh akun. Anda membagikan grup aturan yang Anda miliki dengan AWS akun lain dengan menyediakan setelan kebijakan berbasis sumber daya ke panggilan AWS WAF API PutPermissionPolicy atau panggilan CLI atau SDK yang setara. Untuk informasi tambahan, termasuk contoh dan tautan ke dokumentasi untuk bahasa lain yang tersedia, lihat PutPermissionPolicydi Referensi AWS WAF API. Fungsionalitas ini tidak tersedia melalui cara lain, seperti konsol atau CloudFormation.

Tindakan kebijakan untuk AWS WAF

Mendukung tindakan kebijakan: Ya

Administrator dapat menggunakan kebijakan AWS JSON untuk menentukan siapa yang memiliki akses ke apa. Yaitu, di mana utama dapat melakukan tindakan pada sumber daya, dan dalam kondisi apa.

Elemen Action dari kebijakan JSON menjelaskan tindakan yang dapat Anda gunakan untuk mengizinkan atau menolak akses dalam sebuah kebijakan. Sertakan tindakan dalam kebijakan untuk memberikan izin untuk melakukan operasi terkait.

Untuk melihat daftar AWS WAF tindakan dan izin untuk masing-masing tindakan, lihat Tindakan yang ditentukan oleh AWS WAF V2 di Referensi Otorisasi Layanan.

Tindakan kebijakan AWS WAF menggunakan awalan berikut sebelum tindakan:

wafv2

Untuk menetapkan secara spesifik beberapa tindakan dalam satu pernyataan, pisahkan tindakan tersebut dengan koma.

"Action": [ "wafv2:action1", "wafv2:action2" ]

Anda juga dapat menentukan beberapa tindakan menggunakan wildcard (*). Misalnya, untuk menentukan semua tindakan AWS WAF yang dimulai denganList, sertakan tindakan berikut:

"Action": "wafv2:List*"

Untuk melihat contoh kebijakan AWS WAF berbasis identitas, lihat. Contoh kebijakan berbasis identitas untuk AWS WAF

Tindakan yang memerlukan pengaturan izin tambahan

Beberapa tindakan memerlukan izin yang tidak dapat dijelaskan sepenuhnya dalam Tindakan yang ditentukan oleh AWS WAF V2 di Referensi Otorisasi Layanan. Bagian ini memberikan informasi izin tambahan.

Izin untuk AssociateWebACL

Bagian ini mencantumkan izin yang diperlukan untuk mengaitkan paket perlindungan (web ACL) ke sumber daya menggunakan tindakan. AWS WAF AssociateWebACL

Untuk CloudFront distribusi Amazon, alih-alih tindakan ini, gunakan CloudFront tindakanUpdateDistribution. Untuk selengkapnya, lihat UpdateDistributiondi Referensi Amazon CloudFront API.

API REST Amazon API Gateway

Memerlukan izin untuk memanggil API Gateway SetWebACL pada jenis sumber daya REST API dan memanggil AWS WAF AssociateWebACL paket perlindungan (web ACL).

{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "apigateway:SetWebACL" ], "Resource": [ "arn:aws:apigateway:*::/restapis/*/stages/*" ] }
Penyeimbang Beban Aplikasi

Memerlukan izin untuk memanggil elasticloadbalancing:SetWebACL tindakan pada jenis sumber daya Application Load Balancer dan memanggil AWS WAF AssociateWebACL paket perlindungan (web ACL).

{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "elasticloadbalancing:SetWebACL" ], "Resource": [ "arn:aws:elasticloadbalancing:*:account-id:loadbalancer/app/*/*" ] }
AWS AppSync GraphQL API

Memerlukan izin untuk memanggil AWS AppSync SetWebACL tipe sumber daya API GraphQL dan AWS WAF AssociateWebACL memanggil paket perlindungan (web ACL).

{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "appsync:SetWebACL" ], "Resource": [ "arn:aws:appsync:*:account-id:apis/*" ] }
Kolam pengguna Amazon Cognito

Memerlukan izin untuk memanggil AssociateWebACL tindakan Amazon Cognito pada jenis sumber daya kumpulan pengguna dan memanggil AWS WAF AssociateWebACL paket perlindungan (web ACL).

{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "cognito-idp:AssociateWebACL" ], "Resource": [ "arn:aws:cognito-idp:*:account-id:userpool/*" ] }
AWS App Runner layanan

Memerlukan izin untuk memanggil AssociateWebACL tindakan App Runner pada jenis sumber daya layanan App Runner dan memanggil AWS WAF AssociateWebACL ACL web.

{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "apprunner:AssociateWebAcl" ], "Resource": [ "arn:aws:apprunner:*:account-id:service/*/*" ] }
AWS Instans Akses Terverifikasi

Memerlukan izin untuk memanggil ec2:AssociateVerifiedAccessInstanceWebAcl tindakan pada jenis sumber daya instans Akses Terverifikasi dan memanggil AWS WAF AssociateWebACL ACL web.

{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "ec2:AssociateVerifiedAccessInstanceWebAcl" ], "Resource": [ "arn:aws:ec2:*:account-id:verified-access-instance/*" ] }

Izin untuk DisassociateWebACL

Bagian ini mencantumkan izin yang diperlukan untuk memisahkan paket perlindungan (web ACL) dari sumber daya menggunakan tindakan. AWS WAF DisassociateWebACL

Untuk CloudFront distribusi Amazon, alih-alih tindakan ini, gunakan CloudFront tindakan UpdateDistribution dengan ID paket perlindungan kosong (web ACL). Untuk selengkapnya, lihat UpdateDistributiondi Referensi Amazon CloudFront API.

API REST Amazon API Gateway

Memerlukan izin untuk memanggil API Gateway SetWebACL pada jenis sumber daya REST API. Tidak memerlukan izin untuk menelepon AWS WAF DisassociateWebACL.

{ "Sid": "DisassociateWebACL", "Effect": "Allow", "Action": [ "apigateway:SetWebACL" ], "Resource": [ "arn:aws:apigateway:*::/restapis/*/stages/*" ] }
Penyeimbang Beban Aplikasi

Memerlukan izin untuk memanggil elasticloadbalancing:SetWebACL tindakan pada tipe sumber daya Application Load Balancer. Tidak memerlukan izin untuk menelepon AWS WAF DisassociateWebACL.

{ "Sid": "DisassociateWebACL", "Effect": "Allow", "Action": [ "elasticloadbalancing:SetWebACL" ], "Resource": [ "arn:aws:elasticloadbalancing:*:account-id:loadbalancer/app/*/*" ] }
AWS AppSync GraphQL API

Memerlukan izin untuk memanggil AWS AppSync SetWebACL tipe sumber daya GraphQL API. Tidak memerlukan izin untuk menelepon AWS WAF DisassociateWebACL.

{ "Sid": "DisassociateWebACL", "Effect": "Allow", "Action": [ "appsync:SetWebACL" ], "Resource": [ "arn:aws:appsync:*:account-id:apis/*" ] }
Kolam pengguna Amazon Cognito

Memerlukan izin untuk memanggil DisassociateWebACL tindakan Amazon Cognito pada jenis sumber daya kumpulan pengguna dan untuk memanggil. AWS WAF DisassociateWebACL

{ "Sid": "DisassociateWebACL1", "Effect": "Allow", "Action": "wafv2:DisassociateWebACL", "Resource": "*" }, { "Sid": "DisassociateWebACL2", "Effect": "Allow", "Action": [ "cognito-idp:DisassociateWebACL" ], "Resource": [ "arn:aws:cognito-idp:*:account-id:userpool/*" ] }
AWS App Runner layanan

Memerlukan izin untuk memanggil DisassociateWebACL tindakan App Runner pada jenis sumber daya layanan App Runner dan untuk memanggil. AWS WAF DisassociateWebACL

{ "Sid": "DisassociateWebACL1", "Effect": "Allow", "Action": "wafv2:DisassociateWebACL", "Resource": "*" }, { "Sid": "DisassociateWebACL2", "Effect": "Allow", "Action": [ "apprunner:DisassociateWebAcl" ], "Resource": [ "arn:aws:apprunner:*:account-id:service/*/*" ] }
AWS Instans Akses Terverifikasi

Memerlukan izin untuk memanggil ec2:DisassociateVerifiedAccessInstanceWebAcl tindakan pada jenis sumber daya instans Akses Terverifikasi dan untuk memanggil AWS WAF DisassociateWebACL.

{ "Sid": "DisassociateWebACL1", "Effect": "Allow", "Action": "wafv2:DisassociateWebACL", "Resource": "*" }, { "Sid": "DisassociateWebACL2", "Effect": "Allow", "Action": [ "ec2:DisassociateVerifiedAccessInstanceWebAcl" ], "Resource": [ "arn:aws:ec2:*:account-id:verified-access-instance/*" ] }

Izin untuk GetWebACLForResource

Bagian ini mencantumkan izin yang diperlukan untuk mendapatkan paket perlindungan (web ACL) untuk sumber daya yang dilindungi menggunakan tindakan. AWS WAF GetWebACLForResource

Untuk CloudFront distribusi Amazon, alih-alih tindakan ini, gunakan CloudFront tindakanGetDistributionConfig. Untuk selengkapnya, lihat GetDistributionConfigdi Referensi Amazon CloudFront API.

catatan

GetWebACLForResourcemembutuhkan izin untuk meneleponGetWebACL. Dalam konteks ini, AWS WAF gunakan GetWebACL hanya untuk memverifikasi bahwa akun Anda memiliki izin yang diperlukan untuk mengakses paket perlindungan (web ACL) yang GetWebACLForResource kembali. Ketika Anda meneleponGetWebACLForResource, Anda mungkin mendapatkan kesalahan yang menunjukkan bahwa akun Anda tidak diizinkan untuk bekerja wafv2:GetWebACL pada sumber daya. AWS WAF tidak menambahkan jenis kesalahan ini ke riwayat AWS CloudTrail acara.

Amazon API Gateway REST API, Application Load Balancer, dan AWS AppSync GraphQL API

Memerlukan izin untuk menelepon AWS WAF GetWebACLForResource dan GetWebACL untuk paket perlindungan (web ACL).

{ "Sid": "GetWebACLForResource", "Effect": "Allow", "Action": [ "wafv2:GetWebACLForResource", "wafv2:GetWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }
Kolam pengguna Amazon Cognito

Memerlukan izin untuk memanggil GetWebACLForResource tindakan Amazon Cognito pada jenis sumber daya kumpulan pengguna dan untuk memanggil AWS WAF GetWebACLForResource dan. GetWebACL

{ "Sid": "GetWebACLForResource1", "Effect": "Allow", "Action": [ "wafv2:GetWebACLForResource", "wafv2:GetWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "GetWebACLForResource2", "Effect": "Allow", "Action": [ "cognito-idp:GetWebACLForResource" ], "Resource": [ "arn:aws:cognito-idp:*:account-id:userpool/*" ] }
AWS App Runner layanan

Memerlukan izin untuk memanggil DescribeWebAclForService tindakan App Runner pada jenis sumber daya layanan App Runner dan untuk memanggil AWS WAF GetWebACLForResource dan. GetWebACL

{ "Sid": "GetWebACLForResource1", "Effect": "Allow", "Action": [ "wafv2:GetWebACLForResource", "wafv2:GetWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "GetWebACLForResource2", "Effect": "Allow", "Action": [ "apprunner:DescribeWebAclForService" ], "Resource": [ "arn:aws:apprunner:*:account-id:service/*/*" ] }
AWS Instans Akses Terverifikasi

Memerlukan izin untuk memanggil ec2:GetVerifiedAccessInstanceWebAcl tindakan pada jenis sumber daya instans Akses Terverifikasi dan untuk memanggil AWS WAF GetWebACLForResource danGetWebACL.

{ "Sid": "GetWebACLForResource1", "Effect": "Allow", "Action": [ "wafv2:GetWebACLForResource", "wafv2:GetWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "GetWebACLForResource2", "Effect": "Allow", "Action": [ "ec2:GetVerifiedAccessInstanceWebAcl" ], "Resource": [ "arn:aws:ec2:*:account-id:verified-access-instance/*" ] }

Izin untuk ListResourcesForWebACL

Bagian ini mencantumkan izin yang diperlukan untuk mengambil daftar sumber daya yang dilindungi untuk paket perlindungan (web ACL) menggunakan tindakan. AWS WAF ListResourcesForWebACL

Untuk CloudFront distribusi Amazon, alih-alih tindakan ini, gunakan CloudFront tindakanListDistributionsByWebACLId. Untuk selengkapnya, lihat ListDistributionsByWebACLIddi Referensi Amazon CloudFront API.

Amazon API Gateway REST API, Application Load Balancer, dan AWS AppSync GraphQL API

Memerlukan izin AWS WAF ListResourcesForWebACL untuk memanggil ACL web.

{ "Sid": "ListResourcesForWebACL", "Effect": "Allow", "Action": [ "wafv2:ListResourcesForWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }
Kolam pengguna Amazon Cognito

Memerlukan izin untuk memanggil ListResourcesForWebACL tindakan Amazon Cognito pada jenis sumber daya kumpulan pengguna dan untuk memanggil. AWS WAF ListResourcesForWebACL

{ "Sid": "ListResourcesForWebACL1", "Effect": "Allow", "Action": [ "wafv2:ListResourcesForWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "ListResourcesForWebACL2", "Effect": "Allow", "Action": [ "cognito-idp:ListResourcesForWebACL" ], "Resource": [ "arn:aws:cognito-idp:*:account-id:userpool/*" ] }
AWS App Runner layanan

Memerlukan izin untuk memanggil ListAssociatedServicesForWebAcl tindakan App Runner pada jenis sumber daya layanan App Runner dan untuk memanggil. AWS WAF ListResourcesForWebACL

{ "Sid": "ListResourcesForWebACL1", "Effect": "Allow", "Action": [ "wafv2:ListResourcesForWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "ListResourcesForWebACL2", "Effect": "Allow", "Action": [ "apprunner:ListAssociatedServicesForWebAcl" ], "Resource": [ "arn:aws:apprunner:*:account-id:service/*/*" ] }
AWS Instans Akses Terverifikasi

Memerlukan izin untuk memanggil ec2:DescribeVerifiedAccessInstanceWebAclAssociations tindakan pada jenis sumber daya instans Akses Terverifikasi dan untuk memanggil AWS WAF ListResourcesForWebACL.

{ "Sid": "ListResourcesForWebACL1", "Effect": "Allow", "Action": [ "wafv2:ListResourcesForWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "ListResourcesForWebACL2", "Effect": "Allow", "Action": [ "ec2:DescribeVerifiedAccessInstanceWebAclAssociations" ], "Resource": [ "arn:aws:ec2:*:account-id:verified-access-instance/*" ] }

Sumber daya kebijakan untuk AWS WAF

Mendukung sumber daya kebijakan: Ya

Administrator dapat menggunakan kebijakan AWS JSON untuk menentukan siapa yang memiliki akses ke apa. Yaitu, di mana utama dapat melakukan tindakan pada sumber daya, dan dalam kondisi apa.

Elemen kebijakan JSON Resource menentukan objek yang menjadi target penerapan tindakan. Praktik terbaiknya, tentukan sumber daya menggunakan Amazon Resource Name (ARN). Untuk tindakan yang tidak mendukung izin di tingkat sumber daya, gunakan wildcard (*) untuk menunjukkan bahwa pernyataan tersebut berlaku untuk semua sumber daya.

"Resource": "*"

Untuk melihat daftar jenis AWS WAF sumber daya dan jenisnya ARNs, lihat Sumber daya yang ditentukan oleh AWS WAF V2 di Referensi Otorisasi Layanan. Untuk mempelajari tindakan mana yang dapat Anda tentukan ARN dari setiap sumber daya, lihat Tindakan yang ditentukan oleh AWS WAF V2. Untuk mengizinkan atau menolak akses ke subset sumber AWS WAF daya, sertakan ARN sumber daya dalam elemen resource kebijakan Anda.

ARNs Sumber AWS WAF wafv2 daya memiliki format berikut:

arn:partition:wafv2:region:account-id:scope/resource-type/resource-name/resource-id

Untuk informasi umum tentang spesifikasi ARN, lihat Amazon Resource Names (ARNs) di. Referensi Umum Amazon Web Services

Berikut daftar persyaratan yang khusus untuk ARNs sumber wafv2 daya:

  • region: Untuk AWS WAF sumber daya yang Anda gunakan untuk melindungi CloudFront distribusi Amazon, setel ini keus-east-1. Jika tidak, setel ini ke Wilayah yang Anda gunakan dengan sumber daya regional yang dilindungi.

  • scope: Tetapkan cakupan global untuk digunakan dengan CloudFront distribusi Amazon atau regional untuk digunakan dengan sumber daya regional mana pun yang AWS WAF mendukung. Sumber daya regional adalah Amazon API Gateway REST API, Application Load Balancer, GraphQL API AWS AppSync , kumpulan pengguna Amazon Cognito, layanan, dan instance Akses Terverifikasi. AWS App Runner AWS

  • resource-type: Tentukan salah satu nilai berikut:webacl,rulegroup,ipset,regexpatternset, ataumanagedruleset.

  • resource-name: Tentukan nama yang Anda berikan AWS WAF sumber daya, atau tentukan wildcard (*) untuk menunjukkan semua sumber daya yang memenuhi spesifikasi lain di ARN. Anda harus menentukan nama sumber daya dan ID sumber daya atau menentukan wildcard untuk keduanya.

  • resource-id: Tentukan ID AWS WAF sumber daya, atau tentukan wildcard (*) untuk menunjukkan semua sumber daya yang memenuhi spesifikasi lain di ARN. Anda harus menentukan nama sumber daya dan ID sumber daya atau menentukan wildcard untuk keduanya.

Misalnya, ARN berikut menentukan semua paket perlindungan (web ACLs) dengan cakupan regional untuk akun 111122223333 di Wilayah: us-west-1

arn:aws:wafv2:us-west-1:111122223333:regional/webacl/*/*

ARN berikut menentukan grup aturan bernama MyIPManagementRuleGroup dengan cakupan global untuk akun 111122223333 di Wilayah: us-east-1

arn:aws:wafv2:us-east-1:111122223333:global/rulegroup/MyIPManagementRuleGroup/1111aaaa-bbbb-cccc-dddd-example-id

Untuk melihat contoh kebijakan AWS WAF berbasis identitas, lihat. Contoh kebijakan berbasis identitas untuk AWS WAF

Kunci kondisi kebijakan untuk AWS WAF

Mendukung kunci kondisi kebijakan khusus layanan: Yes

Administrator dapat menggunakan kebijakan AWS JSON untuk menentukan siapa yang memiliki akses ke apa. Yaitu, principal dapat melakukan tindakan pada suatu sumber daya, dan dalam suatu syarat.

Elemen Condition menentukan ketika pernyataan dieksekusi berdasarkan kriteria yang ditetapkan. Anda dapat membuat ekspresi bersyarat yang menggunakan operator kondisi, misalnya sama dengan atau kurang dari, untuk mencocokkan kondisi dalam kebijakan dengan nilai-nilai yang diminta. Untuk melihat semua kunci kondisi AWS global, lihat kunci konteks kondisi AWS global di Panduan Pengguna IAM.

Selain itu, AWS WAF mendukung kunci kondisi berikut yang dapat Anda gunakan untuk memberikan pemfilteran halus untuk kebijakan IAM Anda:

  • wafv2: LogDestinationResource

    Kunci kondisi ini mengambil spesifikasi Nama Sumber Daya Amazon (ARN) untuk tujuan pencatatan. Ini adalah ARN yang Anda sediakan untuk tujuan pencatatan saat Anda menggunakan panggilan REST API. PutLoggingConfiguration

    Anda dapat secara eksplisit menentukan ARN dan Anda dapat menentukan pemfilteran untuk ARN. Contoh berikut menentukan pemfilteran untuk ARNs bucket Amazon S3 yang memiliki lokasi dan awalan tertentu.

    "Condition": { "ArnLike": { "wafv2:LogDestinationResource": "arn:aws:s3:::aws-waf-logs-suffix/custom-prefix/*" } }
  • wafv2: LogScope

    Kunci kondisi ini mendefinisikan sumber konfigurasi logging dalam string. Saat ini, ini selalu diatur ke defaultCustomer, yang menunjukkan bahwa tujuan logging dimiliki dan dikelola oleh Anda.

Untuk melihat daftar kunci AWS WAF kondisi, lihat Kunci kondisi untuk AWS WAF V2 di Referensi Otorisasi Layanan. Untuk mempelajari tindakan dan sumber daya yang dapat Anda gunakan kunci kondisi, lihat Tindakan yang ditentukan oleh AWS WAF V2.

Untuk melihat contoh kebijakan AWS WAF berbasis identitas, lihat. Contoh kebijakan berbasis identitas untuk AWS WAF

ACLs di AWS WAF

Mendukung ACLs: Tidak

Access control lists (ACLs) mengontrol prinsipal mana (anggota akun, pengguna, atau peran) yang memiliki izin untuk mengakses sumber daya. ACLs mirip dengan kebijakan berbasis sumber daya, meskipun mereka tidak menggunakan format dokumen kebijakan JSON.

ABAC dengan AWS WAF

Mendukung ABAC (tag dalam kebijakan): Sebagian

Kontrol akses berbasis atribut (ABAC) adalah strategi otorisasi yang menentukan izin berdasarkan atribut tanda. Anda dapat melampirkan tag ke entitas dan AWS sumber daya IAM, lalu merancang kebijakan ABAC untuk mengizinkan operasi saat tag prinsipal cocok dengan tag pada sumber daya.

Untuk mengendalikan akses berdasarkan tanda, berikan informasi tentang tanda di elemen kondisi dari kebijakan menggunakan kunci kondisi aws:ResourceTag/key-name, aws:RequestTag/key-name, atau aws:TagKeys.

Jika sebuah layanan mendukung ketiga kunci kondisi untuk setiap jenis sumber daya, nilainya adalah Ya untuk layanan tersebut. Jika suatu layanan mendukung ketiga kunci kondisi untuk hanya beberapa jenis sumber daya, nilainya adalah Parsial.

Untuk informasi selengkapnya tentang ABAC, lihat Tentukan izin dengan otorisasi ABAC dalam Panduan Pengguna IAM. Untuk melihat tutorial yang menguraikan langkah-langkah pengaturan ABAC, lihat Menggunakan kontrol akses berbasis atribut (ABAC) dalam Panduan Pengguna IAM.

Menggunakan kredensi sementara dengan AWS WAF

Mendukung kredensial sementara: Ya

Kredensi sementara menyediakan akses jangka pendek ke AWS sumber daya dan secara otomatis dibuat saat Anda menggunakan federasi atau beralih peran. AWS merekomendasikan agar Anda secara dinamis menghasilkan kredensi sementara alih-alih menggunakan kunci akses jangka panjang. Untuk informasi selengkapnya, lihat Kredensial keamanan sementara di IAM dan Layanan AWS yang berfungsi dengan IAM dalam Panduan Pengguna IAM.

Teruskan sesi akses untuk layanan AWS WAF

Mendukung sesi akses terusan (FAS): Ya

Sesi akses teruskan (FAS) menggunakan izin dari pemanggilan utama Layanan AWS, dikombinasikan dengan permintaan Layanan AWS untuk membuat permintaan ke layanan hilir. Untuk detail kebijakan ketika mengajukan permintaan FAS, lihat Sesi akses terusan.

Peran layanan untuk AWS WAF

Mendukung peran layanan: Ya

Peran layanan adalah peran IAM yang diambil oleh sebuah layanan untuk melakukan tindakan atas nama Anda. Administrator IAM dapat membuat, mengubah, dan menghapus peran layanan dari dalam IAM. Untuk informasi selengkapnya, lihat Buat sebuah peran untuk mendelegasikan izin ke Layanan AWS dalam Panduan pengguna IAM.

Awas

Mengubah izin untuk peran layanan dapat merusak AWS WAF fungsionalitas. Edit peran layanan hanya jika AWS WAF memberikan panduan untuk melakukannya.

Peran terkait layanan untuk AWS WAF

Mendukung peran terkait layanan: Ya

Peran terkait layanan adalah jenis peran layanan yang ditautkan ke. Layanan AWS Layanan tersebut dapat menjalankan peran untuk melakukan tindakan atas nama Anda. Peran terkait layanan muncul di Anda Akun AWS dan dimiliki oleh layanan. Administrator IAM dapat melihat, tetapi tidak dapat mengedit izin untuk peran terkait layanan.

Untuk detail tentang membuat atau mengelola peran AWS WAF terkait layanan, lihat. Menggunakan peran terkait layanan untuk AWS WAF