Contoh kebijakan berbasis identitas untuk Amazon GuardDuty - Amazon GuardDuty

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

Contoh kebijakan berbasis identitas untuk Amazon GuardDuty

Secara default, pengguna dan peran tidak memiliki izin untuk membuat atau memodifikasi GuardDuty sumber daya. Mereka juga tidak dapat melakukan tugas dengan menggunakan AWS Management Console, AWS Command Line Interface (AWS CLI), atau AWS API. Untuk memberikan izin kepada pengguna untuk melakukan tindakan pada sumber daya yang mereka butuhkan, IAM administrator dapat membuat IAM kebijakan. Administrator kemudian dapat menambahkan IAM kebijakan ke peran, dan pengguna dapat mengambil peran.

Untuk mempelajari cara membuat kebijakan IAM berbasis identitas menggunakan contoh dokumen kebijakan ini, lihat Membuat JSON IAM kebijakan di Panduan Pengguna. IAM

Untuk detail tentang tindakan dan jenis sumber daya yang ditentukan oleh GuardDuty, termasuk format ARNs untuk setiap jenis sumber daya, lihat Kunci tindakan, sumber daya, dan kondisi untuk Amazon GuardDuty di Referensi Otorisasi Layanan.

Praktik terbaik kebijakan

Kebijakan berbasis identitas menentukan apakah seseorang dapat membuat, mengakses, atau menghapus GuardDuty sumber daya di akun Anda. Tindakan ini dapat menimbulkan biaya untuk Anda Akun AWS. Saat Anda membuat atau mengedit kebijakan berbasis identitas, ikuti panduan dan rekomendasi berikut:

  • Memulai dengan AWS kebijakan terkelola dan beralih ke izin hak istimewa terkecil — Untuk memulai pemberian izin kepada pengguna dan beban kerja Anda, gunakan AWS kebijakan terkelola yang memberikan izin untuk banyak kasus penggunaan umum. Mereka tersedia di Anda Akun AWS. Kami menyarankan Anda mengurangi izin lebih lanjut dengan mendefinisikan AWS kebijakan yang dikelola pelanggan yang khusus untuk kasus penggunaan Anda. Untuk informasi selengkapnya, silakan lihat AWS kebijakan terkelola atau AWS kebijakan terkelola untuk fungsi pekerjaan di Panduan IAM Pengguna.

  • Menerapkan izin hak istimewa paling sedikit — Saat Anda menetapkan izin dengan IAM kebijakan, berikan hanya izin yang diperlukan untuk melakukan tugas. Anda melakukannya dengan mendefinisikan tindakan yang dapat diambil pada sumber daya tertentu dalam kondisi tertentu, yang juga dikenal sebagai izin dengan hak akses paling rendah. Untuk informasi selengkapnya tentang penggunaan IAM untuk menerapkan izin, lihat Kebijakan dan izin IAM di IAM Panduan Pengguna.

  • Gunakan ketentuan dalam IAM kebijakan untuk membatasi akses lebih lanjut — Anda dapat menambahkan kondisi ke kebijakan Anda untuk membatasi akses ke tindakan dan sumber daya. Misalnya, Anda dapat menulis kondisi kebijakan untuk menentukan bahwa semua permintaan harus dikirim menggunakanSSL. Anda juga dapat menggunakan ketentuan untuk memberikan akses ke tindakan layanan jika digunakan melalui tindakan tertentu Layanan AWS, seperti AWS CloudFormation. Untuk informasi selengkapnya, lihat elemen IAM JSON kebijakan: Kondisi dalam Panduan IAM Pengguna.

  • Gunakan IAM Access Analyzer untuk memvalidasi IAM kebijakan Anda guna memastikan izin yang aman dan fungsional — IAM Access Analyzer memvalidasi kebijakan baru dan yang sudah ada sehingga kebijakan mematuhi bahasa IAM kebijakan () JSON dan praktik terbaik. IAM IAMAccess Analyzer menyediakan lebih dari 100 pemeriksaan kebijakan dan rekomendasi yang dapat ditindaklanjuti untuk membantu Anda membuat kebijakan yang aman dan fungsional. Untuk informasi selengkapnya, lihat Validasi kebijakan IAM Access Analyzer di IAMPanduan Pengguna.

  • Memerlukan otentikasi multi-faktor (MFA) - Jika Anda memiliki skenario yang mengharuskan IAM pengguna atau pengguna root di Akun AWS, nyalakan MFA untuk keamanan tambahan. Untuk meminta MFA kapan API operasi dipanggil, tambahkan MFA kondisi ke kebijakan Anda. Untuk informasi selengkapnya, lihat Mengonfigurasi API akses MFA yang dilindungi di IAMPanduan Pengguna.

