CRM、OA、工单系统如何安全接入智能体?从一个物业工单 Demo 看 API 设计

简介: 业务系统如何对接智能体?API 接入的安全边界与实战方法

很多团队接入智能体时,第一反应是:
用户说一句话,智能体理解后,直接调用 CRM、OA 或工单系统 API。

这个思路在 Demo 阶段看起来很顺,但一旦进入真实业务环境,马上会遇到几个问题:
用户是否真的有权限执行这个动作?
当前用户属于哪个租户?
工单号是否属于当前租户?
“查询工单”和“修改工单”是否应该使用同一个权限?
模型生成的参数是否符合接口 Schema?
如果模型误把“删除”理解成“查询”,谁来承担风险?
请求重复提交时,会不会重复创建工单?
因此,智能体接入业务系统的关键,不是先把 API 调通,而是先建立一层安全控制。
ScreenShot_2026-08-04_150946_857.png

一、推荐的系统架构
一个相对稳妥的接入链路可以拆成五层:
CRM/OA/工单系统
|
业务系统后端或 API Gateway
|
身份、租户、权限校验
|
智能体安全预检
|
人工确认或受控工具调用
智能体不应该直接持有业务系统管理员 Token,也不应该把用户自然语言直接拼接成 API 请求。
更合理的做法是:
业务系统接收用户请求;
后端提取用户身份、租户和业务上下文;
将结构化字段传给智能体;
智能体只负责理解、检查和生成安全建议;
由业务后端决定是否继续调用真实 API;
高风险操作进入人工确认流程。
Haoee 在这里适合作为公网 B 端智能体运营平台,用于创建、管理、发布和持续运营智能体。它不是业务系统的 API 网关,也不应该被描述成普通的模型接口封装层。真实生产接入仍然需要客户自身的后端、API Gateway 或受控 MCP 服务完成。
ScreenShot_2026-08-04_151940_395.png

二、实际搭建的 Demo
本次搭建的案例是“物业工单接口安全校验助手”。
物业场景很适合演示接口安全,因为工单系统同时存在多种操作:
查询工单;
创建工单;
修改工单状态;
派工;
删除工单;
导出工单;
修改用户权限。
这些动作的风险等级并不相同。

  1. 输入字段
    Demo 中设计了以下字段:
    {
    "tenant_id": "tenant-demo-001",
    "user_id": "user-1001",
    "user_role": "物业主管",
    "ticket_id": "T20260804001",
    "action": "查询",
    "reason": "查看待处理报修",
    "page": 1,
    "page_size": 10,
    "filters": {
    "status": "待处理"
    }
    }
    这样设置的原因是:不要让模型只从一句自然语言里猜身份和权限。
    例如:
    帮我看一下最近的报修单。

这句话缺少租户、用户身份、查询范围和分页条件。智能体可以提醒信息不足,但不能自行猜测参数。

  1. 接口安全预检节点
    当前 Demo 只设置了一个“接口安全预检节点”,主要完成四类判断:
    第一,识别动作类型。
    将请求识别为查询、创建、修改、派工、删除、导出或权限变更。
    第二,检查必要字段。
    至少检查:
    tenant_id
    user_id
    user_role
    ticket_id
    action
    第三,区分读操作和写操作。
    查询类动作可以进入下一步人工确认;修改、删除、派工、导出等动作默认提高风险等级。
    第四,给出安全状态。
    输出只允许使用三种结论:
    允许进入人工确认;
    待补充必要信息;
    阻断当前操作。
    节点明确要求:不执行真实接口调用,不生成真实工单号,不返回虚假的系统结果。
    ScreenShot_2026-08-04_152010_813.png

三、为什么没有直接绑定外部 API
这个 Demo 当前没有绑定真实 MCP Server,也没有配置 Skills 和知识库,原因不是这些能力不重要,而是本次演示的重点是安全预检。
如果一开始就连接真实工单系统,容易把两个问题混在一起:
智能体是否能正确理解请求;
业务系统是否允许执行请求。
交付伙伴做 Demo 时,应该先把安全门禁跑通,再接入真实系统。
生产版本可以继续增加:
只读工单查询 MCP;
工单创建 Skill;
派工接口;
状态修改接口;
人工确认节点;
审计日志;
幂等键和调用流水号。
但每个工具都必须有明确 Schema,而不是让模型自由填写参数。
四、API 接入的安全注意事项

  1. 鉴权不能只依靠提示词
    提示词里写“只有管理员可以删除工单”,并不能代替系统权限校验。
    真实系统仍需使用:
    OAuth 2.0;
    JWT;
    mTLS;
    HMAC 签名;
    API Gateway 鉴权;
    租户级权限校验。
    智能体输出的“允许”,只能表示“从语义和字段上看可以进入下一步”,不能等同于系统已经授权。
  2. 业务权限必须由后端最终判断
    模型可以识别“用户想删除工单”,但不能自行决定用户是否有删除权限。
    后端需要再次校验:
    当前用户是否存在;
    用户是否属于当前租户;
    角色是否允许该动作;
    工单是否属于当前租户;
    工单当前状态是否允许修改。
  3. 写操作必须设计人工确认
    以下动作建议默认人工确认:
    修改工单状态;
    派工;
    删除;
    批量导出;
    修改客户信息;
    修改权限;
    批量创建数据。
    人工确认页面应展示:
    操作人;
    租户;
    动作;
    目标对象;
    参数;
    影响范围;
    是否可撤销;
    请求流水号。
  4. 工具参数必须使用 Schema
    不要让模型生成:
    请调用接口完成这个操作
    而应定义结构化参数:
    {
    "tenant_id": "string",
    "ticket_id": "string",
    "action": "query|create|update|assign|delete",
    "page": "integer",
    "page_size": "integer"
    }
    同时在服务端校验枚举值、长度、格式、范围和对象归属。
  5. 处理重复请求
    创建和修改类接口必须考虑幂等。
    例如用户重复点击两次,或智能体因为超时重试两次,都不能创建两张相同工单。
    建议使用:
    idempotency_key;
    业务请求流水号;
    服务端去重;
    超时后查询原请求状态;
    限制自动重试范围。
    ScreenShot_2026-08-04_152316_610.png

