Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2025-04-08 GMT+08:00

Manejo de eventos de alarma

Función

Esta API se utiliza para gestionar eventos de alarma.

Método de invocación

Para obtener más información, consulte Invocación a las API.

URI

POST /v5/{project_id}/event/operate

Tabla 1 Parámetros de ruta

Parámetro

Obligatorio

Tipo

Descripción

project_id

String

ID de proyecto

Mínimo: 20

Máximo: 64

Tabla 2 Parámetros de consulta

Parámetro

Obligatorio

Tipo

Descripción

enterprise_project_id

No

String

ID de proyecto empresarial. Para consultar todos los proyectos empresariales, establezca este parámetro en all_granted_eps.

Mínimo: 0

Máximo: 64

container_name

No

String

Nombre de instancia de contenedor

container_id

No

String

ID de contenedor

Parámetros de solicitud

Tabla 3 Parámetros de encabezado de solicitud

Parámetro

Obligatorio

Tipo

Descripción

X-Auth-Token

String

Token de usuario. Se puede obtener invocando a la API de IAM utilizada para obtener un token de usuario. El valor de X-Subject-Token en el encabezado de respuesta es un token.

Mínimo: 1

Máximo: 32768

region

String

ID de región

Mínimo: 0

Máximo: 128

Tabla 4 Parámetros del cuerpo de solicitud

Parámetro

Obligatorio

Tipo

Descripción

operate_type

String

Método de solución. Su valor puede ser:

  • mark_as_handled

  • ignore

  • add_to_alarm_whitelist

  • add_to_login_whitelist

  • isolate_and_kill

  • unhandle

  • do_not_ignore

  • remove_from_alarm_whitelist

  • remove_from_login_whitelist

  • do_not_isolate_or_kill

handler

No

String

Observaciones. Esta API solo está disponible para alarmas gestionadas.

operate_event_list

Array of OperateEventRequestInfo objects

Lista de eventos operados

Longitud de matriz: 0 - 100

event_white_rule_list

No

Array of EventWhiteRuleListRequestInfo objects

Lista blanca de alarmas definidas por el usuario

Longitud de matriz: 0 - 100

Tabla 5 OperateEventRequestInfo

Parámetro

Obligatorio

Tipo

Descripción

event_class_id

String