Untuk informasi selengkapnya tentang praktik terbaik diIAM, lihat Praktik terbaik keamanan IAM di Panduan IAM Pengguna.

Menggunakan konsol GuardDuty

Untuk mengakses GuardDuty konsol Amazon, Anda harus memiliki set izin minimum. Izin ini harus memungkinkan Anda untuk membuat daftar dan melihat detail tentang GuardDuty sumber daya di Akun AWS. Jika Anda membuat kebijakan berbasis identitas yang lebih ketat daripada izin minimum yang diperlukan, konsol tidak akan berfungsi sebagaimana dimaksud untuk entitas (pengguna atau peran) dengan kebijakan tersebut.

Anda tidak perlu mengizinkan izin konsol minimum untuk pengguna yang melakukan panggilan hanya ke AWS CLI atau AWS API. Sebagai gantinya, izinkan akses hanya ke tindakan yang cocok dengan API operasi yang mereka coba lakukan.

Untuk memastikan bahwa pengguna dan peran masih dapat menggunakan GuardDuty konsol, lampirkan GuardDuty ConsoleAccess juga ReadOnly AWS kebijakan yang dikelola untuk entitas. Untuk informasi selengkapnya, lihat Menambahkan izin ke pengguna di Panduan IAM Pengguna.

Izin diperlukan untuk mengaktifkan GuardDuty

Untuk memberikan izin yang harus dimiliki oleh berbagai IAM identitas (pengguna, grup, dan peran), lampirkan AWS kebijakan terkelola: AmazonGuardDutyFullAccess kebijakan yang diperlukan untuk mengaktifkan. GuardDuty

Mengizinkan pengguna melihat izin mereka sendiri

Contoh ini menunjukkan cara Anda membuat kebijakan yang memungkinkan IAM pengguna melihat kebijakan sebaris dan terkelola yang dilampirkan pada identitas pengguna mereka. Kebijakan ini mencakup izin untuk menyelesaikan tindakan ini di konsol atau secara terprogram menggunakan AWS CLI atau AWS API.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }

IAMKebijakan khusus untuk memberikan akses hanya-baca GuardDuty

Untuk memberikan akses hanya-baca ke GuardDuty Anda dapat menggunakan kebijakan AmazonGuardDutyReadOnlyAccess terkelola.

Untuk membuat kebijakan khusus yang memberikan akses hanya-baca IAM peran, pengguna, atau grup GuardDuty, Anda dapat menggunakan pernyataan berikut:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "guardduty:ListMembers", "guardduty:GetMembers", "guardduty:ListInvitations", "guardduty:ListDetectors", "guardduty:GetDetector", "guardduty:ListFindings", "guardduty:GetFindings", "guardduty:ListIPSets", "guardduty:GetIPSet", "guardduty:ListThreatIntelSets", "guardduty:GetThreatIntelSet", "guardduty:GetMasterAccount", "guardduty:GetInvitationsCount", "guardduty:GetFindingsStatistics", "guardduty:DescribeMalwareScans", "guardduty:UpdateMalwareScanSettings", "guardduty:GetMalwareScanSettings" ], "Resource": "*" } ] }

Tolak Akses ke GuardDuty Temuan

