GetLogDetail - 查询单条SQL语句的详情

查询数据库审计单条审计日志的详细信息。

接口说明

使用说明

本接口用于通过审计日志的 ID,查询单条日志的详情,例如,SQL 语句的内容、运行结果集等。

QPS 限制

本接口的单用户 QPS 限制为 10 次/秒。超过限制,API 调用会被限流,这可能会影响您的业务,请合理调用。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用前面加 * 表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
yundun-dbaudit:GetLogDetailget
*全部资源
*

请求参数

名称类型必填描述示例值
RegionIdstring

数据库审计实例的地域 ID。

您可以通过调用 DescribeRegions 接口获取地域 ID。接口的参数说明,请参见 DescribeRegions

注意 调用 DescribeRegions 接口查询 D100 实例支持的地域时,公共参数的 Version(API 版本)必须取值2018-03-20

cn-hangzhou
InstanceIdstring

审计的实例 ID。

您可以通过调用 DescribeInstances 接口获取实例 ID。接口的参数说明,请参见 DescribeInstances

注意 调用 DescribeInstances 接口查询 D100 实例列表时,公共参数的 Version(API 版本)必须取值2018-03-20

dbaudit-cn-78v1gc****
BeginDatestring

要查询日志的开始日期。格式:yyyy-MM-dd HH:mm:ss

2019-06-06 00:00:00
EndDatestring

要查询日志的结束日期。格式:yyyy-MM-dd HH:mm:ss

2019-06-06 23:59:59
SqlIdstring

要查询的日志 ID。

您可以通过 GetLogList 调用获取日志 ID。

1907181552270011186
Langstring

请求和接收消息的语言类型。取值:

  • zh(默认):中文。
  • en:英文。
zh

返回参数

名称类型描述示例值
object
RequestIdstring

本次请求的 ID。

1B217656-2267-4FBF-B26C-CDD201BDC3B8
ClientPortinteger

连接数据库的客户端的端口号。

15629
AppClientIpstring

应用客户端的 IP 地址。支持 IPv4、IPv6 两种协议类型。

8.8.XX.XX
ExecCostUSinteger

数据库服务器执行 SQL 语句响应的时间。单位:微秒。

10
SessionLogoutTimestring

会话退出时间。

2019-06-06 00:00:00
ClientOsUserstring

客户端系统的账号的用户名。

administrator
RuleIdinteger

SQL 语句命中的审计规则 ID。

50****
SqlIdstring

日志 ID。

1907181552270011186
SessionIdstring

会话 ID。

3011610850021000000
SqlTypestring

SQL 语句的类型。取值:

  • 1:表示 CREATE 语句。
  • 2:表示 SET 语句。
  • 4:表示 INSERT 语句。
  • 8:表示 SELECT 语句。
  • 16:表示 UPDATE 语句。
  • 32:表示 DELETE 语句。
  • 64:表示 DROP 语句。
  • 128:表示 ALTER 语句。
8
SecondarySqlTypestring

SQL 语句的子类型。取值:[0,1,2,4,8,...],根据 SqlType 的值,取值范围不同。例如,SqlType 参数值为 1,SecondarySqlType 参数值为 1 时,代表 CREATE TABLE 语句

1
AppUsernamestring

应用客户端的账号的用户名。

zhangsan
RiskLevelinteger

SQL 语句命中规则的风险等级。取值:

  • 0:表示无风险。
  • 1:表示低风险等级。
  • 3:表示中风险等级。
  • 5:表示高风险等级。
3
DbIdinteger

在审计系统中配置的数据源的 ID。

1
RuleTypeinteger

SQL 语句命中规则的规则类型。取值:

  • 2:语句规则。
  • 3:注入攻击。
  • 4:漏洞攻击。
  • 5:操作规则。
  • 6:访问规则。
  • 7:口令攻击。
5
RuleKeyIdinteger

SQL 语句命中规则的规则主键 ID。

50****
SqlResultstring

