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

背景信息

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

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

事件类型

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

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

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

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

API调用

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

{
  "eventId": "F23A3DD5-7842-4EF9-9DA1-3776396A****",
  "responseElements": {
    "RequestId": "F23A3DD5-7842-4EF9-9DA1-3776396AD58D",
    "NetworkInterfaceId": "eni-bp12f9rjbjqauktz****"
  },
  "eventVersion": "1",
  "requestParameters": {
    "Tag.1.Key": "CreatedBy",
    "RequestId": "F23A3DD5-7842-4EF9-9DA1-3776396AD58D",
    "SecurityGroupId": "sg-bp10mvd8143rlfks****",
    "Tag.1.Value": "StreamCompute",
    "VSwitchId": "vsw-bp1iqqmaj41noh2c8****",
    "RegionId": "cn-hangzhou",
    "SignatureType": "",
    "stsTokenPlayerUid": 165266556947****
  },
  "eventSource": "ecs.aliyuncs.com",
  "sourceIpAddress": "11.168.XX.XX",
  "userIdentity": {
    "sessionContext": {
      "attributes": {
        "mfaAuthenticated": "false",
        "creationDate": "2020-01-09T12:12:14Z"
      }
    },
    "accessKeyId": "STS.NUnj6nuqKaEoMZGsT****",
    "accountId": "116214825062****",
    "principalId": "31645666448606****:116214825062****",
    "userName": "aliyunstreamdefaultrole:116214825062****",
    "type": "assumed-role"
  },
  "eventType": "ApiCall",
  "referencedResources": {
    "VSwitch": [
      "vsw-bp1iqqma1noh402c8****"
    ],
    "SecurityGroup": [
      "sg-bp10mvd143r6lfks****"
    ]
  },
  "serviceName": "Ecs",
  "additionalEventData": {
    "Scheme": "http"
  },
  "apiVersion": "2014-05-26",
  "requestId": "F23A3DD5-7842-4EF9-9DA1-3776396AD58D",
  "eventTime": "2020-01-09T12:12:14Z",
  "acsRegion": "cn-hangzhou",
  "eventName": "CreateNetworkInterface",
  "__expanded": true
}

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

说明 更多新增字段内容,请参见公告:操作事件增加新字段
名称 类型 是否非空 示例 描述
acsRegion String cn-hangzhou 阿里云地域。
apiVersion String 2014-05-26 eventType取值为ApiCall时,操作事件代表一个API的调用。此时,该字段为API的版本信息。
eventId String F23A3DD5-7842-4EF9-9DA1-3776396A**** 事件ID。操作审计为每个操作事件所产生的一个GUID。
eventName String CreateNetworkInterface 事件名称。
  • 如果eventType取值为ApiCall,该字段为API的名称。
  • 如果eventType取值不为ApiCall,该字段为简单的英文短句,表示事件含义。
eventSource String ecs.aliyuncs.com 事件来源。
eventTime String 2020-01-09T12:12:14Z 事件的发生时间(UTC格式)。
eventType String ApiCall 发生的事件类型。取值:
  • ApiCall:OpenAPI调用事件。大多阿里云控制台基于OpenAPI开发,对应的操作行为也会记录为ApiCall。
  • ConsoleOperation(ConsoleCall):部分控制台或售卖页的操作事件。由于这些控制台或售卖页并不是基于OpenAPI来开发的,因此操作审计会将此类事件类型记录为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请求的输入参数。
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包含的字段如下表所示。

名称 类型 是否非空 示例 描述
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 B**
  • 如果type取值为ram-user,则记录RAM用户名。
  • 如果type取值为assumed-role,则记录RoleName:RoleSessionName。
sessionContext String {"attributes": {"mfaAuthenticated": "true", "creationDate": "2015-12-31T06:33:14Z" } 请求者通过临时安全令牌调用API或通过控制台登录时记录该字段。该字段的内容包括:
  • creationDate:创建时间。
  • mfaAuthenticated:用户登录控制台时是否使用多因素认证。