Categoría del evento. Su valor puede ser:

  • container_1001: Espacio de nombres de contenedor

  • container_1002: Puerto abierto de contenedor

  • container_1003: Opción de seguridad de contenedor

  • container_1004: Directorio de montaje de contenedor

  • containerescape_0001: Llamada al sistema de alto riesgo

  • containerescape_0002: Ataque Shocker

  • containerescape_0003: Ataque Dirty Cow

  • containerescape_0004: escape de archivo contenedor

  • dockerfile_001: Modificación del archivo contenedor protegido definido por el usuario

  • dockerfile_002: Modificación de archivos ejecutables en el sistema de archivos contenedor

  • dockerproc_001: Proceso anormal del contenedor

  • fileprotect_0001: Escalada de privilegios de archivo

  • fileprotect_0002: Cambio de archivo clave

  • fileprotect_0003: Cambio de ruta de acceso de AuthorizedKeysFile

  • fileprotect_0004: Cambio de directorio de archivo

  • login_0001: Intento de ataque de fuerza bruta

  • login_0002: Ataque de fuerza bruta con éxito

  • login_1001: Inicio de sesión exitoso

  • login_1002: Inicio de sesión remoto

  • login_1003: Contraseña débil

  • malware_0001: Cambio de shell

  • malware_0002: Shell inverso

  • malware_1001: Programa malicioso

  • procdet_0001: Comportamiento anormal de proceso

  • procdet_0002: Escalada de privilegios de proceso

  • procreport_0001: Comando de alto riesgo

  • user_1001: Cambio de cuenta

  • user_1002: Cuenta insegura

  • vmescape_0001: Comando sensible ejecutado en VM

  • vmescape_0002: Archivo sensible accedido por proceso de virtualización

  • vmescape_0003: Acceso anormal a puerto de VM

  • webshell_0001: Web shell

  • network_1001: Minería

  • network_1002: Ataques DDoS

  • network_1003: Escaneo malicioso

  • network_1004: Ataque en zonas sensibles

  • ransomware_0001: ataque de ransomware

  • ransomware_0002: ataque de ransomware

  • ransomware_0003: ataque de ransomware

  • fileless_0001: inyección de proceso

  • fileless_0002: inyección de biblioteca dinámica

  • fileless_0003: cambio de configuración clave

  • fileless_0004: cambio de variable de entorno

  • fileless_0005: proceso de archivos de memoria

  • fileless_0006: secuestro de VDSO

  • crontab_1001: tarea sospechosa de crontab

  • vul_exploit_0001: explotación de vulnerabilidad de Redis

  • vul_exploit_0002: explotación de vulnerabilidad de Hadoop

  • vul_exploit_0003: explotación de vulnerabilidad de MySQL

  • rootkit_0001: archivo de rootkit sospechoso

  • rootkit_0002: módulo de kernel sospechoso

  • RASP_0004: carga de web shell

  • RASP_0018: web shell sin archivos

  • blockexec_001: ataque de ransomware conocido

  • hips_0001: Windows Defender deshabilitado

  • hips_0002: herramienta de hacker sospechosa

  • hips_0003: comportamiento sospechoso de encriptación de ransomware

  • hips_0004: creación de cuentas ocultas

  • hips_0005: lectura de contraseñas y credenciales de usuario

  • hips_0006: exportación de archivos SAM sospechosa

  • hips_0007: eliminación sospechosa de shadow copy

  • hips_0008: eliminación del archivo de copia de respaldo

  • hips_0009: registro de ransomware sospechoso

  • hips_0010: proceso anormal sospechoso

  • hips_0011: escaneo sospechoso

  • hips_0012: ejecución sospechosa de secuencias de comandos de ransomware

  • hips_0013: ejecución sospechosa de comandos de minería

  • hips_0014: deshabilitación sospechosa del centro de seguridad de Windows

  • hips_0015: comportamiento sospechoso al deshabilitar el servicio de firewall

  • hips_0016: deshabilitación sospechosa de recuperación automática de sistema

  • hips_0017: ejecución de archivos ejecutables en Office

  • hips_0018: creación anormal de archivos con macros en Office

  • hips_0019: operación de registro sospechosa

  • hips_0020: Ejecución remota de código Confluence

  • hips_0021: ejecución remota de código MSDT

  • portscan_0001: escaneo de puertos comunes

  • portscan_0002: escaneo de puertos secretos

  • k8s_1001: eliminación de eventos de Kubernetes

  • k8s_1002: creaciones de pod privilegiado

  • k8s_1003: shell interactivo utilizado en pod

  • k8s_1004: pod creado con un directorio sensible

  • k8s_1005: pod creado con la red del servidor

  • k8s_1006: pod creado con espacio PID de host

  • k8s_1007: error de autenticación cuando los pods comunes acceden al servidor API

  • k8s_1008: acceso al servidor API desde un pod común mediante cURL

  • k8s_1009: exec en el espacio de gestión del sistema

  • k8s_1010: pod creado en el espacio de gestión

  • k8s_1011: creación de pod estático

  • k8s_1012: creación de DaemonSet

  • k8s_1013: creación programada de tarea de clúster

  • k8s_1014: operación en secretos

  • k8s_1015: enumeración de operaciones permitidas

  • k8s_1016: RoleBinding o ClusterRoleBinding de alto privilegio

  • k8s_1017: creación de ServiceAccount

  • k8s_1018: creación de Cronjob

  • k8s_1019: shell interactivo utilizado para exec en pods

  • k8s_1020: acceso no autorizado al servidor API

  • k8s_1021: acceso al servidor API con curl

  • k8s_1022: vulnerabilidad Ingress

  • k8s_1023: ataque man-in-the-middle (MITM)

  • k8s_1024: gusano, minería o troyano

  • k8s_1025: eliminación de evento K8s

  • k8s_1026:SelfSubjectRulesReview

  • imgblock_0001: bloqueo de imágenes basado en lista blanca

  • imgblock_0002: bloqueo de imágenes basado en listas negras

  • imgblock_0003: bloqueo de etiquetas de imagen basado en lista blanca

  • imgblock_0004: bloqueo de etiquetas de imágenes basado en listas negras

  • imgblock_0005: bloqueo de creación de contenedor basado en lista blanca

  • imgblock_0006: bloqueo de creación de contenedor basado en lista negra

  • imgblock_0007: bloqueo de proc de montaje de contenedor

  • imgblock_0008: bloqueo no confinado de seccomp de contenedor

  • imgblock_0009: bloqueo de privilegio de contenedor

  • imgblock_0010: bloqueo de capacidades de contenedor

