Pemantauan AWS Identity and Access Management Access Analyzer dengan Amazon EventBridge - AWS Identity and Access Management

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

Pemantauan AWS Identity and Access Management Access Analyzer dengan Amazon EventBridge

Gunakan informasi dalam topik ini untuk mempelajari cara memantau temuan IAM Access Analyzer dan mengakses pratinjau dengan Amazon. EventBridge EventBridge adalah versi baru dari Amazon CloudWatch Events.

Peristiwa temuan

IAMAccess Analyzer mengirimkan acara EventBridge untuk setiap temuan yang dihasilkan, untuk perubahan status temuan yang ada, dan saat temuan dihapus. Untuk menerima temuan dan pemberitahuan tentang temuan, Anda harus membuat aturan acara di Amazon EventBridge. Saat Anda membuat aturan peristiwa, Anda juga dapat menetapkan tindakan target yang akan dipicu berdasarkan aturan tersebut. Misalnya, Anda dapat membuat aturan acara yang memicu SNS topik Amazon saat peristiwa untuk temuan baru diterima dari IAM Access Analyzer.

Akses peristiwa pratinjau

IAMAccess Analyzer mengirimkan acara EventBridge untuk setiap pratinjau akses dan mengubah statusnya. Ini termasuk peristiwa ketika pratinjau akses pertama kali dibuat (status Membuat), ketika pratinjau akses selesai (status Selesai), atau ketika pembuatan pratinjau akses gagal (status Gagal). Untuk menerima pemberitahuan tentang pratinjau akses, Anda harus membuat aturan acara di EventBridge. Saat Anda membuat aturan peristiwa, Anda dapat menetapkan tindakan target yang akan dipicu berdasarkan aturan tersebut. Misalnya, Anda dapat membuat aturan peristiwa yang memicu SNS topik Amazon saat peristiwa untuk pratinjau akses selesai diterima dari IAM Access Analyzer.

Frekuensi pemberitahuan peristiwa

IAMAccess Analyzer mengirimkan peristiwa untuk temuan dan temuan baru dengan pembaruan status EventBridge dalam waktu sekitar satu jam sejak peristiwa terjadi di akun Anda. IAMAccess Analyzer juga mengirimkan peristiwa ke EventBridge saat temuan yang diselesaikan dihapus karena periode retensi telah kedaluwarsa. Untuk temuan yang dihapus karena penganalisis yang menghasilkannya dihapus, acara dikirim ke EventBridge sekitar 24 jam setelah penganalisis dihapus. Saat temuan dihapus, status temuan tidak berubah. Sebaliknya, atribut isDeleted diatur menjadi true. IAMAccess Analyzer juga mengirimkan peristiwa untuk pratinjau akses yang baru dibuat dan perubahan status pratinjau akses ke. EventBridge

Contoh peristiwa temuan akses eksternal

Berikut ini adalah contoh IAM Access Analyzer external access finding event yang dikirim ke EventBridge. Yang id tercantum adalah ID untuk acara di EventBridge. Untuk mempelajari lebih lanjut, lihat Peristiwa dan Pola Peristiwa di EventBridge.

Di objek detail, nilai untuk atribut accountId dan region merujuk pada akun dan wilayah yang dilaporkan dalam temuan. Atribut isDeleted menunjukkan jika peristiwa berasal dari temuan yang dihapus. id adalah ID temuan. resourcesArray adalah singleton dengan ARN penganalisis yang menghasilkan temuan.

{ "account": "111122223333", "detail": { "accountId": "111122223333", "action": [ "s3:GetObject" ], "analyzedAt": "2019-11-21T01:22:22Z", "condition": {}, "createdAt": "2019-11-20T04:58:50Z", "id": "22222222-dcba-4444-dcba-333333333333", "isDeleted": false, "isPublic": false, "principal": { "AWS": "999988887777" }, "region": "us-west-2", "resource": "arn:aws:s3:::amzn-s3-demo-bucket", "resourceType": "AWS::S3::Bucket", "status": "ACTIVE", "updatedAt": "2019-11-21T01:14:07Z", "version": "1.0" }, "detail-type": "Access Analyzer Finding", "id": "11111111-2222-4444-aaaa-333333333333", "region": "us-west-2", "resources": [ "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/MyAnalyzer" ], "source": "aws.access-analyzer", "time": "2019-11-21T01:22:33Z", "version": "0" }

