Buat integrasi khusus dengan konsol - AWS CloudTrail

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

Buat integrasi khusus dengan konsol

Anda dapat menggunakan CloudTrail untuk mencatat dan menyimpan data aktivitas pengguna dari sumber apa pun di lingkungan hybrid Anda, seperti aplikasi internal atau SaaS yang dihosting di tempat atau di cloud, mesin virtual, atau kontainer. Lakukan paruh pertama prosedur ini di konsol CloudTrail Lake, lalu panggil PutAuditEventsAPI untuk menelan peristiwa, menyediakan ARN saluran dan muatan acara Anda. Setelah Anda menggunakan PutAuditEvents API untuk menyerap aktivitas aplikasi Anda CloudTrail, Anda dapat menggunakan CloudTrail Lake untuk mencari, menanyakan, dan menganalisis data yang dicatat dari aplikasi Anda.

  1. Masuk ke AWS Management Console dan buka CloudTrail konsol di https://console.aws.amazon.com/cloudtrail/.

  2. Dari panel navigasi, di bawah Danau, pilih Integrasi.

  3. Pada halaman Tambahkan integrasi, masukkan nama untuk saluran Anda. Namanya bisa 3-128 karakter. Hanya huruf, angka, titik, garis bawah, dan tanda hubung yang diizinkan.

  4. Pilih Integrasi kustom saya.

  5. Dari lokasi pengiriman acara, pilih untuk mencatat peristiwa aktivitas yang sama ke penyimpanan data acara yang ada, atau buat penyimpanan data acara baru.

    Jika Anda memilih untuk membuat penyimpanan data acara baru, masukkan nama untuk penyimpanan data acara dan tentukan periode retensi dalam beberapa hari. Anda dapat menyimpan data acara di penyimpanan data acara hingga 3.653 hari (sekitar 10 tahun) jika Anda memilih opsi harga retensi yang dapat diperpanjang satu tahun, atau hingga 2.557 hari (sekitar 7 tahun) jika Anda memilih opsi harga retensi tujuh tahun.

    Jika Anda memilih untuk mencatat peristiwa aktivitas ke satu atau beberapa penyimpanan data peristiwa yang ada, pilih penyimpanan data acara dari daftar. Penyimpanan data acara hanya dapat menyertakan peristiwa aktivitas. Jenis acara di konsol harus Peristiwa dari integrasi. Di API, eventCategory nilainya harusActivityAuditLog.

  6. Dalam Kebijakan sumber daya, konfigurasikan kebijakan sumber daya untuk saluran integrasi. Kebijakan sumber daya adalah dokumen kebijakan JSON yang menentukan tindakan apa yang dapat dilakukan oleh prinsipal tertentu pada sumber daya dan dalam kondisi apa. Akun yang didefinisikan sebagai prinsipal dalam kebijakan sumber daya dapat memanggil PutAuditEvents API untuk mengirimkan peristiwa ke channel Anda.

    catatan

    Jika Anda tidak membuat kebijakan sumber daya untuk saluran, hanya pemilik saluran yang dapat memanggil PutAuditEvents API di saluran.

    1. (Opsional) Masukkan ID eksternal yang unik untuk memberikan lapisan perlindungan tambahan. ID eksternal adalah string unik seperti ID akun atau string yang dihasilkan secara acak, untuk mencegah wakil bingung.

      catatan

      Jika kebijakan sumber daya menyertakan ID eksternal, semua panggilan ke PutAuditEvents API harus menyertakan ID eksternal. Namun, jika kebijakan tidak menentukan ID eksternal, Anda masih dapat memanggil PutAuditEvents API dan menentukan externalId parameter.

    2. Pilih Tambah AWS akun untuk menentukan setiap ID AWS akun yang akan ditambahkan sebagai prinsipal dalam kebijakan sumber daya untuk saluran tersebut.

  7. (Opsional) Di area Tag, Anda dapat menambahkan hingga 50 kunci tag dan pasangan nilai untuk membantu Anda mengidentifikasi, mengurutkan, dan mengontrol akses ke penyimpanan dan saluran data acara Anda. Untuk informasi selengkapnya tentang cara menggunakan kebijakan IAM untuk mengotorisasi akses ke penyimpanan data peristiwa berdasarkan tag, lihat. Contoh: Menolak akses untuk membuat atau menghapus penyimpanan data acara berdasarkan tag Untuk informasi selengkapnya tentang cara menggunakan tag AWS, lihat Menandai AWS sumber daya Anda di. Referensi Umum AWS

  8. Saat Anda siap untuk membuat integrasi baru, pilih Tambahkan integrasi. Tidak ada halaman ulasan. CloudTrail membuat integrasi, tetapi untuk mengintegrasikan peristiwa kustom Anda, Anda harus menentukan saluran ARN dalam permintaan. PutAuditEvents

  9. Panggil PutAuditEvents API untuk memasukkan acara aktivitas Anda ke dalam CloudTrail. Anda dapat menambahkan hingga 100 acara aktivitas (atau hingga 1 MB) per PutAuditEvents permintaan. Anda memerlukan saluran ARN yang Anda buat pada langkah sebelumnya, muatan peristiwa yang ingin Anda tambahkan, dan ID eksternal (jika ditentukan CloudTrail untuk kebijakan sumber daya Anda). Pastikan bahwa tidak ada informasi sensitif atau pengenal pribadi dalam muatan acara sebelum menelannya. CloudTrail Peristiwa yang Anda konsumsi CloudTrail harus mengikuti. CloudTrail Skema acara integrasi danau

    Tip

    Gunakan AWS CloudShelluntuk memastikan Anda menjalankan AWS API terbaru.

    Contoh berikut menunjukkan cara menggunakan perintah put-audit-events CLI. Parameter --audit-events dan --channel-arn diperlukan. Anda memerlukan ARN saluran yang Anda buat pada langkah-langkah sebelumnya, yang dapat Anda salin dari halaman detail integrasi. Nilai dari --audit-events adalah array JSON dari objek acara. --audit-eventsmenyertakan ID yang diperlukan dari acara, muatan acara yang diperlukan sebagai nilaiEventData, dan checksum opsional untuk membantu memvalidasi integritas acara setelah masuk ke dalam. CloudTrail

    aws cloudtrail-data put-audit-events \ --region region \ --channel-arn $ChannelArn \ --audit-events \ id="event_ID",eventData='"{event_payload}"' \ id="event_ID",eventData='"{event_payload}"',eventDataChecksum="optional_checksum"

    Berikut ini adalah contoh perintah dengan dua contoh acara.

    aws cloudtrail-data put-audit-events \ --region us-east-1 \ --channel-arn arn:aws:cloudtrail:us-east-1:01234567890:channel/EXAMPLE8-0558-4f7e-a06a-43969EXAMPLE \ --audit-events \ id="EXAMPLE3-0f1f-4a85-9664-d50a3EXAMPLE",eventData='"{\"eventVersion\":\0.01\",\"eventSource\":\"custom1.domain.com\", ... \}"' \ id="EXAMPLE7-a999-486d-b241-b33a1EXAMPLE",eventData='"{\"eventVersion\":\0.02\",\"eventSource\":\"custom2.domain.com\", ... \}"',eventDataChecksum="EXAMPLE6e7dd61f3ead...93a691d8EXAMPLE"

    Contoh perintah berikut menambahkan --cli-input-json parameter untuk menentukan file JSON (custom-events.json) dari payload acara.

    aws cloudtrail-data put-audit-events \ --channel-arn $channelArn \ --cli-input-json file://custom-events.json \ --region us-east-1

    Berikut ini adalah contoh isi dari contoh file JSON,custom-events.json.

    { "auditEvents": [ { "eventData": "{\"version\":\"eventData.version\",\"UID\":\"UID\", \"userIdentity\":{\"type\":\"CustomUserIdentity\",\"principalId\":\"principalId\", \"details\":{\"key\":\"value\"}},\"eventTime\":\"2021-10-27T12:13:14Z\",\"eventName\":\"eventName\", \"userAgent\":\"userAgent\",\"eventSource\":\"eventSource\", \"requestParameters\":{\"key\":\"value\"},\"responseElements\":{\"key\":\"value\"}, \"additionalEventData\":{\"key\":\"value\"}, \"sourceIPAddress\":\"source_IP_address\",\"recipientAccountId\":\"recipient_account_ID\"}", "id": "1" } ] }