event_id

String

ID del evento

event_type

Integer

Tipo de evento. Su valor puede ser:

  • 1001: malware común

  • 1002: virus

  • 1003:gusano

  • 1004: Troyano

  • 1005: botnet

  • 1006: backdoor

  • 1010 : Rootkit

  • 1011: ransomware

  • 1012: herramienta hacker

  • 1015 : web shell

  • 1016: minería

  • 1017: shell inverso

  • 2001: explotación de vulnerabilidad común

  • 2012: ejecución remota de código

  • 2047: explotación de vulnerabilidad de Redis

  • 2048: explotación de vulnerabilidad de Hadoop

  • 2049: explotación de vulnerabilidades de MySQL

  • 3002: escalamiento de privilegios de archivo

  • 3003: escalada de privilegios de proceso

  • 3004: cambio crítico de archivos

  • 3005: cambio de archivo/directorio

  • 3007: comportamiento del proceso anormal

  • 3015: ejecución de comandos de alto riesgo

  • 3018: shell anormal

  • 3027: tarea sospechosa de crontab

  • 3029: protección del sistema deshabilitada

  • 3030: eliminación de copias de respaldo

  • 3031: operaciones de registro sospechosas

  • 3036: bloqueo de imágenes de contenedor

  • 4002: ataque por fuerza bruta

  • 4004: inicio de sesión anormal

  • 4006: cuentas no válidas

  • 4014: cuenta agregada

  • 4020: robo de contraseñas

  • 6002: escaneo de puerto

  • 6003: escaneo de servidor

  • 13001: eliminación de eventos de Kubernetes

  • 13002: comportamiento anormal de pod

  • 13003: enumeración de la información de usuario

  • 13004: vinculación de rol de clúster

occur_time

Integer

Tiempo de ocurrencia, exacto a milisegundos.

operate_detail_list

Array of EventDetailRequestInfo objects

Lista de detalles de operaciones. Si operate_type se establece en add_to_alarm_whitelist o remove_from_alarm_whitelist, la palabra clave y el hash son obligatorios. Si operate_type se establece en add_to_login_whitelist o remove_from_login_whitelist, los parámetros login_ip, private_ip y login_user_name son obligatorios. Si operate_type se establece en isolate_and_kill o do_not_isolate_or_kill, los parámetros agent_id, file_hash, file_path y process_pid son obligatorios. En otros casos, los parámetros son opcionales.

Longitud de matriz: 0 - 100

Tabla 6 EventDetailRequestInfo

Parámetro

Obligatorio

Tipo

Descripción

agent_id

No

String

ID de agente

process_pid

No

Integer

ID de proceso

file_hash

No

String

Hash de archivo

file_path

No

String

Ruta del archivo

file_attr

No

String

Atributo de archivo

keyword

No

String

Palabra clave de evento de alarma, que se utiliza solo para la lista blanca de alarmas.

hash

No

String

Hash de evento de alarma, que se utiliza solo para la lista blanca de alarmas.

private_ip

No

String

Dirección IP privada del servidor

login_ip

No

String

Dirección IP de origen de inicio de sesión

login_user_name

No

String

Nombre de usuario de inicio de sesión

container_id

No

String

ID de contenedor

Mínimo: 64

Máximo: 64

container_name

No

String