IAMAccess Analyzer juga mengirimkan peristiwa ke EventBridge untuk temuan kesalahan. Temuan kesalahan adalah temuan yang dihasilkan ketika IAM Access Analyzer tidak dapat menganalisis sumber daya. Peristiwa untuk temuan kesalahan meliputi error sebagaimana ditunjukkan dalam contoh berikut.

{ "account": "111122223333", "detail": { "accountId": "111122223333", "analyzedAt": "2019-11-21T01:22:22Z", "createdAt": "2019-11-20T04:58:50Z", "error": "ACCESS_DENIED", "id": "22222222-dcba-4444-dcba-333333333333", "isDeleted": false, "region": "us-west-2", "resource": "arn:aws:s3:::amzn-s3-demo-bucket", "resourceType": "AWS::S3::Bucket", "status": "ACTIVE", "updatedAt": "2019-11-21T01:14:07Z", "version": "1.0" }, "detail-type": "Access Analyzer Finding", "id": "11111111-2222-4444-aaaa-333333333333", "region": "us-west-2", "resources": [ "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/MyAnalyzer" ], "source": "aws.access-analyzer", "time": "2019-11-21T01:22:33Z", "version": "0" }

Berikut ini adalah contoh IAM Access Analyzer peristiwa pencarian akses yang tidak digunakan dikirim ke. EventBridge Yang id tercantum adalah ID untuk acara di EventBridge. Untuk mempelajari lebih lanjut, lihat Peristiwa dan Pola Peristiwa di EventBridge.

Di objek detail, nilai untuk atribut accountId dan region merujuk pada akun dan wilayah yang dilaporkan dalam temuan. Atribut isDeleted menunjukkan jika peristiwa berasal dari temuan yang dihapus. id adalah ID temuan.

{ "version": "0", "id": "dc7ce3ee-114b-3243-e249-7f10f9054b21", "detail-type": "Unused Access Finding for IAM entities", "source": "aws.access-analyzer", "account": "123456789012", "time": "2023-09-29T17:31:40Z", "region": "us-west-2", "resources": [ "arn:aws:access-analyzer:us-west-2:123456789012:analyzer/integTestLongLivingAnalyzer-DO-NOT-DELETE" ], "detail": { "findingId": "b8ae0460-5d29-4922-b92a-ba956c986277", "resource": "arn:aws:iam::111122223333:role/FindingIntegTestFakeRole", "resourceType": "AWS::IAM::Role", "accountId": "111122223333", "createdAt": "2023-09-29T17:29:18.758Z", "updatedAt": "2023-09-29T17:29:18.758Z", "analyzedAt": "2023-09-29T17:29:18.758Z", "previousStatus": "", "status": "ACTIVE", "version": "62160bda-8e94-46d6-ac97-9670930d8ffb", "isDeleted": false, "findingType": "UnusedPermission", "numberOfUnusedServices": 0, "numberOfUnusedActions": 1 } }

IAMAccess Analyzer juga mengirimkan peristiwa ke EventBridge untuk temuan kesalahan. Temuan kesalahan adalah temuan yang dihasilkan ketika IAM Access Analyzer tidak dapat menganalisis sumber daya. Peristiwa untuk temuan kesalahan meliputi error sebagaimana ditunjukkan dalam contoh berikut.