Anda dapat menggunakan kebijakan berikut untuk menolak akses IAM peran, pengguna, atau grup ke GuardDuty temuan. Pengguna tidak dapat melihat temuan atau detail tentang temuan, tetapi mereka dapat mengakses semua GuardDuty operasi lainnya:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "guardduty:CreateDetector", "guardduty:DeleteDetector", "guardduty:UpdateDetector", "guardduty:GetDetector", "guardduty:ListDetectors", "guardduty:CreateIPSet", "guardduty:DeleteIPSet", "guardduty:UpdateIPSet", "guardduty:GetIPSet", "guardduty:ListIPSets", "guardduty:CreateThreatIntelSet", "guardduty:DeleteThreatIntelSet", "guardduty:UpdateThreatIntelSet", "guardduty:GetThreatIntelSet", "guardduty:ListThreatIntelSets", "guardduty:ArchiveFindings", "guardduty:UnarchiveFindings", "guardduty:CreateSampleFindings", "guardduty:CreateMembers", "guardduty:InviteMembers", "guardduty:GetMembers", "guardduty:DeleteMembers", "guardduty:DisassociateMembers", "guardduty:StartMonitoringMembers", "guardduty:StopMonitoringMembers", "guardduty:ListMembers", "guardduty:GetMasterAccount", "guardduty:DisassociateFromMasterAccount", "guardduty:AcceptAdministratorInvitation", "guardduty:ListInvitations", "guardduty:GetInvitationsCount", "guardduty:DeclineInvitations", "guardduty:DeleteInvitations" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "arn:aws:iam::123456789012:role/aws-service-role/guardduty.amazonaws.com/AWSServiceRoleForAmazonGuardDuty", "Condition": { "StringLike": { "iam:AWSServiceName": "guardduty.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "iam:PutRolePolicy", "iam:DeleteRolePolicy" ], "Resource": "arn:aws:iam::123456789012:role/aws-service-role/guardduty.amazonaws.com/AWSServiceRoleForAmazonGuardDuty" } ] }

Menggunakan IAM kebijakan khusus untuk membatasi akses ke GuardDuty sumber daya

Untuk menentukan akses pengguna GuardDuty berdasarkan ID detektor, Anda dapat menggunakan semua GuardDutyAPItindakan dalam IAM kebijakan kustom, kecuali operasi berikut:

  • guardduty:CreateDetector

  • guardduty:DeclineInvitations

  • guardduty:DeleteInvitations

  • guardduty:GetInvitationsCount

  • guardduty:ListDetectors

  • guardduty:ListInvitations

Gunakan operasi berikut dalam IAM kebijakan untuk menentukan akses pengguna GuardDuty berdasarkan IPSet ID dan ThreatIntelSet ID:

  • guardduty:DeleteIPSet

  • guardduty:DeleteThreatIntelSet

  • guardduty:GetIPSet

  • guardduty:GetThreatIntelSet

  • guardduty:UpdateIPSet

  • guardduty:UpdateThreatIntelSet

Contoh berikut ini menunjukkan cara membuat kebijakan menggunakan beberapa operasi sebelumnya:

  • Kebijakan ini memungkinkan pengguna untuk menjalankan operasi guardduty:UpdateDetector, menggunakan ID detektor 1234567 di Wilayah us-east-1:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "guardduty:UpdateDetector", ], "Resource": "arn:aws:guardduty:us-east-1:123456789012:detector/1234567" } ] }
  • Kebijakan ini memungkinkan pengguna untuk menjalankan guardduty:UpdateIPSet operasi, menggunakan ID detektor 1234567 dan ID 000000 di IPSet Wilayah us-east-1:

    catatan

    Pastikan bahwa pengguna memiliki izin yang diperlukan untuk mengakses daftar IP tepercaya dan daftar ancaman di GuardDuty. Untuk informasi selengkapnya, lihat Izin yang diperlukan untuk mengunggah daftar IP terpercaya dan daftar ancaman.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "guardduty:UpdateIPSet", ], "Resource": "arn:aws:guardduty:us-east-1:123456789012:detector/1234567/ipset/000000" } ] }
  • Kebijakan ini memungkinkan pengguna untuk menjalankan guardduty:UpdateIPSet operasi, menggunakan ID detektor dan ID 000000 di Wilayah us-east-1: IPSet

    catatan

    Pastikan bahwa pengguna memiliki izin yang diperlukan untuk mengakses daftar IP tepercaya dan daftar ancaman di GuardDuty. Untuk informasi selengkapnya, lihat Izin yang diperlukan untuk mengunggah daftar IP terpercaya dan daftar ancaman.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "guardduty:UpdateIPSet", ], "Resource": "arn:aws:guardduty:us-east-1:123456789012:detector/*/ipset/000000" } ] }
  • Kebijakan ini memungkinkan pengguna untuk menjalankan guardduty:UpdateIPSet operasi, menggunakan ID detektor dan IPSet ID apa pun di Wilayah us-east-1:

    catatan

    Pastikan bahwa pengguna memiliki izin yang diperlukan untuk mengakses daftar IP tepercaya dan daftar ancaman di GuardDuty. Untuk informasi selengkapnya, lihat Izin yang diperlukan untuk mengunggah daftar IP terpercaya dan daftar ancaman.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "guardduty:UpdateIPSet", ], "Resource": "arn:aws:guardduty:us-east-1:123456789012:detector/1234567/ipset/*" } ] }