Leina 博客 团队 AI

AI Agent 如何安全连接业务应用?认识 Leina 的 OpenConnector 网关

了解 Leina 如何通过自研 OpenConnector 鉴权网关连接业务应用,区分 provider、action 与账号权限,并用一次只读任务验证连接和数据范围。

任务卡片经过一个网关,沿不同路径连接文档、日历、表格与数据库

概念插图:任务通过鉴权网关访问经过授权的业务应用。

让 AI Agent 整理会议记录、汇总客户跟进或更新业务表格,前提是它能够访问对应系统。团队需要回答的也很具体:连接哪个账号,能执行什么操作,可以访问哪些记录?

Leina 通过自研 OpenConnector 安全鉴权网关连接业务应用。网关为应用调用提供鉴权环节,实际可用范围还取决于连接器支持、业务账号权限和团队设置。

选择连接时,可以从一个明确任务反推所需能力,再配置相应授权。这样更容易验证接入结果,也能避免为了一个小任务开放过大的访问范围。

1,500 多个 provider 和 16,000 多个 action 意味着什么?

按本文发布时的产品能力口径,OpenConnector 网关支持超过 1,500 个服务提供方(provider),覆盖超过 16,000 项操作(action)。这些数字说明可连接服务和操作的覆盖范围,具体应用能力以当前目录与连接器支持为准。

概念表示什么核对的问题
Provider一个可连接的服务团队使用的业务软件是否在目录中?
Action连接器提供的一项操作是否支持本次任务需要的查询、创建或更新?
账号权限授权账号在该服务中的访问范围账号能否访问目标工作区、文件夹或记录?

支持某个 provider,不意味着该服务的每个功能都能调用;支持某个 action,也不意味着当前账号能操作全部数据。例如,连接器可能支持查询文档,但已连接账号无权访问某个项目文件夹。

这些因素要结合起来看。应用数量提供选择,正确的连接与授权决定任务能否完成。

OpenConnector 在连接过程中承担什么角色?

Leina 的业务应用访问经过 OpenConnector 鉴权网关。团队通过连接流程授权账号,并结合成员、群组与应用侧权限限定可用范围。

从任务到经过授权的调用

flowchart TB
  accTitle: 从任务到经过授权的调用
  accDescr: Leina 的任务通过 OpenConnector 鉴权网关使用已授权账号提供的应用操作;可用操作和数据范围都需要核对。
  T(明确的业务任务):::channel
  T --> L(Leina):::agent
  L --> G("OpenConnector
鉴权网关"):::gateway
  G --> A("已授权账号
可访问的数据"):::resource
  G --> O("连接器支持的
业务操作"):::resource
业务调用关系示意:任务需要受支持的操作,也需要适当的账号授权。

这个架构让鉴权成为应用调用的一部分。配置时仍需要明确哪些连接可以使用、账号具有什么权限,以及结果会发给谁。仅有网关这个组件,并不能代替实际的授权配置。

账号授权应通过连接流程完成,不需要把账号密码或原始访问令牌粘贴到聊天消息中。关于账号范围和任务边界,可参阅权限与数据访问。

从一个任务反推需要的连接

以“整理本周项目会议记录”为例,接入前可以先写下四项内容:

  • 来源: 记录保存在什么应用、哪个项目或文件夹中。
  • 操作: 本次只需要搜索和读取,不需要更新或删除记录。
  • 范围: 项目名称、时间区间,以及需要提取的字段。
  • 输出: 结果发到哪里,需要保留哪些来源链接。

接着在 Apps 目录中找到对应服务,核对所需操作,再通过 Connections 连接适当的账号。如果账号本身无法访问目标资料,单纯修改任务提示词并不能解决授权问题。

连接后可以提出一个便于核对的请求:

从已连接的文档应用中查找「项目 A」本周的会议记录。输出会议日期、确定事项、负责人和源文档链接。只读取项目 A 的资料,不修改原文档;没有找到的信息标记为缺失。

先核对一次结果,再把它扩展为固定工作流程。重点检查源文档是否正确、时间范围是否准确、缺失项是否被如实说明。

从读取扩展到写入时,需要重新核对

读取、创建、更新和删除是不同的操作需求。能够生成一份正确的总结,不代表已经获得修改源系统的权限。

如果下一步是把会议事项写入业务表格,应再次核对连接器是否支持写入、账号是否有相应权限,以及目标表格和字段。可以先要求:

根据刚才核对过的会议事项,生成待写入的表格行,列出目标表格、字段和内容。先返回草稿,不执行写入。

审核时确认目标、受影响记录和字段值,再明确提出写入指令。这里描述的是使用流程建议,不代表每个连接器都提供相同的审批、草稿或回滚功能。

为什么连接成功后仍然拿不到数据?

可以按下面的顺序定位问题:

  1. 服务与操作是否匹配。 目标 App 是否支持本次任务所需的 action?
  2. 账号是否正确。 是否连接了拥有目标记录访问权的业务账号?
  3. 范围是否正确。 工作区、项目、文件夹或记录是否属于该账号可访问的范围?
  4. 团队权限是否允许。 当前成员或群组是否被允许使用这项连接和操作?
  5. 连接是否仍可用。 如果界面提示授权失效或连接异常,按当前连接流程处理。

不要把“返回了部分结果”直接当作数据完整。对重要汇总,保留来源链接并核对预期覆盖范围;遇到无法定位的问题,可联系支持,提供应用名称和错误情况,不附带凭证。

把连接范围交代清楚,任务才容易验证

丰富的连接能力让 Leina 能够配合更多现有业务工具。真正开始使用时,先明确一个任务,核对 action、账号和数据范围,再从只读任务验证结果。

如果团队准备让多个人或多个群一起使用这些连接,继续阅读如何分配成员与群组权限。聊天入口的接入关系见一个 Agent,多个聊天平台;产品整体介绍见Leina 总览。