← 返回 Skills 市场
jupiter-19

huaweicloud-config-helper

作者 Jupiter-19 · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
101
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install huaweicloud-config-helper
功能描述
华为云Config配置审计服务的专业助手,提供全局资源查询、资源配置查询、资源Schema查询、SQL条件查询以及合规规则查询能力。当用户需要查询华为云资源、进行资源审计、检查配置合规性、盘点云上资产、分析资源关系、查询特定资源状态、验证资源配置、或需要通过SQL进行复杂资源查询时,必须使用此技能。即使未明确提及...
使用说明 (SKILL.md)

\r \r

Config 配置审计服务助手\r

\r 使用scripts中的脚本,通过Config服务,查询云上资源情况、资源配置、资源schema、云服务的预置合规规则。具体有如下能力:\r \r

  • 查询资源概览;\r
  • 查询资源Schema;\r
  • 按条件通过SQL查询资源;\r
  • 资源合规性分析:包含但不限于从以下维度分析资源配置,'为事件响应做好准备', '优化成本', '身份管理', '保护数据完整性', '保护配置', '加密传输中的数据', '加密静态数据', '建立日志记录和监控', '强制执行最低权限', '提高可用性', '提高韧性', '管理机密', '管理漏洞', '管理规格', '限制网络访问', '资源管理';\r \r

前置条件\r

\r

环境变量配置\r

\r 在使用此技能前,需要确保以下环境变量已正确配置。这些是访问华为云Config服务的必要凭证。\r \r 必需的环境变量:\r \r

  • HUAWEICLOUD_AK - 访问密钥(Access Key)\r
  • HUAWEICLOUD_SK - 秘密密钥(Secret Access Key)\r \r 重要提示:\r \r
  • 这些环境变量包含敏感信息,检查配置时严禁在控制台打印\r
  • 用户配置的AK仅需要Config ReadOnlyAccess的权限,用户无需过度授权\r \r 配置步骤:\r \r
  1. Windows PowerShell 配置:\r
    $env:HUAWEICLOUD_AK="your_access_key"\r
    $env:HUAWEICLOUD_SK="your_secret_key"\r
    ```\r
    

\r 2. 或通过系统环境变量配置:\r - Windows: 在"系统属性" > "环境变量"中设置\r - Linux/Mac: 在 ~/.bashrc~/.zshrc 中添加 export 命令\r \r 3. 验证配置:\r

# 验证但不打印敏感信息\r
if (-not $env:HUAWEICLOUD_AK) { Write-Error "HUAWEICLOUD_AK 未配置" }\r
```\r
\r
### 依赖安装\r
\r
确保已安装以下Python依赖:\r
\r
```bash\r
pip install huaweicloudsdkconfig huaweicloudsdkcore\r
```\r
\r
## 工作流程\r
\r
### 资源查询\r
\r
#### 1. 查询资源概览\r
\r
获取华为云上所有资源的汇总统计信息。\r
\r
**命令:**\r
\r
```shell\r
python scripts/query_Config_resource_summary.py\r
```\r
\r
**参数说明:**\r
\r
- `--provider`: 可选,表示只查询某个云服务的资源概览, 示例:\r
 - `obs`\r
 - `vpc`\r
\r
- `--region_id`: 可选,表示只查询某个区域的资源概览, 示例:\r
 - `cn-north-4`: 北京四\r
 - `cn-east-3`: 上海一\r
 - `global`: 全局\r
