CloudTrail log untuk aplikasi web Transfer Family - AWS Transfer Family

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

CloudTrail log untuk aplikasi web Transfer Family

CloudTrail adalah Layanan AWS yang membuat catatan tindakan yang diambil dalam diri Anda Akun AWS. Ini terus memantau dan merekam operasi API untuk aktivitas seperti login konsol, AWS Command Line Interface perintah, dan SDK/API operasi. Ini memungkinkan Anda untuk menyimpan log siapa yang mengambil tindakan apa, kapan, dan dari mana. CloudTrail membantu audit, manajemen akses, dan kepatuhan terhadap peraturan dengan memberikan riwayat semua aktivitas di AWS lingkungan Anda.

Untuk aplikasi web Transfer Family, Anda dapat melacak peristiwa autentikasi dan operasi akses data yang dilakukan oleh pengguna. Untuk mengaktifkan pencatatan komprehensif, Anda perlu:

  1. Konfigurasikan CloudTrail untuk mencatat peristiwa manajemen untuk melacak aktivitas otentikasi.

  2. Aktifkan peristiwa data Amazon S3 untuk melacak operasi file yang dilakukan melalui aplikasi web Anda.

Lihat juga

Mengaktifkan peristiwa data Amazon S3

Untuk melacak operasi file yang dilakukan melalui aplikasi web Transfer Family di bucket Amazon S3, Anda harus mengaktifkan peristiwa data untuk bucket tersebut. Peristiwa data menyediakan aktivitas API tingkat objek dan sangat berguna untuk melacak unggahan file, unduhan, dan operasi lain yang dilakukan oleh pengguna aplikasi web.

Untuk mengaktifkan peristiwa data Amazon S3 untuk aplikasi web Transfer Family Anda:

  1. Buka CloudTrail konsol di https://console.aws.amazon.com/cloudtrail/.

  2. Di panel navigasi, pilih Jalur, lalu pilih jejak yang ada atau buat yang baru.

  3. Di bawah Penyeleksi acara lanjutan, pilih Edit.

  4. Pilih Tambahkan pemilih acara lanjutan.

  5. Untuk pemilih bidang pertama:

    • Setel Bidang ke eventCategory

    • Setel Operator ke Equals

    • Tetapkan Nilai ke Data

  6. Pilih Tambah bidang dan untuk pemilih bidang kedua:

    • Setel Bidang ke resources.type

    • Setel Operator ke Equals

    • Tetapkan Nilai ke AWS::S3::Object

  7. (Opsional) Untuk mencatat peristiwa hanya untuk bucket tertentu, pilih Tambah bidang dan tambahkan:

    • Setel Bidang ke resources.ARN

    • Atur Operator ke Mulai dengan

    • Tetapkan Nilai ke arn:aws:s3:::your-bucket-name/

  8. Pilih Simpan perubahan.

Atau, Anda dapat menggunakan konfigurasi peristiwa data lama:

  1. Di bawah Peristiwa data, pilih Edit.

  2. Untuk jenis peristiwa Data, pilih bucket S3 dan peristiwa objek.

  3. Pilih bucket Amazon S3 untuk mencatat peristiwa data. Anda dapat memilih Semua bucket S3 saat ini dan masa depan atau menentukan masing-masing bucket.

  4. Pilih apakah akan mencatat peristiwa Baca, Menulis peristiwa, atau keduanya.

  5. Pilih Simpan perubahan.

Setelah mengaktifkan peristiwa data, Anda dapat mengakses log ini di bucket Amazon S3 yang dikonfigurasi untuk. CloudTrail Log mencakup detail seperti pengguna yang melakukan tindakan, stempel waktu tindakan, objek tertentu yang terpengaruh, dan onBehalfOf bidang yang membantu melacak tindakan yang dilakukan melalui aplikasi web Transfer Family. userId

Menemukan dan melihat log Anda

Ada beberapa cara untuk menemukan dan melihat CloudTrail log untuk aplikasi web Transfer Family Anda:

Menggunakan CloudTrail konsol

Cara tercepat untuk melihat peristiwa terbaru:

  1. Buka CloudTrail konsol di https://console.aws.amazon.com/cloudtrail/.

  2. Pilih Riwayat acara.

  3. Filter acara berdasarkan:

    • Sumber acara: signin.amazonaws.com untuk acara aplikasi web

    • Sumber acara: s3.amazonaws.com untuk operasi file

  4. Klik acara apa pun untuk melihat informasi terperinci.

Mengakses log di Amazon S3

