AWSSupport-TroubleshootS3PublicRead - AWS Systems Manager Referensi buku runbook otomatisasi

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

AWSSupport-TroubleshootS3PublicRead

Deskripsi

AWSSupport-TroubleshootS3PublicReadRunbook mendiagnosis masalah saat membaca objek dari bucket Simple Storage Service (Amazon S3) publik yang Anda tentukan dalam parameter. S3BucketName Subset pengaturan juga dianalisis untuk objek di bucket S3.

Jalankan Otomasi ini (konsol)

Batasan

  • Otomatisasi ini tidak memeriksa titik akses yang memungkinkan akses publik ke objek.

  • Otomatisasi ini tidak mengevaluasi kunci kondisi dalam kebijakan bucket S3.

  • Jika Anda menggunakan AWS Organizations, otomatisasi ini tidak mengevaluasi kebijakan kontrol layanan untuk mengonfirmasi bahwa akses ke Amazon S3 diizinkan.

Jenis dokumen

Otomatisasi

Pemilik

Amazon

Platform

Linux,macOS, Windows

Parameter

  • AutomationAssumeRole

    Jenis: String

    Deskripsi: (Opsional) Nama Sumber Daya Amazon (ARN) peran AWS Identity and Access Management (IAM) yang memungkinkan Otomasi Systems Manager untuk melakukan tindakan atas nama Anda. Jika tidak ada peran yang ditentukan, Systems Manager Automation menggunakan izin pengguna yang memulai runbook ini.

  • CloudWatchLogGroupName

    Jenis: String

    Deskripsi: (Opsional) Grup CloudWatch log Amazon Logs tempat Anda ingin mengirim output otomatisasi. Jika grup log tidak ditemukan yang cocok dengan nilai yang Anda tentukan, otomatisasi akan membuat grup log menggunakan nilai parameter ini. Periode retensi untuk grup log yang dibuat oleh otomatisasi ini adalah 14 hari.

  • CloudWatchLogStreamName

    Jenis: String

    Deskripsi: (Opsional) Aliran CloudWatch log log tempat Anda ingin mengirim output otomatisasi. Jika aliran log tidak ditemukan yang cocok dengan nilai yang Anda tentukan, otomatisasi akan membuat aliran log menggunakan nilai parameter ini. Jika Anda tidak menentukan nilai untuk parameter ini, otomatisasi akan menggunakan ExecutionId untuk nama aliran log.

  • HttpGet

    Jenis: Boolean

    Nilai yang valid: benar/salah

    Default: betul

    Deskripsi: (Opsional) Jika parameter ini diatur ketrue, otomatisasi membuat permintaan HTTP sebagian ke objek yang S3BucketName Anda tentukan. Hanya byte pertama dari objek yang dikembalikan menggunakan header Range HTTP.

  • IgnoreBlockPublicAccess

    Jenis: Boolean

    Nilai yang valid: benar/salah

    Bawaan: salah

    Deskripsi: (Opsional) Jika parameter ini disetel ketrue, otomatisasi mengabaikan pengaturan blok akses publik dari bucket S3 yang Anda tentukan dalam parameter. S3BucketName Mengubah parameter ini dari nilai default tidak disarankan.

  • MaxObjects

    Jenis: Integer

    Nilai yang valid: 1-25

    Default: 5

    Deskripsi: (Opsional) Jumlah objek yang akan dianalisis dalam bucket S3 yang Anda tentukan dalam S3BucketName parameter.

  • S3 BucketName

    Jenis: String

    Deskripsi: (Wajib) Nama bucket S3 untuk memecahkan masalah.

  • S3 PrefixName

    Jenis: String

    Deskripsi: (Opsional) Awalan nama kunci objek yang ingin Anda analisis di bucket S3 Anda. Untuk informasi selengkapnya, lihat Kunci objek di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.

  • StartAfter

    Jenis: String

    Deskripsi: (Opsional) Nama kunci objek tempat Anda ingin otomatisasi mulai menganalisis objek di bucket S3 Anda.

  • ResourcePartition

    Tipe: String

    Nilai yang valid: aws | aws-us-gov | aws-cn

    Default: aws

    Deskripsi: (Wajib) Partisi tempat bucket S3 Anda berada.

  • Bertele-tele

    Jenis: Boolean

    Nilai yang valid: benar/salah

    Bawaan: salah

    Deskripsi: (Opsional) Untuk mengembalikan informasi yang lebih rinci selama otomatisasi, atur parameter ini ketrue. Hanya pesan peringatan dan kesalahan yang akan dikembalikan jika parameter disetel kefalse.