\r
\r
**输出格式:**\r
\r
- JSON格式,包含各区域、各服务类型的资源数量统计\r
- 示例:\r
```json\r
[\r
{\r
 "provider": "vpc",\r
 "type": "vpcs",\r
 "region_id": "cn-north-1",\r
 "cnt": 5\r
},\r
{\r
 "provider": "kms",\r
 "type": "keys",\r
 "region_id": "cn-north-4",\r
 "cnt": 2\r
},\r
{\r
 "provider": "iam",\r
 "type": "users",\r
 "region_id": "global",\r
 "cnt": 5\r
}\r
]\r
```\r
\r
**使用场景:**\r
\r
- 快速了解云上资源分布\r
- 识别资源密集的区域和服务\r
- 为资源审计、成本优化、安全配置等场景提供基础数据\r
\r
#### 2. 查询资源Schema\r
\r
获取指定资源类型的详细结构定义,包括所有可用字段及其类型。\r
\r
**命令:**\r
\r
```shell\r
python scripts/query_Config_resource_schema.py --resource_type=obs.buckets\r
```\r
\r
**参数说明:**\r
\r
- `--resource_type`: 资源类型标识符,格式为 `provider.type`, 示例:\r
 - `obs.buckets`: 对象存储桶、OBS桶;\r
 - `ecs.cloudservers`: 云服务器、虚机、ECS;\r
 - `iam.users`: IAM用户;\r
 - `vpc.securityGroups `: VPC安全组;\r
 - `fgs.functions`: 函数工作流、函数、FunctionGraph;\r
\r
**输出格式:**\r
\r
- JSON格式,包含资源的完整Schema定义\r
- 包含字段名称、类型、描述等信息\r
\r
**使用场景:**\r
\r
- 了解资源结构和可用字段\r
- 编写SQL查询前确定查询字段\r
- 理解资源的配置属性\r
\r
#### 3. 按条件查询资源(高级SQL查询)\r
\r
通过SQL语句进行复杂的资源查询,支持多条件筛选、聚合分析等。\r
\r
**支持的查询字段:**\r
\r
- 基础字段: `id`, `name`, `provider`, `type`, `region_id`, `project_id`, `created`, `updated`, `tag`\r
- 扩展字段: `properties` (JSON对象,包含具体资源配置,每种资源类型的结构与资源schema保持一致)\r
\r
**SQL语法特点:**\r
\r
- 只能查询 `resources` 表\r
- 支持标准SQL语法: SELECT, WHERE, GROUP BY, ORDER BY\r
- 支持数组操作: `transform`, `filter`, `any_match`, `contains`\r
- 支持日期函数: `date_diff`, `date_parse`\r
-\r
\r
**重要提示:**\r
\r
- 使用前请先查询资源Schema了解可用字段\r
- 参考 `scripts/sql-example.json` 查看丰富的查询示例\r
- SQL语句需要用双引号包裹,内部字符串使用单引号\r
- 如果没有查询到资源,查询资源概览已确认云上资源分布\r
\r
**示例1: 查询特定区域的所有资源**\r
\r
首先确定查询需求,生成SQL语句:\r
\r
```sql\r
select id, name, provider, type, region_id, properties\r
from resources\r
where region_id = 'cn-north-4'\r
```\r
\r
执行查询:\r
\r
```shell\r
python scripts/query_Config_resource_by_sql.py --sql="select id, name, provider, type, properties from resources where region_id = 'cn-north-4'"\r
```\r
\r
**示例2: 查询IAM用户的密码强度**\r
\r
步骤1: 查询iam.users的Schema了解可用字段\r
\r
```shell\r
python scripts/query_Config_resource_schema.py --resource_type=iam.users\r
```\r
\r
步骤2: 基于Schema发现密码相关字段为 `pwd_status` 和 `pwd_strength`\r
\r
步骤3: 编写SQL查询\r
\r
```sql\r
select id, name, provider, type, properties.pwd_status, properties.pwd_strength\r
from resources\r
where provider = 'iam'\r
and type = 'users'\r
```\r
\r
步骤4: 执行查询\r
\r
```shell\r
python scripts/query_Config_resource_by_sql.py --sql="select id, name, provider, type, properties.pwd_status, properties.pwd_strength from resources where provider = 'iam' and type = 'users'"\r
```\r
\r
**更多SQL示例:**\r
\r
- 查询运行中的ECS: `SELECT * FROM resources WHERE provider='ecs' AND type='cloudservers' AND properties.status='ACTIVE'`\r
- 查询未加密的EVS: `SELECT * FROM resources WHERE provider='evs' AND type='volumes' AND NOT properties.encrypted`\r
- 按区域统计资源数: `SELECT region_id, count(*) FROM resources GROUP BY region_id`\r
- 更多案例: 请学习 `scripts/sql-example.json` 中的案例\r
\r
**输出格式:**\r
\r
- JSON数组,每条记录代表一个匹配的资源\r
- 包含查询中指定的所有字段\r
\r
### 合规规则查询\r
\r
#### 查询云服务的预置合规规则\r
\r
获取华为云Config服务的预置合规规则列表,用于资源合规性检查。\r
\r
**命令:**\r
\r
查询特定云服务的合规规则:\r
\r
```shell\r
python scripts/query_Config_builtin_rule.py --keyword=obs\r
```\r
\r
查询所有合规规则(限制返回数量):\r
\r
```shell\r
python scripts/query_Config_builtin_rule.py --limit=10\r
```\r
\r
**参数说明:**\r
\r
- `--keyword`: 过滤关键字,匹配规则名称或描述中包含该关键字的规则\r
- `--limit`: 限制返回结果数量,默认为10\r
\r
**输出格式:**\r
\r
- JSON数组,每个元素包含规则ID、名称、描述等信息\r
- 示例:\r
```json\r
{\r
 "name": "obs-bucket-https-only",\r
 "display_name": "OBS桶必须使用HTTPS",\r
 "description": "检查OBS桶是否强制使用HTTPS协议访问"\r
}\r
```\r
\r
**使用场景:**\r
\r
- 了解可用的合规规则\r
- 选择合适的规则进行合规性检查\r
- 制定资源合规策略\r
\r
## 华为云场景知识\r
\r
以下为华为云云服务的场景化知识,在分析资源的安全配置时,需要考虑以下信息:\r
\r
**VPC默认安全组**\r
\r
VPC默认安全组(名称为default)为系统内置资源,不可删除。为提升安全性,将所有出方向、入方向的安全组规则停用或改为Deny的操作权限。\r
\r
**AK/SK安全配置**:\r
\r
华为云的Access Key(AK)为20位随机字符串(例如HPUAAJJAC9GJZDIQCTHN),Secret Key(SK)为40位随机字符串。在资源配置中,仅允许在iam.users字段中包含AK信息,严禁在任何资源配置中明文存储或传递SK。若检测到SK存在于配置中,则判定为敏感信息泄露风险,需立即整改。\r
\r
**云服务中英文对接关系**\r
\r
| provider | type     | 中文名         | 服务功能                    |\r
|:---------|:---------|:------------|:------------------------|\r
| cts      | trackers | 云审计服务追踪器    | 提供对各种云资源操作记录的收集、存储和查询功能 |\r
| config   | trackers | 配置审计服务资源记录器 | 提供资源配置的持续的审计能力          |\r
\r
## 最佳实践\r
\r
### SQL查询优化\r
\r
1. **使用WHERE条件限制查询范围**\r
 - 总是添加 `region_id` 或其他过滤条件,避免全表扫描\r
 - 示例: `WHERE region_id = 'cn-north-4'`\r