Untuk mengakses file log lengkap yang disimpan di Amazon S3:

  1. Identifikasi CloudTrail bucket Amazon S3 jejak Anda:

    aws cloudtrail describe-trails --query 'trailList[*].[Name,S3BucketName]' --output table
  2. Arahkan ke file log di Amazon S3:

    aws s3 ls s3://your-cloudtrail-bucket/AWSLogs/account-id/CloudTrail/region/YYYY/MM/DD/
  3. Unduh dan cari file log untuk ID aplikasi web Anda:

    aws s3 cp s3://your-cloudtrail-bucket/AWSLogs/account-id/CloudTrail/region/YYYY/MM/DD/ . --recursive gunzip *.json.gz grep -l "webapp-1a2b3c4d5e6f7g8h9" *.json

Menggunakan AWS CLI untuk mencari acara

Cari acara aplikasi web tertentu menggunakan AWS CLI:

aws logs filter-log-events \ --log-group-name /aws/cloudtrail/your-trail-name \ --filter-pattern "webapp-1a2b3c4d5e6f7g8h9" \ --start-time $(date -d "1 day ago" +%s)000

Atau cari acara otentikasi:

aws logs filter-log-events \ --log-group-name /aws/cloudtrail/your-trail-name \ --filter-pattern "UserAuthentication" \ --start-time $(date -d "1 day ago" +%s)000

Contoh log otentikasi

CloudTrail mencatat peristiwa autentikasi untuk aplikasi web Transfer Family, yang dapat membantu Anda melacak upaya login yang berhasil dan gagal. Log ini sangat berguna untuk pemantauan keamanan dan tujuan kepatuhan.

Contoh entri log untuk verifikasi kredensi

Contoh berikut menunjukkan entri CloudTrail log untuk peristiwa verifikasi kredensi yang terjadi selama proses otentikasi.

{ "eventVersion": "1.09", "userIdentity": { "type": "Unknown", "principalId": "123456789012", "arn": "", "accountId": "123456789012", "accessKeyId": "", "userName": "demo-user-2", "onBehalfOf": { "userId": "f12bb510-a011-702f-10dd-5607e2776dbc", "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9a670c546e" }, "credentialId": "58138a11-87e5-401d-8f0b-7161c9389112" }, "eventTime": "2025-08-08T15:29:30Z", "eventSource": "signin.amazonaws.com", "eventName": "CredentialVerification", "awsRegion": "us-east-2", "sourceIPAddress": "192.0.2.224", "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36", "requestParameters": null, "responseElements": null, "additionalEventData": { "AuthWorkflowID": "f304a48b-7b6d-41c8-b136-4f49c91c1f31", "CredentialType": "PASSWORD" }, "requestID": "ff936828-4a81-453c-802d-81368b6bca1a", "eventID": "70cb7008-493d-42c2-a9eb-38bf168af6a8", "readOnly": false, "eventType": "AWS ServiceEvent", "managementEvent": true, "recipientAccountId": "123456789012", "serviceEventDetails": { "CredentialVerification": "Success" }, "eventCategory": "Management" }

Peristiwa ini memberikan detail tambahan tentang langkah verifikasi kredensi dalam proses otentikasi, yang menunjukkan ID kredenal tertentu dan ID alur kerja otentikasi yang digunakan.

Contoh entri log untuk otentikasi masuk

Contoh berikut menunjukkan entri CloudTrail log untuk peristiwa otentikasi pengguna yang berhasil selama proses masuk aplikasi web menggunakan IAM Identity Center.

{ "eventVersion": "1.09", "userIdentity": { "type": "Unknown", "principalId": "123456789012", "arn": "", "accountId": "123456789012", "accessKeyId": "", "userName": "demo-user-2", "onBehalfOf": { "userId": "f12bb510-a011-702f-10dd-5607e2776dbc", "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9a670c546e" }, "credentialId": "b41f0a02-1635-4d07-a414-aecf9e14b906" }, "eventTime": "2025-08-07T14:09:07Z", "eventSource": "signin.amazonaws.com", "eventName": "UserAuthentication", "awsRegion": "us-east-2", "sourceIPAddress": "192.0.2.14", "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36", "requestParameters": null, "responseElements": null, "additionalEventData": { "AuthWorkflowID": "7a4ef12c-7c4b-4bc3-b5bd-c2469afcc795", "LoginTo": "https://example.awsapps.com/start/", "CredentialType": "PASSWORD" }, "requestID": "fc91bcf0-ac53-4454-a1a0-fb911eacc095", "eventID": "18522007-1e60-4a71-b2b5-150baf504ab3", "readOnly": false, "eventType": "AWS ServiceEvent", "managementEvent": true, "recipientAccountId": "123456789012", "serviceEventDetails": { "UserAuthentication": "Success" }, "eventCategory": "Management" }

