查询密钥和凭据的使用记录

KMS支持和操作审计、日志服务集成,记录密钥和凭据使用过程中的各种事件,用于故障排除、安全监控等。本文介绍如何查询密钥以及凭据的使用记录。

背景信息

通常我们将密钥和凭据的事件分为两部分,一部分是管控类操作,例如密钥的创建、删除,凭据的创建、删除,修改密钥别名等。一部分是业务类操作,即密码运算操作、获取凭据值。不同事件以及不同业务场景查询方式不同。

KMS实例中的密钥和凭据

资源类型

事件类型

事件查询方式

密钥

管控类操作

操作审计。

业务类操作(即密码运算操作)

  • 云产品加密场景:操作审计。

  • 自建应用加密场景:日志服务。

凭据

管控类操作

操作审计。

业务类操作(即获取凭据值操作)

  • 通过KMS服务Endpoint获取凭据值时:可以通过操作审计,也可以通过日志服务。

  • 通过KMS实例Endpoint获取凭据值时:日志服务。

非KMS实例中的密钥和凭据

非KMS实例中的密钥,即默认密钥。非KMS实例中的凭据,即针对部分旧版本用户,无需购买KMS实例也能创建凭据,目前已不支持该场景。

资源类型

事件类型

事件查询方式

密钥

管控类操作

操作审计。

业务类操作(即密码运算操作)

操作审计。

凭据

管控类操作

操作审计。

业务类操作(即获取凭据值操作)

可以通过操作审计,也可以通过日志服务。

说明

仅能通过KMS服务Endpoint获取凭据值。

注意事项

查询密钥相关事件时,通过操作审计可以查询所有状态的密钥的事件记录,但使用日志服务时仅能查询处于可用状态(即启用中)的密钥的事件记录。

通过操作审计查询

操作审计控制台的事件查询页面以及高级查询页面,都可以查询相关事件。支持查询的事件详情,请参见密钥管理服务支持被审计的事件说明

  • 事件查询:默认支持查询最近90天内的事件,由操作审计免费提供。

  • 高级查询:您需要先创建跟踪并选择将事件投递到日志服务SLS,才能使用高级查询。具体操作,请参见单账号跟踪概览多账号跟踪概览。需要注意您只能查询到创建跟踪后的事件,如果您需要查询创建跟踪前的90天内的事件,请参见创建跟踪历史投递任务

    说明

    创建跟踪将事件投递到日志服务SLS,需要按照SLS定价单独付费。详细信息,请参见SLS计费详情

方式一:在事件查询页面查询

  1. 登录操作审计控制台

  2. 在左侧导航栏,单击事件 > 事件查询

  3. 选择关联资源名称,输入您要查询的密钥ID或凭据ID,选择时间范围后单击image.png图标。image.png

  4. 在页面下方找到目标事件,单击操作列的查看事件详情

方式二:在高级查询页面查询

  1. 登录操作审计控制台

  2. 在左侧导航栏,单击事件 > 高级查询

  3. 选择跟踪名称,然后关闭页面右上角的简单查询,输入查询语句。

    可以参考如下查询语句:

    • 查询指定密钥的事件:* AND (event.serviceName: "Kms") AND (event.eventRW: "Read") AND "key-szz63dc8c429ermur****",请将key-szz63dc8c429ermur****替换为真实的密钥ID。

    • 查询处于禁用状态的密钥的事件:* AND (event.serviceName: "Kms") AND (event.errorCode:"Rejected.Disabled")

    • 查询处于待删除状态的密钥的事件:* AND (event.serviceName: "Kms") AND (event.errorCode:"Rejected.PendingDeletion")

    • 查询已到期实例中的密钥的事件:* AND (event.serviceName: "Kms") AND (event.errorCode:"Rejected.Unavailable")

      说明

      关于更多与密钥状态相关的错误码,请参见公共错误码

    • 查询指定凭据的事件:* AND (event.serviceName: "Kms") AND (event.eventName: "GetSecretValue") AND "SecretName",请将SecretName替换为真实的凭据ID。

  4. 在页面下方找到目标事件,单击操作列的查看事件详情

使用日志服务查询

  1. 登录密钥管理服务控制台,在顶部菜单栏选择地域后,在左侧导航栏单击安全运营 > 日志服务

  2. 日志服务页面,选择实例ID,在密钥/凭据ID中输入密钥ID或凭据ID。

  3. 设置查询的时间范围,然后单击查询/分析

    说明
    • 日志的保存时间为180天,180天之前的日志数据会被删除,因此只支持查询最近180天内的日志数据。

    • 查询结果相对于指定的时间范围有1分钟以内的误差。

    • 查询/分析操作不产生额外的后付费。

相关文档