\r
2. **只查询需要的字段**\r
 - 避免使用 `SELECT *`,明确指定需要的字段\r
 - 减少数据传输量,提高查询效率\r
\r
3. **合理使用聚合函数**\r
 - 对于统计需求,使用 `count()`, `sum()` 等聚合函数\r
 - 示例: `SELECT region_id, count(*) FROM resources GROUP BY region_id`\r
\r
### 安全注意事项\r
\r
1. **保护敏感信息**\r
 - 严禁在日志、控制台输出AK/SK等敏感信息\r
 - 使用环境变量存储凭证,不要硬编码在脚本中\r
 - 定期轮换AK/SK\r
 - 仅需`Config ReadOnlyAccess`的权限,用户无需过度授权\r
\r
2. **最小权限原则**\r
 - 为Config服务配置最小必要权限\r
 - 定期审查API访问权限\r
\r
3. **网络安全**\r
 - 确保代理配置正确,通过安全通道访问华为云\r
 - 在生产环境中使用HTTPS\r
\r
### 性能优化建议\r
\r
1**批量查询优于单个查询**\r
\r
- 对于多个资源,使用SQL批量查询而非多次API调用\r
- 利用SQL的JOIN和子查询功能\r
\r
2**合理安排查询时间**\r
\r
- 避免在业务高峰期执行大规模资源查询\r
- 考虑在非工作时间执行资源审计\r
\r
### 数据处理建议\r
\r
1. **结果验证**\r
 - 检查查询结果的完整性\r
 - 验证关键字段的合理性\r