Dalam contoh ini, perhatikan bidang-bidang penting berikut:

  • eventSource: Menampilkan “signin.amazonaws.com”, menunjukkan ini adalah peristiwa otentikasi Pusat Identitas IAM.

  • userIdentity.onBehalfOf: Berisi ID pengguna dan ARN penyimpanan identitas untuk pengguna aplikasi web.

  • additionalEventData.LoginTo: Menampilkan URL aplikasi IAM Identity Center yang sedang diakses.

  • additionalEventData.CredentialType: Menunjukkan metode otentikasi yang digunakan (PASSWORD).

  • serviceEventDetails: Menunjukkan hasil otentikasi (Sukses).

Contoh entri log untuk ListCallerAccessGrants

Contoh berikut menunjukkan entri CloudTrail log untuk suatu ListCallerAccessGrants peristiwa, yang terjadi saat aplikasi web Transfer Family menanyakan hibah akses yang tersedia untuk pengguna.

{ "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROAEXAMPLEID:aws-transfer", "arn": "arn:aws:sts::123456789012:assumed-role/AWS TransferWebAppIdentityBearer-us-east-2/aws-transfer", "accountId": "123456789012", "accessKeyId": "ASIAEXAMPLEKEY", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAEXAMPLEID", "arn": "arn:aws:iam::123456789012:role/service-role/AWS TransferWebAppIdentityBearer-us-east-2", "accountId": "123456789012", "userName": "AWS TransferWebAppIdentityBearer-us-east-2" }, "attributes": { "creationDate": "2025-08-08T15:29:34Z", "mfaAuthenticated": "false" } }, "invokedBy": "transfer.amazonaws.com", "onBehalfOf": { "userId": "f12bb510-a011-702f-10dd-5607e2776dbc", "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9a670c546e" } }, "eventTime": "2025-08-08T15:29:35Z", "eventSource": "s3.amazonaws.com", "eventName": "ListCallerAccessGrants", "awsRegion": "us-east-2", "sourceIPAddress": "transfer.amazonaws.com", "userAgent": "transfer.amazonaws.com", "requestParameters": { "Host": "123456789012.s3-control.dualstack.us-east-2.amazonaws.com", "allowedByApplication": "true", "maxResults": "100" }, "responseElements": null, "additionalEventData": { "SignatureVersion": "SigV4", "CipherSuite": "TLS_AES_128_GCM_SHA256", "bytesTransferredIn": 0, "AuthenticationMethod": "AuthHeader", "x-amz-id-2": "1g34AaAELn/fntxwrifVsr41VDl8dp5ygWFasHJFNVq5FDCWYfX0ye7s4tWHEJC8ppI5lLePYLIcw3iTXAgn5Q==", "bytesTransferredOut": 462 }, "requestID": "48485MTZEDWT0ANT", "eventID": "3de5dd60-b7cf-474c-a1ab-631467c1a5c3", "readOnly": true, "resources": [ { "accountId": "123456789012", "type": "AWS:S3::AccessGrantsInstance", "ARN": "arn:aws:s3:us-east-2:123456789012:access-grants/default" } ], "eventType": "AWS ApiCall", "managementEvent": true, "recipientAccountId": "123456789012", "eventCategory": "Management" }

Dalam contoh ini, perhatikan bidang-bidang penting berikut:

  • eventName: Menunjukkan ini adalah ListCallerAccessGrants acara, yang menanyakan hibah akses S3 yang tersedia.

  • requestParameters.allowedByApplication: Menunjukkan kueri disaring ke hibah yang diizinkan oleh aplikasi.

  • requestParameters.maxResults: Menunjukkan jumlah maksimum hibah untuk dikembalikan dalam tanggapan.

  • userIdentity.onBehalfOf: Menautkan permintaan ke pengguna aplikasi web tertentu.

Acara ini membantu melacak kapan aplikasi web Transfer Family menanyakan sumber daya S3 yang dapat diakses pengguna, memberikan visibilitas ke dalam operasi penemuan hibah akses.

Contoh entri log untuk GetDataAccess acara

Contoh berikut menunjukkan entri CloudTrail log untuk suatu GetDataAccess peristiwa, yang terjadi saat aplikasi web Transfer Family meminta izin akses untuk sumber daya S3 atas nama pengguna.

{ "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROASEQRAEABP7ADWEZA5:aws-transfer", "arn": "arn:aws:sts::123456789012:assumed-role/AWSTransferWebAppIdentityBearer-ap-southeast-1/aws-transfer", "accountId": "123456789012", "accessKeyId": "ASIAEXAMPLEKEY", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROASEQRAEABP7ADWEZA5", "arn": "arn:aws:iam::123456789012:role/service-role/AWSTransferWebAppIdentityBearer-ap-southeast-1", "accountId": "123456789012", "userName": "AWSTransferWebAppIdentityBearer-ap-southeast-1" }, "attributes": { "creationDate": "2025-05-08T16:09:05Z", "mfaAuthenticated": "false" } }, "invokedBy": "transfer.amazonaws.com", "onBehalfOf": { "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9667b0da7a", "userId": "191a35ec-10a1-70c1-e4ab-e2802411e13e" } }, "eventTime": "2025-05-08T16:10:25Z", "eventSource": "s3.amazonaws.com", "eventName": "GetDataAccess", "awsRegion": "ap-southeast-1", "sourceIPAddress": "transfer.amazonaws.com", "userAgent": "transfer.amazonaws.com", "requestParameters": { "Host": "123456789012.s3-control.dualstack.ap-southeast-1.amazonaws.com", "durationSeconds": 900, "permission": "READWRITE", "target": "s3://amzn-s3-demo-bucket/users/john.doe/documents/*" }, "responseElements": null, "additionalEventData": { "AuthenticationMethod": "AuthHeader", "CipherSuite": "TLS_AES_128_GCM_SHA256", "SignatureVersion": "SigV4", "bytesTransferredIn": 0, "bytesTransferredOut": 2244, "x-amz-id-2": "8ce8sZOgNwsaj9w1mzagyA+csONjYl8FgEw4FGpE8DARi90aNC0RFWlTYNEn7ChqE9RCJrTzMvS+ru7Vz2xXHrkQt/1uQ9exZTZdlhX+/fM=" }, "requestID": "BXGSKKQXCWS5RAHB", "eventID": "c11db1d1-dfb8-431e-8625-48eba2ebadfe", "readOnly": true, "resources": [ { "type": "AWS:S3::AccessGrantsInstance", "ARN": "arn:aws:s3:ap-southeast-1:123456789012:access-grants/default", "accountId": "123456789012" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "123456789012", "eventCategory": "Management" }

Dalam contoh ini, perhatikan bidang-bidang penting berikut:

  • eventName: Menunjukkan ini adalah GetDataAccess peristiwa, yang terjadi ketika Transfer Family meminta izin akses untuk sumber daya S3.

  • userIdentity.onBehalfOf: Berisi ARN penyimpanan identitas dan ID pengguna, yang menautkan permintaan akses ke pengguna aplikasi web tertentu.

  • requestParameters.target: Menunjukkan pola jalur S3 yang aksesnya diminta.

  • requestParameters.permission: Menunjukkan jenis akses yang diminta (READWRITE, READ, atau WRITE).

  • requestParameters.durationSeconds: Menunjukkan berapa lama hibah akses valid (biasanya 900 detik/15 menit).

  • sourceIPAddressdanuserAgent: Keduanya menampilkan “transfer.amazonaws.com”, yang menunjukkan ini adalah permintaan layanan internal.

GetDataAccess event sangat berguna untuk melacak ketika pengguna aplikasi web Transfer Family diberikan akses ke sumber daya S3 tertentu, membantu Anda memantau pola akses dan memastikan otorisasi yang tepat.

Melihat entri CloudTrail log

Ada beberapa cara untuk melihat dan menganalisis entri CloudTrail log untuk aplikasi web Transfer Family Anda:

Menggunakan CloudTrail konsol

CloudTrail Konsol menyediakan antarmuka yang ramah pengguna untuk melihat dan memfilter entri log:

  1. Buka CloudTrail konsol di https://console.aws.amazon.com/cloudtrail/.

  2. Pada panel navigasi, pilih Riwayat peristiwa.

  3. Gunakan opsi filter untuk mempersempit peristiwa:

    • Setel sumber Acara transfer.amazonaws.com untuk hanya melihat acara Transfer Family.

    • Filter berdasarkan nama Acara untuk melihat operasi tertentu sepertiUserAuthentication.

    • Gunakan rentang waktu untuk fokus pada peristiwa dalam periode tertentu.

  4. Klik pada acara apa pun untuk melihat informasi detailnya.

Mengakses log di Amazon S3

Jika Anda telah mengonfigurasi CloudTrail jejak untuk mengirimkan log ke bucket Amazon S3, Anda dapat mengakses file log mentah secara langsung:

  1. Buka konsol Amazon S3 di. https://console.aws.amazon.com/s3/

  2. Arahkan ke bucket dan awalan tempat CloudTrail log Anda disimpan.

  3. Log diatur berdasarkan tahun, bulan, hari, dan wilayah. Arahkan ke direktori yang sesuai.

  4. Unduh dan buka file log, yang dalam format JSON.