全部产品
Search
文档中心

ActionTrail:Buat aturan peringatan kustom

更新时间:Nov 10, 2025

Anda dapat membuat aturan peringatan kustom untuk memantau peristiwa tertentu, membantu Anda menjaga keamanan bisnis. ActionTrail menghasilkan peringatan berdasarkan pernyataan kueri, frekuensi pemeriksaan, dan kondisi pemicu yang telah dikonfigurasi. Topik ini menjelaskan cara membuat aturan peringatan kustom serta menyediakan contoh pernyataan kueri kustom untuk berbagai skenario.

Informasi latar belakang

Aturan peringatan kustom memungkinkan Anda menggunakan pernyataan SQL untuk menanyakan peristiwa. Untuk informasi lebih lanjut tentang sintaksis SQL, lihat Ikhtisar pencarian log dan Ikhtisar kueri dan analisis log.

Prosedur

  1. Masuk ke Konsol ActionTrail.

  2. Di panel navigasi sebelah kiri, klik Event Alerting.

  3. Pada tab Alert Rules halaman Alert Center, klik Create Alert.

  4. Di panel Create Alert, konfigurasikan pernyataan kueri kustom.

    1. Klik Create di sebelah parameter Query Statistics.

    2. Pada tab Advanced Settings dari kotak dialog Query Statistics, atur parameter Type ke Logstore dan parameter Authorization ke Default.

      Catatan

      Parameter Region dan Project dikonfigurasi secara otomatis berdasarkan jejak untuk fitur peringatan kejadian yang diaktifkan.

    3. Pilih Logstore tempat trail mengirimkan event. Nama Logstore menggunakan format actiontrail_<Trail Name>.

    4. Konfigurasikan apakah akan mengaktifkan Dedicated SQL.

      Catatan
      • Auto: Secara default, Dedicated SQL dinonaktifkan. Jika jumlah kueri konkuren melebihi batas atas atau hasil kueri tidak akurat, Simple Log Service akan secara otomatis mencoba ulang kueri menggunakan Dedicated SQL.

      • Enable: SQL Khusus diaktifkan.

      • Disable: Dedicated SQL dinonaktifkan.

      Untuk informasi lebih lanjut tentang cara mengaktifkan Dedicated SQL, lihat Kueri dan analisis sepenuhnya akurat berperforma tinggi (Dedicated SQL).

    5. Konfigurasikan parameter Time Range, masukkan pernyataan kueri kustom di bidang Query, lalu klik Preview.

      Untuk informasi lebih lanjut tentang pernyataan kueri kustom, lihat Pernyataan kueri kustom.

    6. Klik Confirm.

  5. Pada panel Create Alert, konfigurasikan parameter berikut: Rule Name, Check Frequency, Group Evaluation, Trigger Condition, Add Label, Add Annotation, Recovery Notifications, Advanced Configuration, dan Destination.

    Untuk informasi selengkapnya, lihat Parameter aturan peringatan dan pemantauan.

  6. Klik OK.

    Setelah aturan peringatan kustom dibuat, aturan tersebut akan ditampilkan dalam daftar aturan peringatan. Anda dapat mengelola aturan peringatan kustom yang telah dibuat sesuai kebutuhan. Untuk informasi selengkapnya, lihat Mengelola aturan peringatan.

Pernyataan peringatan kustom

Skenario

Deskripsi

Pernyataan Peringatan Kustom

Kueri Peristiwa Spesifik Layanan Cloud

Anda dapat mengonfigurasi parameter serviceName dan eventName untuk menanyakan peristiwa spesifik layanan cloud.

  • Kueri peristiwa layanan cloud. Sebagai contoh, Anda dapat menggunakan pernyataan berikut untuk menanyakan peristiwa yang dihasilkan saat instance Elastic Compute Service (ECS) dibuat:

    event.serviceName: Ecs and event.eventName: RunInstances

  • Kueri beberapa peristiwa layanan cloud. Sebagai contoh, Anda dapat menggunakan pernyataan berikut untuk menanyakan peristiwa yang dihasilkan saat instance ApsaraDB RDS dilepaskan:

    event.serviceName: RDS and (event.eventName: DeleteDBInstance or event.eventName: Release or event.eventName: DestroyDBInstance)

  • Kueri beberapa peristiwa dari layanan cloud berbeda. Sebagai contoh, Anda dapat menggunakan pernyataan berikut untuk menanyakan peristiwa terkait perubahan izin di Resource Management dan Resource Access Management (RAM):

    (event.serviceName: ResourceManager and (event.eventName: AttachPolicy or event.eventName: DetachPolicy )) or (event.serviceName: Ram and (event.eventName: AttachPolicyToUser or event.eventName: AttachPolicyToGroup or event.eventName: AttachPolicyToRole or event.eventName: DetachPolicyFromUser or event.eventName: DetachPolicyFromGroup or event.eventName: DetachPolicyFromRole))

Kueri Nilai Parameter Tertentu

Parameter event disimpan dalam parameter event.requestParameterJson dalam format JSON. ActionTrail memungkinkan Anda membuat aturan peringatan kustom untuk menghasilkan peringatan saat nilai parameter event dikueri.

  • Kueri peristiwa yang dihasilkan saat atribut perlindungan pelepasan instance ECS diubah menjadi false.

    event.serviceName: Ecs and event.eventName: ModifyInstanceAttribute | SELECT * FROM (SELECT cast(json_extract("event.requestParameterJson", '$.DeletionProtection') as varchar) as deletion_protection FROM log) WHERE deletion_protection = 'false'

  • Kueri peristiwa yang dihasilkan saat alamat IP 0.0.0.0 ditambahkan ke daftar putih instance ApsaraDB RDS.

    event.serviceName: Rds and event.eventName: ModifySecurityIps | SELECT * FROM (SELECT cast(json_extract("event.requestParameterJson", '$.SecurityIps') as varchar) as security_ips FROM log) WHERE security_ips like '%0.0.0.0%'