Nombre de contenedor

Mínimo: 1

Máximo: 128

Tabla 7 EventWhiteRuleListRequestInfo

Parámetro

Obligatorio

Tipo

Descripción

event_type

Integer

Tipo de evento. Su valor puede ser:

  • 1001: malware común

  • 1002: virus

  • 1003:gusano

  • 1004: Troyano

  • 1005: botnet

  • 1006: backdoor

  • 1010 : Rootkit

  • 1011: ransomware

  • 1012: herramienta hacker

  • 1015: web shell

  • 1016: minería

  • 1017: shell inverso

  • 2001: explotación de vulnerabilidad común

  • 2012: ejecución remota de código

  • 2047: explotación de vulnerabilidad de Redis

  • 2048: explotación de vulnerabilidad de Hadoop

  • 2049: explotación de vulnerabilidades de MySQL

  • 3002: escalamiento de privilegios de archivo

  • 3003: escalada de privilegios de proceso

  • 3004: cambio crítico de archivos

  • 3005: cambio de archivo/directorio

  • 3007: comportamiento del proceso anormal

  • 3015: ejecución de comandos de alto riesgo

  • 3018: shell anormal

  • 3027: tarea sospechosa de crontab

  • 3029: protección del sistema deshabilitada

  • 3030: eliminación de copias de respaldo

  • 3031: operaciones de registro sospechosas

  • 3036: bloqueo de imágenes de contenedor

  • 4002: ataque por fuerza bruta

  • 4004: inicio de sesión anormal

  • 4006: cuentas no válidas

  • 4014: cuenta agregada

  • 4020: robo de contraseñas

  • 6002: escaneo de puerto

  • 6003: escaneo de servidor

  • 13001: eliminación de eventos de Kubernetes

  • 13002: comportamiento anormal de pod

  • 13003: enumeración de la información de usuario

  • 13004: vinculación de rol de clúster

field_key

String

Campos de lista blanca. Las opciones son las siguientes:

  • "file/process hash" # process/file hash

  • "file_path"

  • "process_path"

  • "login_ip": login IP address

  • "reg_key": registry key

  • "process_cmdline": process command line

  • "username"

Mínimo: 1

Máximo: 20

field_value

String

Valor del campo de lista blanca

Mínimo: 1

Máximo: 128

judge_type

String

Comodín. Las opciones son las siguientes:

  • "equal"

  • "contain"

Mínimo: 1

Máximo: 10

Parámetros de respuesta

Ninguna

Solicitudes de ejemplo

Procesar manualmente las alarmas de intrusión cuyo tipo de evento de alarma sea Rootkit y cuyo ID de evento de alarma sea 2a71e1e2-60f4-4d56-b314-2038fdc39de6.

POST https://{endpoint}/v5/{project_id}/event/operate?enterprise_project_id=xxx

{
  "operate_type" : "mark_as_handled",
  "handler" : "test",
  "operate_event_list" : [ {
    "event_class_id" : "rootkit_0001",
    "event_id" : "2a71e1e2-60f4-4d56-b314-2038fdc39de6",
    "occur_time" : 1672046760353,
    "event_type" : 1010,
    "operate_detail_list" : [ {
      "agent_id" : "c9bed5397db449ebdfba15e85fcfc36accee125c68954daf5cab0528bab59bd8",
      "file_hash" : "e8b50f0b91e3dce0885ccc5902846b139d28108a0a7976c9b8d43154c5dbc44d",
      "file_path" : "/usr/test",
      "process_pid" : 3123,
      "file_attr" : 33261,
      "keyword" : "file_path=/usr/test",
      "hash" : "e8b50f0b91e3dce0885ccc5902846b139d28108a0a7976c9b8d43154c5dbc44d",
      "login_ip" : "127.0.0.1",
      "private_ip" : "127.0.0.2",
      "login_user_name" : "root",
      "container_id" : "containerid",
      "container_name" : "/test"
    } ]
  } ]
}

Ejemplo de respuestas

Ninguna

Código de ejemplo del SDK

El código de ejemplo del SDK es el siguiente.