(Opsional) Hitung nilai checksum

Checksum yang Anda tentukan sebagai nilai EventDataChecksum dalam PutAuditEvents permintaan membantu Anda memverifikasi bahwa CloudTrail menerima peristiwa yang cocok dengan checksum; ini membantu memverifikasi integritas peristiwa. Nilai checksum adalah algoritma Base64-SHA256 yang Anda hitung dengan menjalankan perintah berikut.

printf %s "{"eventData": "{\"version\":\"eventData.version\",\"UID\":\"UID\", \"userIdentity\":{\"type\":\"CustomUserIdentity\",\"principalId\":\"principalId\", \"details\":{\"key\":\"value\"}},\"eventTime\":\"2021-10-27T12:13:14Z\",\"eventName\":\"eventName\", \"userAgent\":\"userAgent\",\"eventSource\":\"eventSource\", \"requestParameters\":{\"key\":\"value\"},\"responseElements\":{\"key\":\"value\"}, \"additionalEventData\":{\"key\":\"value\"}, \"sourceIPAddress\":\"source_IP_address\", \"recipientAccountId\":\"recipient_account_ID\"}", "id": "1"}" \ | openssl dgst -binary -sha256 | base64

Perintah mengembalikan checksum. Berikut adalah contohnya.

EXAMPLEHjkI8iehvCUCWTIAbNYkOgO/t0YNw+7rrQE=

Nilai checksum menjadi nilai EventDataChecksum dalam PutAuditEvents permintaan Anda. Jika checksum tidak cocok dengan checksum untuk acara yang disediakan, CloudTrail tolak acara dengan kesalahanInvalidChecksum.