SQL 语句执行返回的结果集。JSON 格式。

[["id","name","age"],["1","zhangsan","20"]]
AffectRowsinteger

执行 SQL 语句的影响行数。

100
SqlTypeNamestring

SQL 语句类型的名称。

SELECT
Schemastring

数据库的 Schema 的名称。

db_test
SessionLoginTimestring

会话登录时间。

2019-06-06 00:00:00
DbUserstring

连接数据库的账号的用户名。

root
ServerMacstring

数据库服务器的 MAC 地址。

00163E06****
DbServerstring

数据库服务器的 IP 地址。支持 IPv4、IPv6 两种协议类型。

192.168.XX.XX:3306
RuleNamestring

SQL 语句命中的审计规则的名称。

自定义风险规则
ResponseCodestring

SQL 语句执行结果。

0 表示执行成功,其他数值为数据库错误码。

0
SqlContentstring

SQL 语句的内容。

select * from xxx where name='zhangsan'
InstNamestring

连接数据库的实例的名称。

orcl
TemplateContentstring

SQL 语句模板的内容。

SELECT * FROM XXX WHERE NAME='#'
ClientProgramstring

客户端连接数据库所使用的工具。

navicat
CaptureTimestring

执行 SQL 语句的开始时间。

2019-06-06 00:00:00
ClientIpstring

连接数据库的客户端的 IP 地址。支持 IPv4、IPv6 两种协议类型。

192.168.XX.XX
ClientMacstring

连接数据库的客户端的 MAC 地址。

00163E06****
TemplateIdstring

SQL 语句的模板 ID。

1000****
ResponseTextstring

SQL 语句执行时返回的错误信息。

Table 'your_table' doesn't exist
FetchCostUSinteger

数据库服务器执行 SQL 语句所用的总时间,包含网络延迟的时间。单位:微秒。

10
TemplateRulesarray

SQL 语句模板命中的语句规则列表。

infostring

规则 ID 和规则名称,ID 和名称之间用半角逗号(,)分隔。

100001,语句规则1

示例

正常返回示例

JSON格式

{
  "RequestId": "1B217656-2267-4FBF-B26C-CDD201BDC3B8",
  "ClientPort": 15629,
  "AppClientIp": "8.8.XX.XX",
  "ExecCostUS": 10,
  "SessionLogoutTime": "2019-06-06 00:00:00",
  "ClientOsUser": "administrator",
  "RuleId": 0,
  "SqlId": "1907181552270011186",
  "SessionId": "3011610850021000000",
  "SqlType": "8",
  "SecondarySqlType": "1",
  "AppUsername": "zhangsan",
  "RiskLevel": 3,
  "DbId": 1,
  "RuleType": 5,
  "RuleKeyId": 0,
  "SqlResult": "[[\"id\",\"name\",\"age\"],[\"1\",\"zhangsan\",\"20\"]]",
  "AffectRows": 100,
  "SqlTypeName": "SELECT",
  "Schema": "db_test",
  "SessionLoginTime": "2019-06-06 00:00:00",
  "DbUser": "root",
  "ServerMac": "00163E06****",
  "DbServer": "192.168.XX.XX:3306",
  "RuleName": "自定义风险规则",
  "ResponseCode": "0",
  "SqlContent": "select * from xxx where name='zhangsan'",
  "InstName": "orcl",
  "TemplateContent": "SELECT * FROM XXX WHERE NAME='#'",
  "ClientProgram": "navicat",
  "CaptureTime": "2019-06-06 00:00:00",
  "ClientIp": "192.168.XX.XX",
  "ClientMac": "00163E06****",
  "TemplateId": "1000****",
  "ResponseText": "Table 'your_table' doesn't exist",
  "FetchCostUS": 10,
  "TemplateRules": [
    "100001,语句规则1"
  ]
}

错误码

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
2025-02-17OpenAPI 返回结构发生变更查看变更详情
2024-01-16OpenAPI 描述信息更新查看变更详情