本文介绍操作审计作为事件源发布到事件总线EventBridge的事件类型。

背景信息

操作审计支持作为以下云产品的事件源:

  • 文件存储NAS
    负载均衡
    CDN
    阿里云Elasticsearch
    DataV数据可视化
    云企业网
    云数据库HBase
    密钥管理服务
    城市视觉智能引擎
    微服务引擎
    云数据库RDS
    数据库审计
    容器服务Kubernetes版
    云服务器ECS
    云原生数据库PolarDB
    消息队列Kafka版
    操作审计
    智能媒体管理
    多媒体AI
    资源编排
    函数计算
    智能接入网关
    配置审计
    云数据库Cassandra
    专有网络VPC
    区块链服务BaaS
    云会议
    数据库文件存储
    对象存储OSS
    访问控制
    开放搜索
    表格存储Tablestore
    云监控
    批量计算
    智能云相册
    音视频通信
    全站加速
    弹性伸缩
    弹性容器实例
    容器镜像服务
    交互式分析Hologres
    媒体处理
    云原生数据仓库(ADS)
    运维编排服务
    云原生分布式数据库PolarDB-X
    漏洞扫描
    云安全中心
    E-MapReduce
    风险识别
    域名
    数据传输服务
    安骑士
    Quick BI
    视频点播
    边缘节点服务
    性能测试
    视频直播
    阿里云物联网平台
    弹性高性能计算
    PCDN
    智能推荐

事件类型

操作审计支持发布到事件总线EventBridge的事件类型如下所示。

事件类型 type参数值
阿里云平台对资源执行的操作事件 actiontrail:ActionTrail:AliyunServiceEvent
API调用 actiontrail:ActionTrail:ApiCall
控制台的操作事件 actiontrail:ActionTrail:ConsoleOperation

CloudEvents规范中定义的参数解释,请参见事件概述

注意 事件总线EventBridge目前只支持写类型的操作审计事件。

API调用

通过OpenAPI调用API时,事件总线EventBridge接收到的示例事件如下所示。

{
    "acsRegion":"cn-hangzhou",
    "additionalEventData":{
        "Scheme":"http"
    },
    "apiVersion":"2014-05-26",
    "eventCategory":"Management",
    "eventId":"F7393A43-6A4A-4409-AEDD-8B1C47DE****",
    "eventName":"RunInstances",
    "eventRW":"Write",
    "eventSource":"ecs-cn-hangzhou-inner.aliyuncs.com",
    "eventTime":"2021-07-13T07:33:46Z",
    "eventType":"ApiCall",
    "eventVersion":"1",
    "referencedResources":{
        "ACS::ECS::Instance":[
            "i-0xiiz1v0vw4epqjc****"
        ],
        "ACS::ECS::SecurityGroup":[
            "sg-0xi2js0u6m03jbmv****"
        ],
        "ACS::ECS::Image":[
            "aliyun_2_1903_x64_20G_alibase_20200529.vhd"
        ],
        "ACS::ECS::KeyPair":[
            "sshkey-cn-hangzhou"
        ],
        "ACS::VPC::VSwitch":[
            "vsw-0xikxv8p1akh4ki43****"
        ]
    },
    "requestId":"F7393A43-6A4A-4409-AEDD-8B1C47DE45ED",
    "requestParameters":{
        "Amount":1,
        "VSwitchId":"vsw-0xikxv8p1akh4ki43****"
    },
    "resourceName":"i-0xiiz1v0vw4epqjc****;sg-0xi2js0u6m03jbmv****;aliyun_2_1903_x64_20G_alibase_20200529.vhd;sshkey-cn-hangzhou;vsw-0xikxv8p1akh4ki43****",
    "resourceType":"ACS::ECS::Instance;ACS::ECS::SecurityGroup;ACS::ECS::Image;ACS::ECS::KeyPair;ACS::VPC::VSwitch",
    "responseElements":{
        "RequestId":"F7393A43-6A4A-4409-AEDD-8B1C47DE45ED",
        "InstanceIdSets":{
            "InstanceIdSet":[
                "i-0xiiz1v0vw4epqjc****"
            ]
        }
    },
    "serviceName":"Ecs",
    "sourceIpAddress":"Internal",
    "userAgent":"AlibabaCloud (Linux; amd64) Java/1.8.0_102-b52 Core/4.5.3 HTTPClient/InternalHttpClient",
    "userIdentity":{
        "accessKeyId":"STS.NUQNP4PiGyckMsNiGELCs****",
        "accountId":"116214297662****",
        "principalId":"32886943330935****:ess-session-ecs_default",
        "sessionContext":{
            "attributes":{
                "mfaAuthenticated":"false",
                "creationDate":"2021-07-13T07:33:46Z"
            }
        },
        "type":"assumed-role",
        "userName":"aliyunserviceroleforautoscaling:ess-session-ecs_default"
    }
}

data字段包含的参数解释如下表所示。

