- 最新动态
- 产品介绍
- 快速入门
-
用户指南
- 资源清单
- 资源记录器
-
资源合规
- 资源合规概述
- 资源合规规则
- 组织合规规则
- 查看不合规资源
- 合规规则概念详解
-
系统内置预设策略
- 预设策略列表
- 公共可用预设策略
- API网关 APIG
- 部署 CodeArts Deploy
- MapReduce服务 MRS
- NAT网关 NAT
- VPC终端节点 VPCEP
- Web应用防火墙 WAF
- 弹性负载均衡 ELB
- 弹性公网IP EIP
- 弹性伸缩 AS
- 高性能弹性文件服务 SFS Turbo
- 弹性云服务器 ECS
- 分布式缓存服务 DCS
- 函数工作流 FunctionGraph
- 内容分发网络 CDN
- 配置审计 Config
- 数据仓库服务 DWS
- 数据复制服务 DRS
- 数据加密服务 DEW
-
统一身份认证服务 IAM
- IAM用户的AccessKey在指定时间内轮换
- IAM策略中不授权KMS的禁止的action
- IAM用户组添加了IAM用户
- IAM用户密码策略符合要求
- IAM策略黑名单检查
- IAM策略不具备Admin权限
- IAM自定义策略具备所有权限
- 根用户存在可使用的访问密钥
- IAM用户访问模式
- IAM用户创建时设置AccessKey
- IAM用户归属指定用户组
- IAM用户在指定时间内有登录行为
- IAM用户开启MFA
- IAM用户单访问密钥
- Console侧密码登录的IAM用户开启MFA认证
- 根用户开启MFA认证
- IAM策略使用中
- IAM权限使用中
- IAM用户开启登录保护
- IAM委托绑定策略检查
- IAM用户admin权限检查
- IAM用户不直接附加策略或权限
- 文档数据库服务 DDS
- 消息通知服务 SMN
- 虚拟私有云 VPC
- 虚拟专用网络 VPN
- 云监控服务 CES
- 云容器引擎 CCE
- 云审计服务 CTS
- 云数据库 RDS
- 云数据库 GaussDB
- 云数据库 TaurusDB
- 云数据库 GeminiDB
- 云搜索服务 CSS
- 云硬盘 EVS
- 云证书管理服务 CCM
- 分布式消息服务Kafka版
- 分布式消息服务RabbitMQ版
- 分布式消息服务RocketMQ版
- 组织 Organizations
- 云防火墙 CFW
- 云备份 CBR
- 对象存储服务 OBS
- 镜像服务 IMS
- 裸金属服务器 BMS
- 图引擎服务 GES
- 资源合规事件监控
-
合规规则包
- 合规规则包概述
- 合规规则包
- 组织合规规则包
- 自定义合规规则包
-
合规规则包示例模板
- 示例模板概述
- 等保三级2.0规范检查的标准合规包
- 适用于金融行业的合规实践
- 华为云网络安全合规实践
- 适用于统一身份认证服务(IAM)的最佳实践
- 适用于云监控服务(CES)的最佳实践
- 适用于计算服务的最佳实践
- 适用于弹性云服务器(ECS)的最佳实践
- 适用于弹性负载均衡(ELB)的最佳实践
- 适用于管理与监管服务的最佳实践
- 适用于云数据库(RDS)的最佳实践
- 适用于弹性伸缩(AS)的最佳实践
- 适用于云审计服务(CTS)的最佳实践
- 适用于人工智能与机器学习场景的合规实践
- 适用于自动驾驶场景的合规实践
- 资源开启公网访问最佳实践
- 适用于日志和监控的最佳实践
- 华为云架构可靠性最佳实践
- 适用于中国香港金融管理局的标准合规包
- 适用于中小企业的ENISA的标准合规包
- 适用于SWIFT CSP的标准合规包
- 适用于德国云计算合规标准目录的标准合规包
- 适用于PCI-DSS的标准合规包
- 适用于医疗行业的合规实践
- 网络及数据安全最佳实践
- 适用于Landing Zone基础场景的最佳实践
- 架构安全支柱运营最佳实践
- 网络和内容交付服务运营最佳实践
- 适用于空闲资产管理的最佳实践
- 多可用区架构最佳实践
- 资源稳定性最佳实践
- 适用于API网关(APIG)的最佳实践
- 适用于云容器引擎(CCE)的最佳实践
- 适用于内容分发网络(CDN)的最佳实践
- 适用于函数工作流(FunctionGraph)的最佳实践
- 适用于云数据库(GaussDB)的最佳实践
- 适用于云数据库(GeminiDB)的最佳实践
- 适用于MapReduce服务(MRS)的最佳实践
- NIST审计标准最佳实践
- 新加坡金融行业的最佳实践
- 安全身份和合规性运营最佳实践
- 华为云安全配置基线指南的标准合规包(level 1)
- 华为云安全配置基线指南的标准合规包(level 2)
- 静态数据加密最佳实践
- 数据传输加密最佳实践
- 适用于云备份(CBR)的最佳实践
- 适用于云搜索服务(CSS)的最佳实践
- 适用于分布式缓存服务(DCS)的最佳实践
- 适用于分布式消息服务(DMS)的最佳实践
- 适用于数据仓库服务(DWS)的最佳实践
- 适用于云数据库(TaurusDB)的最佳实践
- 适用于对象存储服务(OBS)的最佳实践
- 适用于VPC安全组的最佳实践
- 适用于Web应用防火墙(WAF)的最佳实践
- 高级查询
- 资源聚合器
- 云审计-记录配置审计
- 附录
- API参考
- SDK参考
- 最佳实践
- 常见问题
- 通用参考
链接复制成功!
高级查询
概述
资源聚合器提供高级查询能力,通过使用ResourceQL自定义查询单个或多个聚合源账号的资源配置状态。
高级查询支持用户自定义查询和浏览华为云云服务资源,用户可以通过ResourceQL在查询编辑器中编辑和查询。
您可以使用Config预设的查询语句,或根据资源配置属性自定义查询语句,查询具体的云资源配置。
ResourceQL是结构化的查询语言(SQL)SELECT语法的一部分,它可以对当前资源数据执行基于属性的查询和聚合。查询的复杂程度不同,既可以是简单的标签或资源标识符匹配,也可以是更复杂的查询,例如查看指定具体OS版本的云服务器。
高级查询仅支持用户自定义查询、浏览、导出云服务资源,如果要对资源进行修改、删除等管理类的操作,请前往资源所属的服务页面进行操作。
使用限制
为避免单用户长时间查询占用资源,影响其他用户,对高级查询功能做以下限制:
- 单次查询语句的执行时长不能超过15秒,否则会返回超时错误。
- 单次查询语句查询大量数据,会返回查询数据量过大的报错,需要用户主动简化查询语句。
- 单次查询结果只返回前4000条。
- 单个查询语句中最多只能做两次表的关联查询。
- 每个账号最多可以创建200个高级查询。
- 资源聚合器的高级查询能力暂时不支持 checksum 和 provisioning_state 两个属性。
高级查询功能依赖于资源记录器所收集的资源数据,强烈建议您保持资源记录器的开启状态,不同场景的说明如下:
- 如您从未开启过资源记录器,则高级查询语句无法查询到任何资源数据。
- 如您已开启资源记录器,但仅在资源记录器监控范围内勾选部分资源,则高级查询语句仅能查询到所选择的资源数据。
- 如您开启资源记录器并勾选全部资源,但后续又关闭资源记录器,则高级查询语句仅能查询到资源记录器由开启到关闭期间收集到的资源数据。
关于如何开启并配置资源记录器请参见:配置资源记录器。
新建查询
- 登录管理控制台。
- 单击页面左上角的
图标,在弹出的服务列表中,选择“管理与监管”下的“配置审计 Config”,进入“资源清单”页面。
- 单击页面左侧的“资源聚合器”,在下拉列表中选择“高级查询”,进入“高级查询”页面。
- 选择“自定义查询”页签,单击页面右上角的“新建查询”。
- 在右侧的“查询范围”处选择需要查询资源配置的聚合器,然后在下方输入框中输入查询语句。
页面左侧为高级查询使用的Schema信息,也就是查询语句中properties参数需要填写的内容,为各个云服务资源类型的详细属性。查询语句的配置样例请参见高级查询配置样例。
- 单击“保存查询”,输入查询名称和描述。
查询名称仅支持输入数字、英文字母、下划线和中划线,最大长度64个字符。
- 单击“确定”,保存成功。
图1 保存查询
说明:
如果自定义查询达到限额时,您将无法单击“保存查询”,同时页面右上方提示“您创建的查询已达到上限,请删除暂不需要使用的查询”。但此时您依然可以单击“运行”,直接运行查询并查看和导出查询结果。
- 单击“运行”,查看查询结果。目前只支持展示和导出前4000条查询结果。
- 单击查询结果列表上方的“导出”,选择要导出的文件格式(CSV格式或JSON格式),可导出查询结果。
- 单击“历史执行记录”,可查看该查询历史执行的时间和查询语句等信息。
您可以基于历史执行记录进行如下操作:
- 再次运行:直接基于历史查询语句再次运行查询。
- 复制:复制历史查询语句。
- 保存:直接将历史查询语句保存为新的自定义查询。
说明:
当您关闭浏览器窗口或登出账号后,高级查询的历史执行记录将被清除。
图2 历史执行记录
其他操作
- 您可以修改预设查询或已有自定义查询的名称、描述和查询语句,“另存为”后产生新的查询,具体请参考基于预设查询创建自定义查询。
- 如果您需要查看某个查询的名称、描述和查询语句,请参考查看查询。
- 如果您需要修改某个自定义查询的查询语句,请参考修改查询。
- 如果您不需要使用某个自定义的查询,删除操作请参考删除查询。预设查询不支持删除操作。
说明:
使用资源聚合器高级查询的相关功能,必须先指定需要查询的资源聚合器,从而定义您的查询范围,对指定聚合器聚合的多个源账号下的资源进行高级查询。
高级查询配置样例
ResourceQL使用结构化查询语言(SQL) SELECT语法的子集来对当前云资源配置数据进行查询和关联查询。用户无需调用特定API来实现,也无需通过多个API下载全量数据并手动分析。ResourceQL仅支持从表aggregator_resources中查询数据。
资源参数 |
参数类型 |
含义 |
---|---|---|
domain_id |
String |
账号ID |
id |
String |
资源ID |
name |
String |
资源名称 |
provider |
String |
云服务名称 |
type |
String |
资源类型 |
region_id |
String |
区域ID |
project_id |
String |
项目ID |
ep_id |
String |
企业项目ID |
checksum |
String |
资源详情校验码 |
created |
Date |
资源创建时间 |
updated |
Date |
资源更新时间 |
provisioning_state |
String |
资源操作状态 |
tag |
Array(Map<String,String>) |
资源Tag |
properties |
Map<String,Object> |
资源详细属性 |
用例参考如下:
- 示例1:查询资源聚合器下关机状态的弹性云服务器名称
SELECT domainId, name FROM aggregator_resources WHERE provider = 'ecs' AND type = 'cloudservers' AND properties.status = 'SHUTOFF'
- 示例2:查询资源聚合器下特定规格的云硬盘
SELECT * FROM aggregator_resources WHERE provider = 'evs' AND type = 'volumes' AND properties.size = 100
- 示例3:资源聚合器下对象存储桶模糊查询
SELECT * FROM aggregator_resources WHERE provider = 'obs' AND 'type' = 'buckets' AND name LIKE '%figure%'
- 示例4:查询每个聚合源账号下数量大于100的资源类型
WITH counts AS ( SELECT region_id, provider, type, count(*) AS number FROM aggregator_resources GROUP BY domain_id, provider, type ) SELECT * FROM counts WHERE number > 100
查询语句的详细介绍,请参见ResourceQL语法。