首页 / 资讯中心 / 文章详情

Argus API开发者指南:基于/api/v1/接口构建自定义SOC集成的完整教程

Argus API开发者指南:基于/api/v1/接口构建自定义SOC集成的完整教程 ★ FEATURED ARTICLE
【免费下载链接】Argus-Agentic-SOC-PlatformAn open source AI-native agentic SOC platform项目地址https://gitcode.com/gh_mirrors/ar/Argus-Agentic-SOC-Platform点击查看免费下载Argus 是一个开源的 AI 原生 Agentic SOC安全运营中心平台。本文是面向初学者的 Argus API 开发者指南手把手教你基于/api/v1/REST 接口完成认证、调用告警/工单/工作流模块并通过 Webhook 接口把外部安全数据自动接入 Argus SOC 平台。一、先看懂Argus/api/v1/接口的整体结构 Argus 采用前后端分离架构后端为 Django Django REST FrameworkDRF前端为 Next.js。所有业务接口统一挂载在/api/v1/前缀下返回标准 DRF JSON时间均为 UTC。完整的路由映射见 backend/siem_project/urls.py接口清单可参考官方文档 docs/api-overview.md。核心模块一览摘自 docs/api-overview.md模块前缀能做什么账号与认证/api/v1/accounts/登录、注册、用户/组、RBAC告警/api/v1/alerts/告警列表、看板指标、同步工单/api/v1/tickets/工单 CRUD、状态流转、SLA 指标资产/api/v1/cmdb/资产清单、审计日志、导出工作流/api/v1/workflows/SOAR 剧本定义与执行记录外部接口/api/v1/interfaces/Webhook / API 数据接入AI 助手/api/v1/ai-assistant/对话、MCP 协议、技能管理二、最快上手获取 Token 并发起第一个请求 Argus 使用DRF Token Authentication详见 backend/siem_project/token_auth_middleware.py。获取 Token 只需一步curl -X POST http://localhost:8000/api/v1/accounts/auth/login/ \ -H Content-Type: application/json \ -d {username: your-user, password: your-password}登录成功返回{token: xxxx, user: {...}}实现见 backend/accounts/views.py。之后所有请求带上请求头即可Authorization: Token 你的token 小提醒注册接口/api/v1/accounts/auth/register/同样会直接返回 Token若账号开启了 OTP 登录则需走/api/v1/accounts/auth/otp/verify/验证后获取 Token。三、常用/api/v1/模块调用示例 大多数列表接口支持查询参数过滤与分页例如告警列表curl -H Authorization: Token token \ http://localhost:8000/api/v1/alerts/list/?page1page_size20severitycritical工单是 SOC 处理闭环的核心常用端点包括GET /api/v1/tickets/列出工单支持按创建时间等参数过滤见 backend/tickets/urls.pyPOST /api/v1/tickets/{ticket_number}/update_status/更新工单状态POST /api/v1/tickets/{ticket_number}/resolve/解决工单GET /api/v1/tickets/sla/查询 SLA 指标资产侧还可以用GET /api/v1/cmdb/assets/?searchweb-01检索资产或用GET /api/v1/cmdb/assets/export/?file_formatxlsx直接导出 Excel方便与外部资产库对账。四、进阶用 Webhook 接口把外部数据接入 Argus 这是构建自定义 SOC 集成最有价值的部分。Argus 的Workflow Interfaces模块允许你注册一个外部端点外部系统只要 POST 数据过来即可自动触发绑定到该端点的 webhook 工作流实现见 backend/workflow_interfaces/views.py。1. 注册接口端点curl -X POST http://localhost:8000/api/v1/interfaces/endpoints/ \ -H Authorization: Token token -H Content-Type: application/json \ -d {name: EDR-Ingest, interface_type: webhook}保存时系统会自动生成secret_token见 backend/workflow_interfaces/models.py并返回端点的 UUID。2. 外部系统推送数据curl -X POST http://localhost:8000/api/v1/interfaces/webhooks/endpoint_id/ \ -H X-Interface-Token: secret_token \ -H Content-Type: application/json \ -d {source: edr, event: ransomware_detected}Token 有三种传递方式X-Interface-Token请求头、URL 查询参数token、或请求体中的token字段。成功接入后返回202并包含被触发的工作流执行记录。3. 可选启用 HMAC-SHA256 签名增强安全为端点配置hmac_secret后每次请求需额外携带请求头说明X-Interface-Timestamp请求时刻UTC 秒级时间戳5 分钟有效窗口X-Interface-Signaturesha256 HMAC-SHA256({timestamp}. 请求体, keyhmac_secret)五、对接 AI 助手MCP 接口速览 Argus 内置 AI Assistant 与 MCP 网关全部走/api/v1/POST /api/v1/ai-assistant/chat/发起安全对话POST /api/v1/mcp标准 MCP JSON-RPC 入口工具定义见 backend/ai_assistant/mcp_protocol_views.pyGET /api/v1/mcp/tools查看可用工具清单如ticket_context、ticket_search_similar_cases、cmdb_asset_lookupGET /api/v1/mcp/ticket-context/{ticket_number}按工单号拉取上下文通过 MCP 工具你的自定义 Agent 可以直接调用 Argus 的工单检索、CMDB 资产查询等能力实现“外部 AI Argus SOC 数据”的联动。六、生产部署与安全最佳实践 ✅前端代理Next.js 会把/api/v1/*请求转发到后端frontend/src/app/api/v1/[...path]/route.ts生产环境可通过BACKEND_ORIGIN环境变量指向真实后端地址。配置参考所有关键环境变量数据库、TICKETS_API_TOKEN、PREFECT_WORKER_TOKEN等都有示例见 env.example。安全建议摘自 docs/architecture.mdSECRET_KEY用环境变量注入、生产启用 HTTPS、用最小权限账号签发 Token、对 Webhook 端点开启 HMAC 签名。调试技巧后端 500 多为数据库迁移不一致可运行python manage.py showmigrations排查。小结目标关键接口拿 TokenPOST /api/v1/accounts/auth/login/查告警GET /api/v1/alerts/list/操作工单POST /api/v1/tickets/{ticket_number}/update_status/接入外部数据POST /api/v1/interfaces/webhooks/{endpoint_id}/AI 联动POST /api/v1/mcpMCP JSON-RPC掌握以上五个步骤你就完成了从认证到数据接入的 Argus API 自定义集成闭环。更多端点细节请查阅 docs/api-overview.md 与 docs/architecture.md开始构建属于你自己的 SOC 自动化流水线吧赞分享【免费下载链接】Argus-Agentic-SOC-PlatformAn open source AI-native agentic SOC platform项目地址https://gitcode.com/gh_mirrors/ar/Argus-Agentic-SOC-Platform点击查看免费下载相关推荐为Tokei贡献代码从零添加一种新语言定义的完整实战教程为Tokei贡献代码从零添加一种新语言定义的完整实战教程 Tokei 是一款用 Rust 编写的快速代码统计工具能秒级统计项目中每种语言的代码行数、注释行数CLI开发工具Bagisto API开发终极指南构建自定义电商应用接口的完整教程Bagisto API开发终极指南构建自定义电商应用接口的完整教程 Bagisto是一个基于Laravel的开源电商平台为开发者提供了强大的API接口系统。电商后端MinPy自定义操作符开发扩展框架功能的完整指南MinPy自定义操作符开发扩展框架功能的完整指南 MinPy作为一款提供NumPy接口的混合后端执行框架允许开发者通过自定义操作符扩展其核心功能。本教程将带创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
阅读完成 · 觉得有帮助?
咨询建站