Kueri Sumber Daya

Anda dapat mengonfigurasi parameter resourceName dan resourceType untuk menanyakan sumber daya yang terkait dengan peristiwa tertentu.

Untuk informasi lebih lanjut tentang parameter, lihat Struktur peristiwa manajemen.

Kueri sumber daya. Sebagai contoh, Anda dapat menggunakan pernyataan berikut untuk menanyakan ID instance ECS yang dilepaskan dalam peristiwa pelepasan instance:

event.serviceName: Ecs and (event.eventName: DeleteInstances or event.eventName: DeleteInstance or event.eventName: Release) | SELECT resourceArray[num] as instance_id FROM (SELECT split("event.resourceName", ';') as resourceArray, array_position(split("event.resourceType", ';'), 'ACS::ECS::Instance') as num FROM log) where num > 0

Kueri Identitas

Anda dapat menanyakan informasi tentang identitas dalam peristiwa tertentu dan membuat aturan peringatan kustom untuk menghasilkan peringatan untuk identitas tertentu.

Parameter userIdentity berisi beberapa bidang, seperti type, userName, principalId, dan accountId. Untuk informasi lebih lanjut tentang parameter, lihat Struktur peristiwa manajemen.

  • Kueri jenis identitas.

    * | SELECT "event.userIdentity.type" as user_type

  • Kueri nama identitas.

    * | SELECT "event.userIdentity.userName" as user_name

  • Kueri ID identitas.

    * | SELECT "event.userIdentity.principalId" as principal_id

  • Kueri ID akun Alibaba Cloud tempat identitas tersebut berasal.

    * | SELECT "event.userIdentity.accountId" as account_id

Kueri Statistik

Anda dapat menanyakan jumlah kali suatu peristiwa dihasilkan dan membuat aturan peringatan kustom untuk menghasilkan peringatan saat ambang batas tertentu terlampaui.

  • Peringatan ini dipicu ketika instance ECS melakukan restart terlalu sering, misalnya lebih dari dua kali.

    event.serviceName: Ecs and (event.eventName: RebootInstances or event.eventName: RebootInstance) | SELECT account_id, resourceArray[num] as instance_id, count(*) as cnt FROM ( SELECT "event.userIdentity.accountId" as account_id, split("event.resourceName", ';') as resourceArray, array_position(split("event.resourceType", ';'), 'ACS::ECS::Instance') as num FROM log) where num > 0 group by account_id, instance_id

  • Menghasilkan peringatan jika jumlah kesalahan logon melebihi ambang batas tertentu, misalnya 2.

    event.eventName: ConsoleSignin and event.userIdentity.type: ram-user and not event.errorMessage: success | select "event.userIdentity.principalId" as user_id, "event.userIdentity.userName" as user_name, count(1) as cnt group by user_id, user_name

Contoh Peringatan Kustom

Fungsi sembarang mengembalikan nilai acak non-kosong dari x. Sintaksnya adalah arbitrary(x). Untuk informasi selengkapnya, lihat fungsi sembarang. Berikut ini dua contoh peringatan kustom yang menggunakan fungsi sembarang:

  • Contoh 1: Peringatan untuk rilis instance RDS

    event.serviceName: RDS and (event.eventName: DeleteDBInstance or event.eventName: Release or event.eventName: DestroyDBInstance) | SELECT account_id, resourceArray[num] as instance_id, ram_user_id, user_type, user_name FROM (SELECT "event.userIdentity.accountId" as account_id, "event.userIdentity.principalId" as ram_user_id, split("event.resourceName", ';') as resourceArray, array_position(split("event.resourceType", ';'), 'ACS::RDS::DBInstance') as num, "event.userIdentity.type" as user_type, "event.userIdentity.userName" as user_name FROM log ) where num > 0

  • Contoh 2: Peringatan untuk perubahan konfigurasi Security Group

    event.eventName: CreateSecurityGroup OR event.eventName: AuthorizeSecurityGroup OR event.eventName: AuthorizeSecurityGroupEgress OR event.eventName: RevokeSecurityGroup OR event.eventName: RevokeSecurityGroupEgress OR event.eventName: JoinSecurityGroup OR event.eventName: LeaveSecurityGroup OR event.eventName: DeleteSecurityGroup OR event.eventName: ModifySecurityGroupPolicy) | select "event.userIdentity.accountId" as account_id, "event.userIdentity.principalId" as ram_user_id, "event.eventName" as event_name, arbitrary("event.userIdentity.type") as user_type, arbitrary("event.userIdentity.userName") as user_name group by account_id, ram_user_id, event_name

Referensi

  • Anda juga dapat membuat aturan peringatan kustom di Layanan Log Sederhana. Untuk informasi lebih lanjut, lihat Buat aturan peringatan.

  • Setelah mengaktifkan aturan peringatan, Anda dapat melihat informasi terkait aturan peringatan di Layanan Log Sederhana. Untuk informasi lebih lanjut, lihat Kelola aturan peringatan.