Memblokir akses publik dengan kebijakan berbasis sumber daya - Amazon DynamoDB

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

Memblokir akses publik dengan kebijakan berbasis sumber daya

Blokir Akses Publik (BPA) adalah fitur yang mengidentifikasi dan mencegah melampirkan kebijakan berbasis sumber daya yang memberikan akses publik ke tabel, indeks, atau aliran DynamoDB Anda di seluruh akun Amazon Web Services () Anda.AWS Dengan BPA, Anda dapat mencegah akses publik ke sumber daya DynamoDB Anda. BPA melakukan pemeriksaan selama pembuatan atau modifikasi kebijakan berbasis sumber daya dan membantu meningkatkan postur keamanan Anda dengan DynamoDB.

BPA menggunakan penalaran otomatis untuk menganalisis akses yang diberikan oleh kebijakan berbasis sumber daya Anda dan memberi tahu Anda jika izin tersebut ditemukan pada saat mengelola kebijakan berbasis sumber daya. Analisis memverifikasi akses di semua pernyataan kebijakan berbasis sumber daya, tindakan, dan kumpulan kunci kondisi yang digunakan dalam kebijakan Anda.

penting

BPA membantu melindungi sumber daya Anda dengan mencegah akses publik diberikan melalui kebijakan berbasis sumber daya yang langsung dilampirkan ke sumber daya DynamoDB Anda, seperti tabel, indeks, dan aliran. Selain menggunakan BPA, hati-hati memeriksa kebijakan berikut untuk mengonfirmasi bahwa mereka tidak memberikan akses publik:

  • Kebijakan berbasis identitas yang dilampirkan pada AWS prinsipal terkait (misalnya, peran IAM)

  • Kebijakan berbasis sumber daya yang dilampirkan pada AWS sumber daya terkait (misalnya, kunci (KMS AWS Key Management Service ))

Anda harus memastikan bahwa prinsipal tidak menyertakan * entri atau bahwa salah satu kunci kondisi yang ditentukan membatasi akses dari prinsipal ke sumber daya. Jika kebijakan berbasis sumber daya memberikan akses publik ke tabel, indeks, atau streaming Anda, Akun AWS DynamoDB akan memblokir Anda dari membuat atau memodifikasi kebijakan hingga spesifikasi dalam kebijakan diperbaiki dan dianggap non-publik.

Anda dapat membuat kebijakan non-publik dengan menentukan satu atau beberapa prinsip di dalam blok. Principal Contoh kebijakan berbasis sumber daya berikut memblokir akses publik dengan menentukan dua prinsip.

{ "Effect": "Allow", "Principal": { "AWS": [ "123456789012", "111122223333" ] }, "Action": "dynamodb:*", "Resource": "*" }

Kebijakan yang membatasi akses dengan menentukan kunci kondisi tertentu juga tidak dianggap publik. Seiring dengan evaluasi prinsipal yang ditentukan dalam kebijakan berbasis sumber daya, kunci kondisi tepercaya berikut digunakan untuk menyelesaikan evaluasi kebijakan berbasis sumber daya untuk akses non-publik:

  • aws:PrincipalAccount

  • aws:PrincipalArn

  • aws:PrincipalOrgID

  • aws:PrincipalOrgPaths

  • aws:SourceAccount

  • aws:SourceArn

  • aws:SourceVpc

  • aws:SourceVpce

  • aws:UserId

  • aws:PrincipalServiceName

  • aws:PrincipalServiceNamesList

  • aws:PrincipalIsAWSService

  • aws:Ec2InstanceSourceVpc

  • aws:SourceOrgID

  • aws:SourceOrgPaths

Selain itu, agar kebijakan berbasis sumber daya bersifat non-publik, nilai untuk Amazon Resource Name (ARN) dan kunci string tidak boleh berisi wildcard atau variabel. Jika kebijakan berbasis sumber daya menggunakan aws:PrincipalIsAWSService kunci, Anda harus memastikan bahwa Anda telah menetapkan nilai kunci ke true.

Kebijakan berikut membatasi akses ke pengguna John di akun yang ditentukan. Kondisi tersebut membuat Principal terkendala dan tidak dianggap publik.

{ "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "dynamodb:*", "Resource": "*", "Condition": { "StringEquals": { "aws:PrincipalArn": "arn:aws:iam::123456789012:user/John" } } }

Contoh berikut dari kebijakan berbasis sumber daya non-publik kendala menggunakan operator. sourceVPC StringEquals

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "dynamodb:*", "Resource": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "Condition": { "StringEquals": { "aws:SourceVpc": [ "vpc-91237329" ] } } } ] }