跳至主内容

实时搜索查询

此方法用于创建从在线端点直接获取事件信息和系统统计数据的任务。该任务利用Osquery(一种采用SQLite查询语言的操作系统检测框架)实现。

有关实时搜索的更多信息,请参阅 实时搜索 。关于

Osquery从端点采集数据并上传至S3存储桶进行集中存储。要将实时搜索结果上传至S3存储桶,需提前配置AWS(亚马逊云服务)平台。具体步骤请参考 为实时搜索配置AWS并执行runLiveSearchQuery .

参数

参数

描述

请求包含

类型

取值

companyId

目标终端所属公司的ID。

必填

字符串

无额外要求。

query

将在所有终端上运行的查询语句。

必填

字符串

参考 这篇知识库文章 获取更多关于查询的信息。

endpoints

终端ID列表。决定查询在哪些终端上运行。

必填

注意

虽然该参数为必填项,但可以保留空数组以触发默认值。

字符串数组

ID必须属于目标公司管理的终端。

默认值:目标公司所有终端。

注意

当数组为空时将自动使用默认值。

operatingSystems

目标终端设备的操作系统。

提示

此参数最适合用于查询目标公司所有使用特定操作系统的终端设备。为此,请将 endpoints 数组留空。

必填

注意

尽管该参数为必填项,但您可以将数组留空,这将触发默认值。

字符串数组

无额外要求。

可选值:

  • windows

  • linux

  • mac

默认值:所有操作系统。

注意

当数组不包含任何值时,将自动使用默认值。

s3UploadConfig

用于存储返回数据的S3存储桶。

必填

对象

参考 s3UploadConfig

s3UploadConfig

参数

描述

包含在请求中

类型

bucket

存储数据的S3存储桶名称。

必填

字符串

region

存储桶所在的AWS区域。

必填

字符串

roleArn

GravityZone访问存储桶时将使用的IAM角色的亚马逊资源名称(ARN)。

必填

字符串

externalId

在角色信任策略中设置的唯一标识符。

用于通过验证请求者是否有权承担IAM角色来启用安全的跨账户访问。

必填

字符串

返回值

属性

类型

描述

result

字符串

请求创建的任务的ID。

示例

请求 :

{
    "params": {
        "companyId": "669659908c2fa1ace601****",
        "query": "select * from time;",
        "endpoints": [
            "1234567890abcdef12345678",
            "a1b2c3d4e5f6078901234567"
            "0987654321fedcba87654321"
        ],
        "operatingSystems": [
            "windows", "linux", "mac"
        ],
        "s3UploadConfig": {
            "bucket": "osquery-bucket-test",
            "region": "eu-north-1",
            "roleArn": "arn:aws:iam::000000000000:role/osquery-role",
            "externalId": "000000000000000000000"
        }
    },
    "jsonrpc": "2.0",
    "method": "runLiveSearchQuery",
    "id": "123-456-789-1011"
}

响应 :

{
     "id": "123-456-789-1011",
     "jsonrpc": "2.0",
     "result": "000000000000000000000000"
}