{ "version": "0", "id": "c2e7aa1a-4df7-7652-f33e-64113b8997d4", "detail-type": "Unused Access Finding for IAM entities", "source": "aws.access-analyzer", "account": "111122223333", "time": "2023-10-31T20:26:12Z", "region": "us-west-2", "resources": [ "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ba811f91-de99-41a4-97c0-7481898b53f2" ], "detail": { "findingId": "b01a34f2-e118-46c9-aef8-0d8526b495c7", "resource": "arn:aws:iam::123456789012:role/TestRole", "resourceType": "AWS::IAM::Role", "accountId": "444455556666", "createdAt": "2023-10-31T20:26:08.647Z", "updatedAt": "2023-10-31T20:26:09.245Z", "analyzedAt": "2023-10-31T20:26:08.525Z", "previousStatus": "", "status": "ACTIVE", "version": "7c7a72a2-7963-4c59-ac71-f0be597010f7", "isDeleted": false, "findingType": "UnusedIAMRole", "error": "INTERNAL_ERROR" } }

Contoh peristiwa pratinjau akses

Contoh berikut menunjukkan data untuk acara pertama yang dikirim EventBridge saat Anda membuat pratinjau akses. resourcesArray adalah singleton dengan ARN penganalisis yang dikaitkan dengan pratinjau akses. Di objek detail, id mengacu pada ID pratinjau akses dan configuredResources mengacu pada sumber daya yang pratinjau aksesnya dibuat. status adalah Creating dan mengacu pada status pratinjau akses. Parameter previousStatus tidak ditentukan karena pratinjau akses baru saja dibuat.

{ "account": "111122223333", "detail": { "accessPreviewId": "aaaabbbb-cccc-dddd-eeee-ffffaaaabbbb", "configuredResources": [ "arn:aws:s3:::amzn-s3-demo-bucket" ], "createdAt": "2020-02-20T00:00:00.00Z", "region": "us-west-2", "status": "CREATING", "version": "1.0" }, "detail-type": "Access Preview State Change", "id": "aaaabbbb-2222-3333-4444-555566667777", "region": "us-west-2", "resources": [ "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/MyAnalyzer" ], "source": "aws.access-analyzer", "time": "2020-02-20T00:00:00.00Z", "version": "0" }

Contoh berikut menunjukkan data untuk peristiwa yang dikirim ke EventBridge untuk pratinjau akses dengan perubahan status dari Creating keCompleted. Dalam objek detail, id mengacu pada ID pratinjau akses. status dan previousStatus mengacu pada status pratinjau akses, ketika status sebelumnya Creating dan status saat ini adalah Completed.

{ "account": "111122223333", "detail": { "accessPreviewId": "aaaabbbb-cccc-dddd-eeee-ffffaaaabbbb", "configuredResources": [ "arn:aws:s3:::amzn-s3-demo-bucket" ], "createdAt": "2020-02-20T00:00:00.000Z", "previousStatus": "CREATING", "region": "us-west-2", "status": "COMPLETED", "version": "1.0" }, "detail-type": "Access Preview State Change", "id": "11112222-3333-4444-5555-666677778888", "region": "us-west-2", "resources": [ "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/MyAnalyzer" ], "source": "aws.access-analyzer", "time": "2020-02-20T00:00:00.00Z", "version": "0" }

Contoh berikut menunjukkan data untuk peristiwa yang dikirim ke EventBridge untuk pratinjau akses dengan perubahan status dari Creating keFailed. Di objek detail, id mengacu pada ID pratinjau akses. status dan previousStatus mengacu pada status pratinjau akses, ketika status sebelumnya Creating dan status saat ini adalah Failed. Bidang statusReason menyediakan kode alasan yang menunjukkan bahwa pratinjau akses gagal karena konfigurasi sumber daya yang tidak valid.

{ "account": "111122223333", "detail": { "accessPreviewId": "aaaabbbb-cccc-dddd-eeee-ffffaaaabbbb", "configuredResources": [ "arn:aws:s3:::amzn-s3-demo-bucket" ], "createdAt": "2020-02-20T00:00:00.00Z", "previousStatus": "CREATING", "region": "us-west-2", "status": "FAILED", "statusReason": { "code": "INVALID_CONFIGURATION" }, "version": "1.0" }, "detail-type": "Access Preview State Change", "id": "99998888-7777-6666-5555-444433332222", "region": "us-west-2", "resources": [ "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/MyAnalyzer" ], "source": "aws.access-analyzer", "time": "2020-02-20T00:00:00.00Z", "version": "0" }

