Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Contoh alur perencanaan untuk menggunakan informasi yang terakhir diakses
Anda dapat menggunakan informasi yang diakses terakhir untuk membuat keputusan tentang izin yang Anda berikan kepada IAM entitas atau AWS Organizations entitas Anda. Untuk informasi selengkapnya, lihat Memperbaiki izin dalam AWS menggunakan informasi yang terakhir diakses.
catatan
Sebelum Anda melihat informasi akses untuk entitas atau kebijakan di IAM atau AWS Organizations, pastikan Anda memahami periode pelaporan, entitas yang dilaporkan, dan jenis kebijakan yang dievaluasi untuk data Anda. Untuk lebih detailnya, lihat Hal yang perlu diketahui tentang informasi yang terakhir diakses.
Sebagai administrator Anda bebas untuk menyeimbangkan ketersediaan akses dan hak istimewa terkecil untuk perusahaan Anda.
Menggunakan informasi untuk mengurangi izin untuk grup IAM
Anda dapat menggunakan informasi yang diakses terakhir untuk mengurangi izin IAM grup agar hanya menyertakan layanan yang dibutuhkan pengguna Anda. Metode ini merupakan langkah penting dalam memberikan hak istimewa terkecil pada tingkat layanan.
Sebagai contoh, Paulo Santos adalah administrator yang bertanggung jawab untuk mendefinisikan izin AWS pengguna untuk Contoh Corp. Perusahaan ini baru saja mulai menggunakan AWS, dan tim pengembangan perangkat lunak belum menentukan layanan apa yang AWS akan mereka gunakan. Paulo ingin memberikan izin kepada tim untuk hanya mengakses layanan yang mereka butuhkan, tetapi karena itu belum ditentukan, dia sementara memberikan izin penggunaan daya. Kemudian dia menggunakan informasi yang diakses terakhir untuk mengurangi izin kelompok.
Paulo membuat kebijakan terkelola bernama ExampleDevelopment
menggunakan JSON teks berikut. Lalu ia melampirkannya ke kelompok bernama Development
dan menambahkan semua developer ke kelompok.
catatan
Pengguna daya Paulo mungkin membutuhkan izin iam:CreateServiceLinkedRole
untuk menggunakan beberapa layanan dan fitur. Dia mengerti bahwa dia menambahkan izin ini memungkinkan pengguna membuat peran terkait layanan apa pun. Dia menerima risiko ini untuk pengguna dayanya.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "FullAccessToAllServicesExceptPeopleManagement", "Effect": "Allow", "NotAction": [ "iam:*", "organizations:*" ], "Resource": "*" }, { "Sid": "RequiredIamAndOrgsActions", "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole", "iam:ListRoles", "organizations:DescribeOrganization" ], "Resource": "*" } ] }
Paulo memutuskan untuk menunggu selama 90 hari sebelum melihat informasi yang terakhir diakses untuk Development
menggunakan AWS Management Console. Dia melihat daftar layanan yang diakses anggota grup. Dia mengetahui bahwa pengguna mengakses lima layanan dalam seminggu terakhir: AWS CloudTrail, Amazon CloudWatch Logs, Amazon, EC2 AWS KMS, dan Amazon S3. Mereka mengakses beberapa layanan lain ketika mereka pertama kali mengevaluasi AWS, tetapi tidak sejak saat itu.
Paulo memutuskan untuk mengurangi izin kebijakan untuk memasukkan hanya lima layanan tersebut dan tindakan yang diperlukan dan IAM Organizations. Dia mengedit ExampleDevelopment
kebijakan menggunakan JSON teks berikut.
catatan
Pengguna daya Paulo mungkin membutuhkan izin iam:CreateServiceLinkedRole
untuk menggunakan beberapa layanan dan fitur. Dia mengerti bahwa dia menambahkan izin ini memungkinkan pengguna membuat peran terkait layanan apa pun. Dia menerima risiko ini untuk pengguna dayanya.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "FullAccessToListedServices", "Effect": "Allow", "Action": [ "s3:*", "kms:*", "cloudtrail:*", "logs:*", "ec2:*" ], "Resource": "*" }, { "Sid": "RequiredIamAndOrgsActions", "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole", "iam:ListRoles", "organizations:DescribeOrganization" ], "Resource": "*" } ] }
Untuk lebih mengurangi izin, Paulo dapat melihat kegiatan akun di AWS CloudTrail Riwayat peristiwa. Di sana, ia dapat melihat informasi kegiatan terperinci yang dapat ia gunakan untuk mengurangi izin kebijakan untuk hanya mencakup tindakan dan sumber daya yang dibutuhkan oleh developer. Untuk informasi selengkapnya, lihat Melihat CloudTrail Acara di CloudTrail Konsol di Panduan AWS CloudTrail Pengguna.
Menggunakan informasi untuk mengurangi izin bagi pengguna IAM
Anda dapat menggunakan informasi yang diakses terakhir untuk mengurangi izin bagi IAM pengguna individu.
Misalnya, Martha Rivera adalah administrator TI yang bertanggung jawab untuk memastikan bahwa orang-orang di perusahaannya tidak memiliki izin berlebih AWS . Sebagai bagian dari pemeriksaan keamanan berkala, ia meninjau izin semua IAM pengguna. Salah satu pengguna ini adalah developer aplikasi bernama Nikhil Jayashankar, yang sebelumnya telah memegang peran sebagai teknisi IT Karena perubahan dalam persyaratan pekerjaan, Nikhil adalah anggota baik grup app-dev
maupun grup security-team
. app-dev
Grup untuk pekerjaan barunya memberikan izin ke beberapa layanan termasuk Amazon, Amazon, Auto ScalingEBS, EC2 Amazon S3, Route 53, dan Elastic Transcoder. security-team
Kelompok untuk pekerjaan lamanya memberikan izin untuk IAM dan. CloudTrail
Sebagai administrator, Martha masuk ke IAM konsol dan memilih Pengguna, memilih namanikhilj
, dan kemudian memilih tab Terakhir Diakses.
Martha meninjau kolom Terakhir Diakses dan pemberitahuan bahwa Nikhil belum baru-baru ini mengaksesIAM,, Route 53 CloudTrail, Amazon Elastic Transcoder, dan sejumlah layanan lainnya. AWS Nikhil telah mengakses Amazon S3. Martha memilih S3 dari daftar layanan dan mengetahui bahwa Nikhil telah melakukan beberapa tindakan Amazon S3 dalam dua minggu terakhir. List
Di dalam perusahaannya, Martha menegaskan bahwa Nikhil tidak memiliki kebutuhan bisnis untuk mengakses IAM dan CloudTrail lagi karena dia tidak lagi menjadi anggota tim keamanan internal.
Martha sekarang siap bertindak atas layanan tersebut dan tindakan informasi yang terakhir diakses. Namun, tidak seperti grup pada contoh sebelumnya, IAM pengguna seperti nikhilj
mungkin tunduk pada beberapa kebijakan dan menjadi anggota dari beberapa grup. Martha harus berhati-hati agar tidak mengganggu akses nikhilj
atau anggota grup lainnya. Sebagai tambahan dalam hal untuk mempelajari apa akses yang harus dimiliki Nikhil, ia harus menentukan cara dia menerima izin ini.
Martha memilih tab Izin, tempatnya melihat kebijakan mana yang terkait secara langsung ke nikhilj
dan yang terlampir di grup. Ia membuka lebih lanjut setiap kebijakan dan melihat ringkasan kebijakan untuk mempelajari kebijakan yang memungkinkan akses ke layanan yang tidak digunakan oleh Nikhil:
-
IAM— Kebijakan yang
IAMFullAccess
AWS dikelola dilampirkan langsung kenikhilj
dan dilampirkan kesecurity-team
grup. -
CloudTrail — Kebijakan
AWS CloudTrailReadOnlyAccess
AWS terkelola dilampirkan padasecurity-team
grup. -
Route 53 – Kebijakan terkelola pelanggan
App-Dev-Route53
dilampirkan pada grupapp-dev
. -
Transkoder Elastis – Kebijakan terkelola pelanggan
App-Dev-ElasticTranscoder
terlampir pada grupapp-dev
.
Martha memutuskan untuk menghapus kebijakan IAMFullAccess
AWS terkelola yang dilampirkan nikhilj
langsung. Dia juga menghapus keanggotaan Nikhil ke grup security-team
. Kedua tindakan ini menghapus akses yang tidak perlu ke IAM dan CloudTrail.
Izin Nikhil untuk mengakses Route 53 dan Transkoder Elastis diberikan oleh grup app-dev
. Meskipun Nikhil tidak menggunakan layanan tersebut, anggota lain kelompok tersebut mungkin saja demikian. Martha meninjau informasi yang terakhir diakses untuk grup app-dev
dan mempelajari bahwa beberapa anggota mengakses Route 53 dan Amazon S3 baru-baru ini. Namun, tidak ada anggota kelompok yang telah mengakses Transkoder Elastis tahun lalu. Dia menghapus kebijakan pengelolaan pelanggan App-Dev-ElasticTranscoder
dari grup.
Martha kemudian meninjau informasi yang terakhir diakses untuk App-Dev-ElasticTranscoder
kebijakan terkelola pelanggan. Dia belajar bahwa kebijakan itu tidak melekat pada IAM identitas lain. Ia menginvestigasi dalam perusahaannya untuk memastikan bahwa kebijakan tersebut tidak diperlukan di waktu yang akan datang, kemudian ia menghapusnya.
Menggunakan informasi sebelum menghapus sumber daya IAM
Anda dapat menggunakan informasi yang terakhir diakses sebelum menghapus IAM sumber daya untuk memastikan bahwa sejumlah waktu telah berlalu sejak seseorang terakhir menggunakan sumber daya tersebut. Ini berlaku untuk pengguna, grup, peran, dan kebijakan. Untuk mempelajari lebih lanjut tentang tindakan ini, lihat topik berikut:
-
IAMpengguna — Menghapus atau menonaktifkan pengguna IAM
-
Grup - Hapus IAM grup
-
Peran - Hapus peran atau profil contoh
-
Kebijakan — Hapus IAM kebijakan (ini juga memisahkan kebijakan dari identitas)
Menggunakan informasi sebelum menyunting kebijakan IAM
Anda dapat meninjau informasi yang terakhir diakses untuk IAM identitas (pengguna, grup, atau peran), atau untuk IAM kebijakan sebelum mengedit kebijakan yang memengaruhi sumber daya tersebut. Ini penting karena Anda tidak ingin menghapus akses untuk orang yang menggunakannya.
Misalnya, Arnav Desai adalah pengembang dan AWS administrator untuk Example Corp. Ketika timnya mulai menggunakan AWS, mereka memberi semua pengembang akses power-user yang memungkinkan mereka akses penuh ke semua layanan kecuali dan Organizations. IAM Sebagai langkah pertama untuk memberikan hak istimewa paling rendah, Arnav ingin menggunakan AWS CLI untuk meninjau kebijakan yang dikelola dalam akunnya.
Untuk melakukannya, Arnav terlebih dahulu mencantumkan kebijakan izin yang dikelola pelanggan di akunnya yang terlampir ke suatu identitas, menggunakan perintah berikut:
aws iam list-policies --scope Local --only-attached --policy-usage-filter PermissionsPolicy
Dari tanggapan, ia menangkap ARN untuk setiap kebijakan. Arnav membuat laporan untuk informasi yang terakhir diakses bagi setiap kebijakan dengan menggunakan perintah berikut.
aws iam generate-service-last-accessed-details --arn arn:aws:iam::123456789012:policy/ExamplePolicy1
Dari respons tersebut, dia mengambil ID dari laporan yang dihasilkan dari bidang JobId
. Arnav kemudian melakukan jajak pendapat perintah berikut sampai bidang JobStatus
menghasilkan nilai COMPLETED
atau FAILED
. Jika tugas gagal, ia akan menangkap kesalahan.
aws iam get-service-last-accessed-details --job-id 98a765b4-3cde-2101-2345-example678f9
Ketika pekerjaan memiliki statusCOMPLETED
, Arnav mem-parsing isi array yang diformat. JSON ServicesLastAccessed
"ServicesLastAccessed": [ { "TotalAuthenticatedEntities": 1, "LastAuthenticated": 2018-11-01T21:24:33.222Z, "ServiceNamespace": "dynamodb", "LastAuthenticatedEntity": "arn:aws:iam::123456789012:user/IAMExampleUser", "ServiceName": "Amazon DynamoDB" }, { "TotalAuthenticatedEntities": 0, "ServiceNamespace": "ec2", "ServiceName": "Amazon EC2" }, { "TotalAuthenticatedEntities": 3, "LastAuthenticated": 2018-08-25T15:29:51.156Z, "ServiceNamespace": "s3", "LastAuthenticatedEntity": "arn:aws:iam::123456789012:role/IAMExampleRole", "ServiceName": "Amazon S3" } ]
Dari informasi ini, Arnav mengetahui bahwa ExamplePolicy1
kebijakan tersebut memungkinkan akses ke tiga layanan, Amazon DynamoDB, Amazon S3, dan Amazon. EC2 IAMPengguna bernama IAMExampleUser
terakhir mencoba mengakses DynamoDB pada 1 November, dan seseorang menggunakan peran IAMExampleRole
tersebut untuk mencoba mengakses Amazon S3 pada 25 Agustus. Ada pula dua entitas lagi yang mencoba mengakses Amazon S3 tahun lalu. Namun, tidak ada yang mencoba mengakses Amazon EC2 dalam setahun terakhir.
Ini berarti bahwa Arnav dapat dengan aman menghapus EC2 tindakan Amazon dari kebijakan. Arnav ingin meninjau JSON dokumen saat ini untuk kebijakan tersebut. Pertama, ia harus menentukan nomor versi kebijakan menggunakan perintah berikut.
aws iam list-policy-versions --policy-arn arn:aws:iam::123456789012:policy/ExamplePolicy1
Dari respons tersebut, Arnav mengumpulkan nomor versi default saat ini dari himpunan Versions
. Dia kemudian menggunakan nomor versi (v2
) untuk meminta dokumen JSON kebijakan menggunakan perintah berikut.
aws iam get-policy-version --policy-arn arn:aws:iam::123456789012:policy/ExamplePolicy1 --version-id v2
Arnav menyimpan dokumen JSON kebijakan yang dikembalikan di Document
bidang array. PolicyVersion
Dalam dokumen kebijakan, Arnav mencari tindakan yang dalam namespace ec2
. Jika tidak ada tindakan dari namespace lain yang tersisa dalam kebijakan, maka dia memisahkan kebijakan dari identitas yang terdampak (pengguna, grup, dan peran). Kemudian, dia menghapus kebijakan tersebut. Dalam hal ini, kebijakan tersebut mencakup layanan Amazon DynamoDB dan Amazon S3. Jadi Arnav menghapus EC2 tindakan Amazon dari dokumen dan menyimpan perubahannya. Kemudian, ia menggunakan perintah berikut untuk memperbarui kebijakan dengan menggunakan versi baru berkas tersebut dan menetapkan versi tersebut sebagai versi kebijakan default.
aws iam create-policy-version --policy-arn arn:aws:iam::123456789012:policy/ExamplePolicy1 --policy-document file://UpdatedPolicy.json --set-as-default
ExamplePolicy1
Kebijakan ini sekarang diperbarui untuk menghapus akses ke EC2 layanan Amazon yang tidak perlu.
Skenario IAM lainnya
Informasi tentang kapan IAM sumber daya (pengguna, grup, peran, atau kebijakan) terakhir kali mencoba mengakses layanan dapat membantu Anda ketika Anda menyelesaikan salah satu tugas berikut:
-
Kebijakan – Menyunting kebijakan yang dikelola pelanggan atau kebijakan selaras yang sudah ada untuk menghapus izin
-
Kebijakan – Mengonversi kebijakan selaras ke kebijakan terkelola dan kemudian menghapusnya
-
Kebijakan – Menambahkan penolakan secara eksplisit ke kebijakan yang sudah ada
-
Policies – Melepas kebijakan terkelola dari suatu identitas (pengguna, grup, atau peran)
-
Kelompok – Menghapus pengguna dari grup
Menggunakan informasi untuk memperbaiki izin unit organisasi.
Anda dapat menggunakan informasi yang diakses terakhir untuk memperbaiki izin unit organisasi (OU) di AWS Organizations.
Misalnya, John Stiles adalah seorang AWS Organizations administrator. Dia bertanggung jawab untuk memastikan bahwa orang-orang di perusahaan Akun AWS tidak memiliki izin berlebih. Sebagai bagian dari audit keamanan berkala, ia meninjau izin dari organisasinya. OU Development
-nya berisikan akun yang sering digunakan untuk menguji layanan AWS
baru. John memutuskan untuk secara berkala meninjau laporan bagi layanan yang belum diakses dalam lebih dari 180 hari. Kemudian, ia menghapus izin bagi anggota OU untuk mengakses layanan tersebut.
John masuk ke IAM konsol menggunakan kredensi akun manajemennya. Di IAM konsol, ia menemukan data Organizations untuk Development
OU. Dia meninjau tabel laporan akses Layanan dan melihat dua AWS layanan yang belum diakses lebih dari periode yang diinginkannya selama 180 hari. Dia ingat menambahkan izin untuk tim pengembangan untuk mengakses Amazon Lex dan. AWS Database Migration Service John menghubungi tim pengembangan dan mengonfirmasi bahwa mereka tidak lagi memiliki kepentingan bisnis untuk menguji layanan ini.
John sekarang siap bertindak atas informasi yang terakhir diakses. Dia memilih Edit AWS Organizations dan diingatkan bahwa melekat pada beberapa entitas. SCP Dia memilih Lanjutkan. Pada tahun AWS Organizations, ia meninjau target untuk mempelajari entitas Organizations mana yang SCP dilampirkan. Semua entitas berada dalam OU Development
.
John memutuskan untuk menolak akses ke Amazon Lex dan AWS Database Migration Service tindakan di NewServiceTest
SCP. Tindakan ini menghapus akses yang tidak perlu ke layanan.