本主题将指导您在 Automation Anywhere 中为模型上下文协议 (MCP) 入站工具设置 OAuth 2.0 身份验证。

实施 OAuth 为第三方 AI 助手与您的 Automation Anywhere 自动化进行交互提供了一种更安全且更稳健的方法,能够维护用户身份并强制执行基于角色的访问控制 (RBAC),而无需用户手动输入凭据。 请按照以下步骤为 MCP 入站工具配置 OAuth 2.0 支持。 该流程包括在 Control Room 和您的第三方 AI 助手(例如,Microsoft Copilot Studio)中进行配置。

先决条件

在配置 OAuth 2.0 支持之前,请确保满足以下要求:

  • 用户许可证: 配置和访问 MCP 工具的用户必须分配有有人值守 Bot Runner 许可证
  • 设备连接: 有人值守 Bot Runner 用户必须连接到 Control Room 中的已注册本地设备。 验证机器人配置是否正确,并且是否可以从 Control Room 成功运行。

所需权限:

  • AI 权限
    • 查看坐席连接: 查看入站和出站工具及连接。
    • 管理坐席连接: 配置和管理入站和出站工具及连接。
  • API 权限生成 API 密钥
  • 机器人权限
    • 查看我的机器人运行我的机器人
    • 确保通过 RBAC 将所需机器人分配给用户角色。 有关更多信息,请参阅 Control Room 中的 RBAC

过程

  1. 使用 OAuth2 服务注册 Control Room 此步骤将 Control Room 注册为受信任的 OAuth 2.0 授权服务器,以便其能够为传入的 MCP 请求签发和验证令牌。 由于 MCP 入站身份验证依赖于 Control Room 本身作为身份授权机构,因此在您创建 OAuth 客户端或连接第三方 AI 助手之前,必须进行此注册。 Control Room 支持用于此注册的标准身份提供商,包括 OIDC(OpenID 连接)和基于 SAML 的身份验证。 如果您的组织已有现有的 IdP,您可以在注册期间将 Control Room 配置为使用该 IdP。
    1. Control Room 中导航至设置
    2. 通过使用您的 Control Room 管理员凭据登录并生成令牌,注册 OAuth 2.0 配置,以验证并注册 OAuth 2.0 服务。 有关更多信息,请参阅 Control Room 中的配置 OAuth 连接
      确认: 注册完成后会出现确认消息。
  2. 创建一个 OAuth 客户端。
    1. 导航到管理 > OAuth 客户端
    2. 单击创建客户端以创建新的客户端。
    3. 输入一个描述性的应用程序名称,例如 MCP 入站客户端
    4. 选择与您的 MCP 客户端部署相匹配的应用程序类型常规网页单页应用程序。 有关应用程序类型以及如何配置 OAuth 客户端的详细信息,请参阅 配置 OAuth 客户端
    5. 可选: 输入描述。
      注: 为 MCP 入站创建 OAuth 客户端时,可以将重定向 URI 字段留空。 重定向 URL 由 MCP 客户端(第三方 AI 助手)在工具配置期间生成,必须稍后在第 5 步中添加。
    6. 单击创建客户端
    创建成功后,系统将生成诸如客户端 ID密钥 ID 等关键信息以及其他必要信息。 请保留这些详细信息以便在下一步中使用。
  3. 在您的第三方 AI 助手中添加 MCP 工具。
    1. 登录到您的第三方 AI 助手,例如 Microsoft Copilot Studio 或 ChatGPT。
    2. 导航到工具部分,并选择添加模型上下文协议 (MCP) 工具的选项。
    3. 输入服务器名称(例如,Automation 360 MCP Server)和描述
    4. 输入服务器 URL。 这是您的 Automation Anywhere Control Room URL,后跟 /mcp(例如,https://your-control-room-url/mcp)。 有关设置 Copilot 的更多信息,请参阅将您的坐席连接到现有的模型上下文协议 (MCP) 服务器
      注: 对于具有 MCP 的 OAuth,仅支持手动身份验证方法。 为您的第三方 AI 助手配置 MCP 工具时,选择手动作为 OAuth 类型。
      配置 MCP 入站 OAuth
  4. 配置 OAuth 2.0 身份验证。
    1. 从您在 Control Room(步骤 2)获取的 OAuth 客户端详细信息中,复制客户端 ID密钥 ID授权 URL令牌 URL刷新 URL
    2. 将这些复制的详细信息粘贴到第三方 AI 助手的 MCP 工具身份验证配置中的相应字段。
  5. Control Room 中更新重定向 URL。
    1. 在第三方 AI 助手中完成 MCP 工具创建后,将生成一个重定向 URL
    2. 从您的第三方 AI 助手中复制此重定向 URL
    3. 返回 Control Room 的 OAuth 客户端部分,并编辑您在第 2 步创建的客户端。
    4. 将复制的重定向 URL 粘贴到客户端配置中。
    5. 保存更改。
    此操作完成集成,并在 Control Room 与第三方 AI 助手之间建立安全的连接。
  6. 在第三方 AI 助手中建立用户连接。: 当您首次在第三方 AI 助手中使用集成的 MCP 工具时,系统会提示您进行身份验证。 按照 OAuth 流程,使用您的 Automation Anywhere Control Room 凭据授予权限。
    已成功建立连接。
  7. 访问和触发工具(自动化/AI 坐席/流程)。
    1. 一旦连接建立,第三方 AI 助手将列出来自 Automation Anywhere MCP 服务器的可用工具。 这些包括标准的静态工具,例如 DiscoverAutomationRunAutomationGetAutomationResult,以及您在 Control Room 中配置的任何自定义入站工具。
    2. 基于角色的访问控制 (RBAC): 这些工具的可见性和执行能力严格受用户在 Control Room 中配置的 RBAC 权限的管理。 例如,用户只会发现或运行他们拥有查看我的机器人运行我的机器人权限的自动化。
    您现在可以通过第三方助手以对话方式触发自动化,使用自然语言来启动任务。
MCP 客户端在身份验证标头缺失或无效时的行为
  • 如果身份验证标头缺失或不正确,MCP 客户端会自动尝试进行 OAuth 身份验证。
  • 如果身份验证失败,MCP 客户端会显示类似以下的错误消息:
    {"error": "Unauthorized", "message": "Missing or invalid headers: API_KEY, USER_NAME, Authorization or X-AUTH"}
  • 根据 MCP 客户端的实现方式(例如,Microsoft Copilot 或其他兼容 MCP 的客户端),可能会出现额外的错误消息,指示 OAuth 身份验证失败。
注: 错误消息可能会根据所使用的 MCP 客户端而有所不同。
令牌处理
  • 当令牌过期时,MCP 客户端会自动管理访问令牌的刷新。
  • 在正常操作期间,您无需手动刷新令牌。
身份验证方法

MCP 入站支持使用标准身份提供商的基于 OAuth 的身份验证,包括:

  • OIDC(OpenID 连接)
  • 基于 SAML 的身份验证

身份验证体验(例如,登录提示或同意屏幕)取决于所配置的身份提供商。