\r
2. **数据格式化**\r
 - 将JSON结果转换为易读格式(如表格)\r
 - 对于大量数据,考虑导出到文件\r
\r
3. **异常处理**\r
 - 注意处理查询失败的情况\r
 - 检查API返回的错误信息\r
\r
## 常见问题(FAQ)\r
\r
### Q1: 提示"认证失败"怎么办?\r
\r
**A:** 检查以下几点:\r
\r
- 确认 `HUAWEICLOUD_AK` 和 `HUAWEICLOUD_SK` 环境变量已正确配置\r
- 验证AK/SK是否有效且未过期\r
- 确认账号有访问Config服务的权限\r
- 检查网络连接和代理配置\r
\r
### Q2: SQL查询返回空结果?\r
\r
**A:** 可能的原因:\r
\r
- 查询条件过于严格,尝试放宽条件\r
- 检查资源类型名称是否正确(区分大小写)\r
- 确认指定区域确实有资源\r
- 先查询资源概览,了解资源分布\r
\r
### Q3: 如何查询特定时间范围内创建的资源?\r
\r
**A:** 使用日期函数:\r
\r
```sql\r
SELECT *\r
FROM resources\r
WHERE created >= '2024-01-01T00:00:00Z'\r
AND created \x3C= '2024-12-31T23:59:59Z'\r
```\r
\r
### Q4: 如何查询没有标签的资源?\r
\r
**A:** 使用 `cardinality` 函数:\r
\r
```sql\r
SELECT *\r
FROM resources\r
WHERE cardinality(tag) = 0\r
```\r
\r
### Q5: 如何处理JSON数组字段的查询?\r
\r
**A:** 使用数组操作函数:\r
\r
- `any_match`: 检查数组中是否存在满足条件的元素\r
- `transform`: 转换数组元素\r
- `filter`: 过滤数组元素\r
\r
示例:\r
\r
```sql\r
SELECT *\r
FROM resources\r
WHERE any_match(properties.securityGroup, x - > x.id = 'xxx')\r
```\r
\r
### Q6: 如何获取资源关系的完整信息?\r
\r
**A:** 建议步骤:\r
\r
1. 先查询主资源(如ECS)的Schema\r
2. 识别关联字段(如 `ExtVolumesAttached`)\r
3. 查询关联资源(如EVS)的Schema\r
4. 编写JOIN查询获取完整信息\r
\r
## 错误处理\r
\r
### 常见错误及解决方案\r
\r
| 错误信息                          | 可能原因         | 解决方案                               |\r
|-------------------------------|--------------|------------------------------------|\r
| `Authentication failed`       | AK/SK配置错误或无效 | 检查环境变量配置,验证AK/SK有效性                |\r
| `Resource not found`          | 资源类型不存在      | 检查资源类型名称,先查询可用资源类型                 |\r
| `SQL syntax error`            | SQL语句语法错误    | 检查SQL语法,参考示例文件                     |\r
安全使用建议
This skill appears to implement what it claims (Huawei Cloud Config queries) and requires your HUAWEICLOUD_AK and HUAWEICLOUD_SK. However, the registry metadata does not declare those sensitive env variables even though SKILL.md and the scripts need them — treat that as suspicious. Before installing or running: (1) only provide least-privilege credentials (prefer an AK/SK with Config read-only or a short-lived credential); (2) run the scripts in an isolated environment or local machine rather than a shared agent with other credentials; (3) review outputs for any accidental exposure of secrets (resource properties can include sensitive fields); (4) verify the pip packages come from the official registry and consider pinning versions; (5) ask the publisher why the registry metadata omits required env vars and request that required credentials be declared explicitly (primaryEnv). If the publisher cannot explain the mismatch, avoid using the skill in sensitive environments.
功能分析
Type: OpenClaw Skill Name: huaweicloud-config-helper Version: 1.0.0 The bundle provides Huawei Cloud resource auditing capabilities but contains a SQL injection vulnerability in `scripts/query_Config_resource_summary.py` due to the use of f-strings to construct SQL queries from unsanitized user input. While the `SKILL.md` documentation includes proactive security instructions for the AI agent to protect sensitive credentials (AK/SK) and recommends the principle of least privilege, the lack of input sanitization in a script that interacts with cloud metadata APIs qualifies as a vulnerability. The tool's core functionality involves executing arbitrary SQL via `scripts/query_Config_resource_by_sql.py`, which is the intended purpose but increases the risk surface if the agent is manipulated.
能力评估
Purpose & Capability
The skill's stated purpose (querying Huawei Cloud Config for resource/schema/SQL/built-in rules) matches the included Python scripts and use of the huaweicloud SDK. Requesting HUAWEICLOUD_AK/HUAWEICLOUD_SK is appropriate for this purpose. However, the registry metadata incorrectly lists no required environment variables while the SKILL.md and code clearly require AK/SK — this inconsistency is unexpected and reduces trust.
Instruction Scope
The SKILL.md instructions stay on-purpose: they instruct the user to set AK/SK, install the huaweicloud SDK packages, and run the supplied scripts to query Config. The scripts only call the Huawei Cloud Config API through the official SDK and return JSON. They do print returned resource data (properties), which may include sensitive configuration fields — this is expected for an auditing tool but should be noted.
Install Mechanism
There is no installer; the skill is delivered as Python scripts and asks the user to pip-install two huaweicloud SDK packages (huaweicloudsdkconfig, huaweicloudsdkcore). These are expected for the stated functionality and are moderate-risk but typical for a cloud SDK client. No downloads from unknown URLs or archive extraction are present.
Credentials
The skill legitimately needs HUAWEICLOUD_AK and HUAWEICLOUD_SK to authenticate to Huawei Cloud. However, the registry metadata claims no required env vars, so the skill is not declaring that it needs sensitive credentials — that's an incoherence. The scripts access only these credentials (no other secrets), and SKILL.md recommends ReadOnlyAccess, which is appropriate, but the missing declaration in metadata is a red flag for supply-chain or packaging issues.
Persistence & Privilege
The skill does not request always:true and has no install spec that writes persistent binaries or changes other skills' configs. It runs on-demand as Python scripts and does not request increased platform privileges.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install huaweicloud-config-helper
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /huaweicloud-config-helper 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
huaweicloud-config-helper 1.0.0 - Initial release providing a professional assistant for Huawei Cloud Config resource and compliance queries. - Supports querying resource overview, resource schema, advanced SQL-based resource queries, and built-in compliance rules. - Offers usage guidance on environment variable setup, dependency installation, and script usage. - Includes best practices, security recommendations, and FAQ for effective resource auditing and compliance analysis. - Enables efficient cloud asset inventory, configuration validation, and policy enforcement scenarios on Huawei Cloud.
元数据
Slug huaweicloud-config-helper
版本 1.0.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

huaweicloud-config-helper 是什么?

华为云Config配置审计服务的专业助手,提供全局资源查询、资源配置查询、资源Schema查询、SQL条件查询以及合规规则查询能力。当用户需要查询华为云资源、进行资源审计、检查配置合规性、盘点云上资产、分析资源关系、查询特定资源状态、验证资源配置、或需要通过SQL进行复杂资源查询时,必须使用此技能。即使未明确提及... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 101 次。

如何安装 huaweicloud-config-helper?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install huaweicloud-config-helper」即可一键安装,无需额外配置。

huaweicloud-config-helper 是免费的吗?

是的,huaweicloud-config-helper 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

huaweicloud-config-helper 支持哪些平台?

huaweicloud-config-helper 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 huaweicloud-config-helper?

由 Jupiter-19(@jupiter-19)开发并维护,当前版本 v1.0.0。

💬 留言讨论