Izin IAM yang diperlukan

AutomationAssumeRoleParameter memerlukan tindakan berikut untuk menggunakan runbook dengan sukses.

logs:PutLogEventsIzin logs:CreateLogGrouplogs:CreateLogStream,, dan hanya diperlukan jika Anda ingin otomatisasi mengirim data CloudWatch log ke Log.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "iam:SimulateCustomPolicy", "iam:GetContextKeysForCustomPolicy", "s3:ListAllMyBuckets", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:PutRetentionPolicy", "s3:GetAccountPublicAccessBlock" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "s3:GetObject", "s3:GetObjectAcl", "s3:GetObjectTagging" ], "Resource": "arn:aws:s3:::awsexamplebucket1/*", "Effect": "Allow" }, { "Action": [ "s3:ListBucket", "s3:GetBucketLocation", "s3:GetBucketPublicAccessBlock", "s3:GetBucketRequestPayment", "s3:GetBucketPolicyStatus", "s3:GetBucketPolicy", "s3:GetBucketAcl" ], "Resource": "arn:aws:s3:::awsexamplebucket1", "Effect": "Allow" } ] }

Langkah Dokumen

  • aws:assertAwsResourceProperty- Mengonfirmasi bucket S3 ada, dan dapat diakses.

  • aws:executeScript- Mengembalikan lokasi bucket S3 dan ID pengguna kanonik Anda.

  • aws:executeScript- Mengembalikan pengaturan blok akses publik untuk akun Anda dan bucket S3.

  • aws:assertAwsResourceProperty- Mengonfirmasi pembayar bucket S3 diatur ke. BucketOwner Jika Requester Pays diaktifkan pada bucket S3, otomatisasi berakhir.

  • aws:executeScript- Mengembalikan status kebijakan bucket S3 dan menentukan apakah dianggap publik. Untuk informasi selengkapnya tentang bucket S3 publik, lihat Arti “publik” di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.

  • aws:executeAwsApi- Mengembalikan kebijakan bucket S3.

  • aws:executeAwsApi- Mengembalikan semua kunci konteks yang ditemukan dalam kebijakan bucket S3.

  • aws:assertAwsResourceProperty- Mengonfirmasi apakah ada penolakan eksplisit dalam kebijakan bucket S3 untuk tindakan GetObject API.

  • aws:executeAwsApi- Mengembalikan daftar kontrol akses (ACL) untuk bucket S3.

  • aws:executeScript- Membuat grup CloudWatch log Log dan aliran log jika Anda menentukan nilai untuk CloudWatchLogGroupName parameter.

  • aws:executeScript- Berdasarkan nilai yang Anda tentukan dalam parameter input runbook, mengevaluasi apakah setelan bucket S3 yang dikumpulkan selama otomatisasi mencegah objek diakses oleh publik. Skrip ini melakukan fungsi-fungsi berikut:

    • Mengevaluasi pengaturan blok akses publik

    • Mengembalikan objek dari bucket S3 Anda berdasarkan nilai yang Anda tentukan dalamMaxObjects,S3PrefixName, dan StartAfter parameter.

    • Mengembalikan kebijakan bucket S3 untuk mensimulasikan kebijakan IAM khusus untuk objek yang dikembalikan dari bucket S3 Anda.

    • Melakukan permintaan HTTP sebagian ke objek yang dikembalikan jika HttpGet parameter diatur ketrue. Hanya byte pertama dari objek yang dikembalikan menggunakan header Range HTTP.

    • Memeriksa nama kunci objek yang dikembalikan untuk mengonfirmasi apakah itu berakhir dengan satu atau dua periode. Nama kunci objek yang berakhir dengan periode tidak dapat diunduh dari konsol Amazon S3.

    • Memeriksa apakah pemilik objek yang dikembalikan cocok dengan pemilik bucket S3.

    • Memeriksa apakah ACL objek memberikan READ atau FULL_CONTROL izin kepada pengguna anonim.

    • Mengembalikan tag yang terkait dengan objek.

    • Menggunakan kebijakan IAM yang disimulasikan untuk mengonfirmasi apakah ada penolakan eksplisit untuk objek ini dalam kebijakan bucket S3 untuk tindakan API. GetObject

    • Mengembalikan metadata objek untuk mengonfirmasi bahwa kelas penyimpanan didukung.

    • Memeriksa setelan enkripsi sisi server objek untuk mengonfirmasi apakah objek dienkripsi menggunakan kunci yang dikelola pelanggan AWS Key Management Service ()AWS KMS.

Keluaran

AnalyzeObjects.ember

AnalyzeObjects.objek