五、当前 Demo 的真实测试状态
测试问题包括:
提供完整租户、用户、角色、工单号和查询范围,申请查询;
缺少租户 ID、用户 ID 和工单号,只提出查询请求;
普通客服尝试修改工单状态并派工。
三次测试均未进入模型推理,平台返回:
未找到匹配的 LLM 接口路由:path=/v1/responses
因此当前只能确认:
智能体配置已保存;
智能体已发布;
测试问题已准备;
端到端安全判定尚未验证。
这也是交付中必须保留的记录。不能因为智能体已经发布,就对客户说“接口安全校验已经跑通”。
六、总结
业务系统接入智能体,建议遵循:
先身份校验
再租户校验
再权限校验
再参数校验
再风险分级
最后人工确认或调用接口
值得注意的是这虽然可以帮助交付伙伴完成智能体的搭建、管理、发布和持续运营。但真正连接客户 CRM、OA、工单系统时,还需要结合客户后端、API Gateway、MCP Server 和审计系统完成完整交付。

相关文章
|
1月前
|
人工智能 前端开发 小程序
从知识库问答到企业系统集成:智能体接入客户域名的工程化实践
如何让用户通过客户自己的域名访问智能体?如何让智能体读取或操作客户内部系统?
230 2
|
22天前
|
Web App开发 人工智能 安全
2026 上半年智能体AI Agent趋势报告 GitHub、PH、HF 三端全网数据调研
《AI Agent 市场趋势分析报告(2026 H1)》基于GitHub、Product Hunt等开源数据,深度剖析AI Agent生态:占比15.64%,成增长最快类别;GitHub与Vercel为首选分发平台;设计、营销、编程等垂直场景落地加速;“软件即数字员工”范式兴起,MCP协议与多Agent蜂群成新基础设施。
2026 上半年智能体AI Agent趋势报告 GitHub、PH、HF 三端全网数据调研
|
29天前
从一个智能体到多个客户副本:模板复制的工程化方法
智能体项目一旦进入交付阶段,问题会从“能不能搭出来”转向“能不能稳定交付给多个客户”。
191 3
|
22天前
|
人工智能 缓存 自然语言处理
多智能体不是多开几个 Agent:如何解决分工冲突、任务死锁和结果矛盾?
多智能体协同的核心不是“让更多模型一起工作”,而是建立任务、状态、权限和结果仲裁机制。
220 3
|
28天前
|
人工智能 自然语言处理 机器人
电话语音机器人实时打断怎么测?Barge-in延迟、误触发与状态恢复测试方法
实时打断不只是“用户说话后机器人停止播放”。完整的Barge-in测试还要验证打断识别、TTS停止、语义接收、旧状态撤销和任务恢复。本文给出测试链路、用例设计、日志结构与统计脚本。
207 1
|
1月前
|
数据采集 人工智能 数据挖掘
企业有多个AI应用,员工却不知道怎么用:一次AI工作助理路由改造实践
当一个任务能够被拆解、调用、评估、人工确认并持续改进时,智能体才真正从Demo进入业务。
186 1
|
24天前
|
人工智能 缓存 编解码
阿里云大模型优惠:首购低至4.5折:可抵扣千问 3.5,支持千问、万相等全量模型
为了降低用户体验顶尖模型的门槛,活动特别推出了Qwen3.7-Max模型的限时5折优惠。该优惠覆盖了输入、输出、输入(Batch Chat)、输出(Batch Chat)、显式缓存创建、显式缓存命中这6个关键计费维度,全方位降低了调用成本。此外,用户还可以免费领取100万Tokens的试用额度,深度体验智能体能力的广度与深度,感受其出色的跨框架泛化能力,让复杂任务的自动化处理变得更加高效、流畅。
|
25天前
|
人工智能 运维 自然语言处理
Geo专家于磊解析:GEO优化的基础、提升与突破
本文揭示生成式AI正重塑信息获取方式:用户不再点击链接,而是直接获取合成答案。GEO(生成式引擎优化)由此诞生——它不优化网页排名,而优化内容被AI采信、引用与复述的能力。Geo专家于磊提出“基础—提升—突破”三层框架,强调可信前提、可引用性、结构清晰是地基,数据支撑与答案岛是杠杆,实体网络与全域信任方达上限。
105 1

热门文章

最新文章