说明 更多新增字段内容,请参见公告:操作事件增加新字段
名称 类型 是否非空 示例 描述
acsRegion String cn-hangzhou 阿里云地域。
additionalEventData JSON Schema: "http" 事件的补充信息。补充信息含义及示例代码如下:
  • 无实际意义
    additionalEventData: {
      Schema: "http"
    }
  • 登录事件
    {
        "additionalEventData":{
            "callbackUrl":"https://homenew.console.aliyun.com/",
            "mfaChecked":"true"
        }
    }
  • MaxCompute
    {
      "additionalEventData": {
        "TableName": "table_1",
        "Partition": "dt=20210708,hh=17,region=cn-shenzhen",
        "CurrentProject": "project_1",
        "ProjectName": "project_1",
        "SesssionId": "202107081800166d37d****"
      }
    }
apiVersion String 2014-05-26 eventType取值为ApiCall时,事件代表一个API的调用。此时,该字段为API的版本信息。
eventCategory String Management 事件分类。取值:
  • Management:管控事件。
  • Insight:Insight事件。
eventId String F23A3DD5-7842-4EF9-9DA1-3776396A**** 事件ID。操作审计为每个管控事件所产生的一个GUID。
eventName String CreateNetworkInterface 事件名称。
  • 如果eventType取值为ApiCall,该字段为API的名称。
  • 如果eventType取值不为ApiCall,该字段为简单的英文短句,表示事件含义。
eventRW String Write 事件的读写类型。取值:
  • Write:写类型。
  • Read:读类型。
eventSource String ecs.aliyuncs.com 事件来源。
eventTime String 2020-01-09T12:12:14Z 事件的发生时间(UTC格式)。
eventType String ApiCall 发生的事件类型。取值:
  • ApiCall:API调用事件。大多阿里云控制台基于API开发,对应的操作行为也会记录为ApiCall。
  • ConsoleOperation(ConsoleCall):部分控制台或售卖页的管控事件。由于这些控制台或售卖页并不是基于API来开发的,因此操作审计会将此类事件类型记录为ConsoleOperation或ConsoleCall。此类事件的名称并不一定是API名称, 但能够传达基本操作行为的含义。
  • AliyunServiceEvent:此类事件为阿里云平台对您的资源执行的管控事件,目前主要是预付费实例的到期自动释放事件。
  • PasswordReset:密码重置事件。
  • ConsoleSignin:控制台登录事件。
  • ConsoleSignout:控制台登出事件。
eventVersion String 1 管控事件格式的版本,当前版本为1。
errorCode String NoPermission 云服务处理API请求发生错误时,记录的错误码。
errorMessage String You are not authorized. 云服务处理API请求发生错误时,记录的错误消息。
requestId String F23A3DD5-7842-4EF9-9DA1-3776396AD58D 请求ID。
requestParameters 字典 不涉及 API请求的输入参数。
requestParameterJson String "{"AcsHost":"actiontrail.cn-hangzhou.aliyuncs.com","AcsProduct":"Actiontrail","RequestId":"32B8BA8F-3738-46D3-BCCA-1B2257AEF9BB","AcceptLanguage":"zh-CN","Region":"cn-hangzhou","HostId":"actiontrail.cn-hangzhou.aliyuncs.com","Name":"create-service-tmp"}" requestParameters的JSON格式。
说明 仅投递到日志服务SLS的事件包含requestParameterJson。
responseElements 字典 不涉及 API响应的数据。
referencedResources 字典 不涉及 事件影响的资源列表。
serviceName String Ecs 事件相关的阿里云服务名称。
sourceIpAddress String 11.168.XX.XX 事件发起的源IP地址。
userAgent String Apache-HttpClient/4.5.7 (Java/1.8.0_152) 发送API请求的客户端代理标识。取值示例:
  • AlibabaCloud (Linux 3.10.0-693.2.2.el7.x86_64;x86_64) Python/2.7.5 Core/2.13.16 python-requests/2.18.3
  • Apache-HttpClient/4.5.7 (Java/1.8.0_152)
userIdentity 字典 不涉及 请求者的身份信息。

更多信息,请参见userIdentity包含的字段

userIdentity包含的字段如下表所示。

表 1. userIdentity包含的字段
名称 类型 是否非空 示例 描述
type String ram-user 身份类型。当前支持的身份类型包括:
  • root-account:阿里云账号。
  • ram-user:RAM用户。
  • assumed-role:RAM角色。
  • system:阿里云服务。
principalId String 28815334868278**** 当前请求者的ID。
  • 如果type取值为root-account,则记录阿里云账号ID。
  • 如果type取值为ram-user,则记录RAM用户ID。
  • 如果type取值为assumed-role,则记录RoleID:RoleSessionName。
accountId String 112233445566**** 阿里云账号ID。
accessKeyId String 55nCtAwmPLkk****
  • 如果请求者通过SDK访问API,则记录该字段。
  • 如果请求者通过控制台登录,则该字段不显示。
userName String Alice
  • 如果type取值为ram-user,则记录RAM用户名。
  • 如果type取值为assumed-role,则记录RoleName:RoleSessionName。
sessionContext String {"attributes": {"mfaAuthenticated": "true", "creationDate": "2020-01-09T12:12:14Z" } 请求者通过临时安全令牌调用API或通过控制台登录时记录该字段。该字段的内容包括:
  • creationDate:创建时间。
  • mfaAuthenticated:用户登录控制台时是否使用多因素认证。