Membuat aturan peristiwa menggunakan konsol

Prosedur berikut menjelaskan cara membuat aturan peristiwa menggunakan konsol.

  1. Buka EventBridge konsol Amazon di https://console.aws.amazon.com/events/.

  2. Dengan menggunakan nilai berikut, buat EventBridge aturan yang memantau pencarian peristiwa atau mengakses peristiwa pratinjau:

    • Untuk Tipe aturan, pilih Aturan dengan pola peristiwa.

    • Untuk sumber acara, pilih Lainnya.

    • Untuk pola Acara, pilih Pola kustom (JSONeditor), dan tempel salah satu contoh pola peristiwa berikut ke area teks:

      • Untuk membuat aturan berdasarkan akses eksternal atau peristiwa temuan akses yang tidak digunakan, gunakan contoh pola berikut:

        { "source": [ "aws.access-analyzer" ], "detail-type": [ "Access Analyzer Finding" ] }
      • Untuk membuat aturan hanya berdasarkan peristiwa temuan akses yang tidak digunakan, gunakan contoh pola berikut:

        { "source": [ "aws.access-analyzer" ], "detail-type": [ "Unused Access Finding for IAM entities" ] }
        catatan

        Anda tidak dapat membuat aturan hanya berdasarkan peristiwa temuan akses eksternal.

      • Untuk membuat aturan berdasarkan peristiwa pratinjau akses, gunakan contoh pola berikut:

        { "source": [ "aws.access-analyzer" ], "detail-type": [ "Access Preview State Change" ] }
    • Untuk tipe Target, pilih AWS layanan, dan untuk Pilih target, pilih target seperti SNS topik Amazon atau AWS Lambda fungsi. Target terpicu saat peristiwa diterima yang sesuai dengan pola peristiwa yang ditentukan dalam aturan.

    Untuk mempelajari selengkapnya tentang cara membuat aturan, lihat Membuat EventBridge aturan Amazon yang bereaksi terhadap peristiwa di Panduan EventBridge Pengguna Amazon.

Membuat aturan acara menggunakan CLI

  1. Gunakan yang berikut ini untuk membuat aturan untuk Amazon EventBridge menggunakan AWS CLI. Ganti nama aturan TestRule dengan nama untuk aturan Anda.

    aws events put-rule --name TestRule --event-pattern "{\"source\":[\"aws.access-analyzer\"]}"
  2. Anda dapat menyesuaikan aturan untuk memicu tindakan target hanya bagi sebagian temuan yang dihasilkan, seperti temuan dengan atribut spesifik. Contoh berikut ini menunjukkan cara membuat aturan yang memicu tindakan target hanya untuk temuan dengan status Aktif.

    aws events put-rule --name TestRule --event-pattern "{\"source\":[\"aws.access-analyzer\"],\"detail-type\":[\"Access Analyzer Finding\"],\"detail\":{\"status\":[\"ACTIVE\"]}}"

    Contoh berikut menunjukkan cara membuat aturan yang memicu tindakan target hanya untuk pratinjau akses dengan status from to. Creating Completed

    aws events put-rule --name TestRule --event-pattern "{\"source\":[\"aws.access-analyzer\"],\"detail-type\":[\"Access Preview State Change\"],\"detail\":{\"status\":[\"COMPLETED\"]}}"
  3. Untuk menetapkan fungsi Lambda sebagai target untuk aturan yang Anda buat, gunakan perintah contoh berikut. Ganti Region dan nama fungsi yang ARN sesuai untuk lingkungan Anda.

    aws events put-targets --rule TestRule --targets Id=1,Arn=arn:aws:lambda:us-east-1:111122223333:function:MyFunction
  4. Tambahkan izin yang diperlukan untuk memunculkan target aturan. Contoh berikut menunjukkan cara memberikan izin untuk fungsi Lambda, mengikuti contoh sebelumnya.

    aws lambda add-permission --function-name MyFunction --statement-id 1 --action 'lambda:InvokeFunction' --principal events.amazonaws.com