Java

Procesar manualmente las alarmas de intrusión cuyo tipo de evento de alarma sea Rootkit y cuyo ID de evento de alarma sea 2a71e1e2-60f4-4d56-b314-2038fdc39de6.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.hss.v5.region.HssRegion;
import com.huaweicloud.sdk.hss.v5.*;
import com.huaweicloud.sdk.hss.v5.model.*;

import java.util.List;
import java.util.ArrayList;

public class ChangeEventSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");

        ICredential auth = new BasicCredentials()
                .withAk(ak)
                .withSk(sk);

        HssClient client = HssClient.newBuilder()
                .withCredential(auth)
                .withRegion(HssRegion.valueOf("<YOUR REGION>"))
                .build();
        ChangeEventRequest request = new ChangeEventRequest();
        request.withEnterpriseProjectId("<enterprise_project_id>");
        request.withContainerName("<container_name>");
        request.withContainerId("<container_id>");
        ChangeEventRequestInfo body = new ChangeEventRequestInfo();
        List<EventDetailRequestInfo> listOperateEventListOperateDetailList = new ArrayList<>();
        listOperateEventListOperateDetailList.add(
            new EventDetailRequestInfo()
                .withAgentId("c9bed5397db449ebdfba15e85fcfc36accee125c68954daf5cab0528bab59bd8")
                .withProcessPid(3123)
                .withFileHash("e8b50f0b91e3dce0885ccc5902846b139d28108a0a7976c9b8d43154c5dbc44d")
                .withFilePath("/usr/test")
                .withFileAttr("33261")
                .withKeyword("file_path=/usr/test")
                .withHash("e8b50f0b91e3dce0885ccc5902846b139d28108a0a7976c9b8d43154c5dbc44d")
                .withPrivateIp("127.0.0.2")
                .withLoginIp("127.0.0.1")
                .withLoginUserName("root")
                .withContainerId("containerid")
                .withContainerName("/test")
        );
        List<OperateEventRequestInfo> listbodyOperateEventList = new ArrayList<>();
        listbodyOperateEventList.add(
            new OperateEventRequestInfo()
                .withEventClassId("rootkit_0001")
                .withEventId("2a71e1e2-60f4-4d56-b314-2038fdc39de6")
                .withEventType(1010)
                .withOccurTime(1672046760353L)
                .withOperateDetailList(listOperateEventListOperateDetailList)
        );
        body.withOperateEventList(listbodyOperateEventList);
        body.withHandler("test");
        body.withOperateType("mark_as_handled");
        request.withBody(body);
        try {
            ChangeEventResponse response = client.changeEvent(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}

Python

Procesar manualmente las alarmas de intrusión cuyo tipo de evento de alarma sea Rootkit y cuyo ID de evento de alarma sea 2a71e1e2-60f4-4d56-b314-2038fdc39de6.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# coding: utf-8

from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkhss.v5.region.hss_region import HssRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkhss.v5 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = __import__('os').getenv("CLOUD_SDK_AK")
    sk = __import__('os').getenv("CLOUD_SDK_SK")

    credentials = BasicCredentials(ak, sk) \

    client = HssClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(HssRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ChangeEventRequest()
        request.enterprise_project_id = "<enterprise_project_id>"
        request.container_name = "<container_name>"
        request.container_id = "<container_id>"
        listOperateDetailListOperateEventList = [
            EventDetailRequestInfo(
                agent_id="c9bed5397db449ebdfba15e85fcfc36accee125c68954daf5cab0528bab59bd8",
                process_pid=3123,
                file_hash="e8b50f0b91e3dce0885ccc5902846b139d28108a0a7976c9b8d43154c5dbc44d",
                file_path="/usr/test",
                file_attr="33261",
                keyword="file_path=/usr/test",
                hash="e8b50f0b91e3dce0885ccc5902846b139d28108a0a7976c9b8d43154c5dbc44d",
                private_ip="127.0.0.2",
                login_ip="127.0.0.1",
                login_user_name="root",
                container_id="containerid",
                container_name="/test"
            )
        ]
        listOperateEventListbody = [
            OperateEventRequestInfo(
                event_class_id="rootkit_0001",
                event_id="2a71e1e2-60f4-4d56-b314-2038fdc39de6",
                event_type=1010,
                occur_time=1672046760353,
                operate_detail_list=listOperateDetailListOperateEventList
            )
        ]
        request.body = ChangeEventRequestInfo(
            operate_event_list=listOperateEventListbody,
            handler="test",
            operate_type="mark_as_handled"
        )
        response = client.change_event(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)

Go

Procesar manualmente las alarmas de intrusión cuyo tipo de evento de alarma sea Rootkit y cuyo ID de evento de alarma sea 2a71e1e2-60f4-4d56-b314-2038fdc39de6.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    hss "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/hss/v5"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/hss/v5/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/hss/v5/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")

    auth := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        Build()

    client := hss.NewHssClient(
        hss.HssClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ChangeEventRequest{}
	enterpriseProjectIdRequest:= "<enterprise_project_id>"
	request.EnterpriseProjectId = &enterpriseProjectIdRequest
	containerNameRequest:= "<container_name>"
	request.ContainerName = &containerNameRequest
	containerIdRequest:= "<container_id>"
	request.ContainerId = &containerIdRequest
	agentIdOperateDetailList:= "c9bed5397db449ebdfba15e85fcfc36accee125c68954daf5cab0528bab59bd8"
	processPidOperateDetailList:= int32(3123)
	fileHashOperateDetailList:= "e8b50f0b91e3dce0885ccc5902846b139d28108a0a7976c9b8d43154c5dbc44d"
	filePathOperateDetailList:= "/usr/test"
	fileAttrOperateDetailList:= "33261"
	keywordOperateDetailList:= "file_path=/usr/test"
	hashOperateDetailList:= "e8b50f0b91e3dce0885ccc5902846b139d28108a0a7976c9b8d43154c5dbc44d"
	privateIpOperateDetailList:= "127.0.0.2"
	loginIpOperateDetailList:= "127.0.0.1"
	loginUserNameOperateDetailList:= "root"
	containerIdOperateDetailList:= "containerid"
	containerNameOperateDetailList:= "/test"
	var listOperateDetailListOperateEventList = []model.EventDetailRequestInfo{
        {
            AgentId: &agentIdOperateDetailList,
            ProcessPid: &processPidOperateDetailList,
            FileHash: &fileHashOperateDetailList,
            FilePath: &filePathOperateDetailList,
            FileAttr: &fileAttrOperateDetailList,
            Keyword: &keywordOperateDetailList,
            Hash: &hashOperateDetailList,
            PrivateIp: &privateIpOperateDetailList,
            LoginIp: &loginIpOperateDetailList,
            LoginUserName: &loginUserNameOperateDetailList,
            ContainerId: &containerIdOperateDetailList,
            ContainerName: &containerNameOperateDetailList,
        },
    }
	var listOperateEventListbody = []model.OperateEventRequestInfo{
        {
            EventClassId: "rootkit_0001",
            EventId: "2a71e1e2-60f4-4d56-b314-2038fdc39de6",
            EventType: int32(1010),
            OccurTime: int64(1672046760353),
            OperateDetailList: listOperateDetailListOperateEventList,
        },
    }
	handlerChangeEventRequestInfo:= "test"
	request.Body = &model.ChangeEventRequestInfo{
		OperateEventList: listOperateEventListbody,
		Handler: &handlerChangeEventRequestInfo,
		OperateType: "mark_as_handled",
	}
	response, err := client.ChangeEvent(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

Más información

Para obtener un código de ejemplo del SDK de más lenguajes de programación, consulte la pestaña Código de ejemplo en API Explorer. El código de ejemplo del SDK se puede generar automáticamente.

Códigos de estado

Código de estado

Descripción

200

Con éxito

400

Parámetro no válido.

401

Error de autenticación.

403

Permiso insuficiente.

404

Recurso no encontrado.

500

Error del sistema.

Códigos de error

Consulte Códigos de error.