APIClarity 开源项目教程
1. 项目介绍
APIClarity 是一个开源的 API 安全工具,旨在捕获和分析 API 流量,测试 API 端点,重建 OpenAPI 规范,并识别 API 安全风险。它作为一个 pod 部署在 Kubernetes 集群中,通过分析 API 流量来发现潜在的安全风险。APIClarity 的主要功能包括自动重建 OpenAPI 规范、检测影子 API 和僵尸 API、检测 Broken Function-Level Authorization (BFLA) 等。
2. 项目快速启动
2.1 安装 Helm 仓库
首先,添加 APIClarity 的 Helm 仓库:
helm repo add apiclarity https://openclarity.github.io/apiclarity
2.2 保存默认的 Helm 值
保存 APIClarity 的默认 Helm 值到 values.yaml 文件中:
helm show values apiclarity/apiclarity > values.yaml
2.3 更新 values.yaml 文件
根据你的需求更新 values.yaml 文件,配置所需的流量源。
2.4 使用 Helm 安装 APIClarity
使用 Helm 安装 APIClarity:
helm install --values values.yaml --create-namespace apiclarity apiclarity/apiclarity -n apiclarity
2.5 端口转发
进行端口转发以访问 APIClarity UI:
kubectl port-forward -n apiclarity svc/apiclarity-apiclarity 9999:8080
2.6 访问 APIClarity UI
打开浏览器访问 APIClarity UI:
http://localhost:9999/
3. 应用案例和最佳实践
3.1 案例一:使用 APIClarity 监控 Istio 服务网格
假设你已经在 Kubernetes 集群中安装了 Istio 服务网格,并希望使用 APIClarity 来监控 API 流量。你可以按照以下步骤进行配置:
- 确保 Istio 1.10+ 已安装并运行在你的集群中。
- 按照快速启动中的步骤安装 APIClarity。
- 在
values.yaml文件中启用 Istio 服务网格的流量源。
3.2 案例二:使用 APIClarity 监控 Kong API 网关
如果你使用 Kong API 网关来管理你的 API,你可以使用 APIClarity 来监控通过 Kong 的 API 流量。配置步骤如下:
- 在
values.yaml文件中启用 Kong 流量源。 - 运行安装命令并配置 Kong 插件。
4. 典型生态项目
4.1 Istio
Istio 是一个开源的服务网格,APIClarity 可以与 Istio 集成,通过安装 WebAssembly (WASM) 过滤器来捕获内部 API 流量。
4.2 Kong API 网关
Kong API 网关是一个流行的开源 API 网关,APIClarity 可以通过插件与 Kong 集成,监控通过 Kong 的 API 流量。
4.3 OpenTelemetry
OpenTelemetry 是一个开源的观测框架,APIClarity 可以通过 OpenTelemetry 收集器来接收外部 API 流量,并进行分析。
通过这些集成,APIClarity 可以提供全面的 API 安全监控和分析能力。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0214
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0138
uni-appA cross-platform framework using Vue.jsJavaScript08
GLM-5.2智谱开源 GLM-5.2,这是针对长文本任务的最新旗舰模型。相较于前代产品 GLM-5.1,它在长文本任务处理能力上实现了显著飞跃,并且首次在稳定的 100 万 token 上下文中提供这一能力。Jinja00
SwanLab⚡️SwanLab - an open-source, modern-design AI training tracking and visualization tool. Supports Cloud / Self-hosted use. Integrated with PyTorch / Transformers / LLaMA Factory / veRL/ Swift / Ultralytics / MMEngine / Keras etc.Python00
tiny-universe《大模型白盒子构建指南》:一个全手搓的Tiny-UniverseJupyter Notebook03