Salesforce 配置

本页面介绍了 Salesforce 管理员如何启用 Salesforce 连接器调用的 MCP 服务器,以及如何在 Salesforce 中配置 OAuth 2.0 身份验证。这两者都是将 Salesforce 连接到 Gemini Enterprise 的前提条件。

选择身份验证方法

由于 OAuth 2.0 流程针对的是贵组织的“我的网域”端点,而不是共享的 Salesforce 登录主机,因此您的 Salesforce 组织必须信任 OAuth 客户端应用,然后任何用户才能授权连接器。您可以通过以下两种方式之一配置身份验证:

  • Google管理的 OAuth(OAuth 2.0 [Google 管理],默认):Google 在 Salesforce AppExchange 上发布 Gemini Enterprise - Salesforce Connector 托管软件包。在 Salesforce 组织中安装软件包时,您无需创建自己的 Salesforce 应用,也无需在 Gemini Enterprise 中输入客户端 ID 或客户端密钥。请参阅安装 Google托管软件包。
  • 自带应用 (OAuth 2.0 [自带应用]):如果贵组织无法安装 AppExchange 软件包,或者希望直接管理自己的 OAuth 应用和安全政策,您可以在 Salesforce 中创建自己的外部客户端应用,并在 Gemini Enterprise 中输入其客户端 ID(使用方密钥)和客户端密钥(使用方密钥)。请参阅创建您自己的 OAuth 应用。

准备工作

在配置 Salesforce 之前,请确保满足以下条件:

  • 您以管理员身份登录 Salesforce:

    • 如需安装 Google代管式软件包,您的用户个人资料必须包含下载 AppExchange 软件包权限(包含在系统管理员个人资料中)。
    • 如需自带应用,您的用户个人资料必须有权在 Salesforce 设置中创建和管理外部客户端应用。
  • 您知道要关联哪个组织。在您计划在创建数据存储区时输入其“我的网域”网址作为实例 URI 的同一组织中完成设置。

  • 贵组织已启用并部署“我的网域”。连接器会针对您的“我的网域”主机(例如 https://example.my.salesforce.com)进行授权。

  • 贵组织使用的是受支持的 Salesforce 版本。该连接器支持专业版、企业版、无限版和开发者版。

  • SObject All MCP 服务器在贵组织中处于活跃状态。该服务器默认处于非活跃状态。请参阅在组织中启用 MCP 服务器。

在组织中启用 MCP 服务器

连接器会调用 Salesforce 托管的 SObject All MCP 服务器,该服务器会公开连接器操作背后的创建、读取、更新和删除操作。连接器仅连接到 SObject All MCP 服务器端点;不支持单独的按操作 MCP 服务器。OAuth 2.0(Google 管理)和 OAuth 2.0(自带应用)都需要启用此 API。

由于服务器默认处于停用状态,因此管理员必须在贵组织中将其激活。

如需激活该功能,请按以下步骤操作:

  1. 在 Salesforce 中,前往设置。

  2. 依次前往集成 > API 目录 > MCP 服务器。

  3. 在 Salesforce 服务器标签页上,找到 SObject All,其说明为创建、读取、更新和删除 Salesforce 记录。

  4. 将其服务器状态设置为有效。

激活 SObject All MCP 服务器后,该服务器即会为您的组织启用,而无需单独的 MCP 服务器用户权限,并且该服务器本身不会向用户授予创建、更新或删除记录的权限。写入和删除权限在两个层级进行控制:

  • 在 Gemini Enterprise 中:只读操作默认处于启用状态,而创建、更新或删除记录的操作默认处于关闭状态。在设置或管理数据存储区时, Google Cloud 管理员可以选择要启用哪些创建、更新或删除操作,也可以将这些操作全部停用,使连接器处于只读状态。请参阅启用操作。
  • 在 Salesforce 中:每项操作都在授权用户的 Salesforce 账号下运行,并遵循该用户的对象级权限、字段级安全性和共享规则。

安装 Google代管式软件包

如果您打算使用 OAuth 2.0(Google 管理),请从 Salesforce AppExchange 安装 Gemini Enterprise 托管软件包:

  1. 以管理员身份登录您的 Salesforce 组织。

  2. 前往 Salesforce AppExchange 上的 Gemini Enterprise - Salesforce Connector 页面。

  3. 点击立即获取。

  4. 选择要安装到的环境:

    • 为您的生产组织选择 Install in Production(在生产环境中安装)。
    • 在沙盒中安装(适用于沙盒组织)。
  5. 选择哪些用户可以访问该应用:

    • 仅为管理员安装:只有具有系统管理员个人资料的用户才能使用该应用。
    • 为特定个人资料安装:只有具有您所选个人资料的用户才能使用该应用。
    • 为所有用户安装(推荐):组织中的每个用户都无需进行额外的个人资料配置即可使用该应用。

    受管理软件包已包含所需的 OAuth 范围(mcp_api 和 refresh_token)。每个登录以在 Gemini Enterprise 中授权连接器的用户都必须能够访问您所选选项下的应用。如果用户的个人资料没有访问权限,则无法完成登录步骤。

  6. 如果 Salesforce 提示您批准第三方访问,请批准,然后点击安装或升级。

  7. 等待安装完成。对于大型组织,Salesforce 可能会异步完成安装,并在完成后向您发送电子邮件。

安装后,该应用会在 Salesforce 设置中显示为 Gemini Enterprise。接下来,为应用设置登录 IP 政策。

创建您自己的 OAuth 应用

如果您计划使用 OAuth 2.0(自带应用),请在 Salesforce 中创建并配置外部客户端应用,以获取使用方密钥(客户端 ID)和使用方密钥(客户端密钥):

  1. 以管理员身份登录您的 Salesforce 组织,然后前往设置。

  2. 在快速查找字段中,输入 External Client App Manager,然后选择外部客户端应用管理器。

  3. 点击新建外部客户端应用,然后在基本信息下输入所需信息(外部客户端应用名称、API 名称和联系人邮箱)。

  4. 在 API(启用 OAuth 设置)部分,选择启用 OAuth 并配置以下设置:

    1. 在应用设置下,为回调网址输入:

      https://vertexaisearch.cloud.google.com/oauth-redirect
      
    2. 对于 OAuth 范围,请添加以下两个范围:

      • 访问 Salesforce API Platform MCP 服务器 (mcp_api)
      • Perform requests at any time (refresh_token, offline_access)

      这些角色会授予连接器所需的 mcp_api 和 refresh_token 范围。

    3. 在安全下,确保选中以下选项:

      • 为受支持的授权流程启用必需的用于代码交换的证明密钥 (PKCE) 扩展程序
      • 为指定用户签发基于 JSON Web 令牌 (JWT) 的访问令牌
  5. 点击创建。

  6. 配置应用的 OAuth 政策:

    1. 在设置中,前往应用 > 外部客户端应用管理器,点击您的外部客户端应用,选择政策标签页,然后点击修改。

    2. 对于许可的用户,选择所有用户均可自行授权(推荐),或选择管理员批准的用户已获得预先授权,并为将授权连接器的所有用户(包括在创建数据存储区期间验证身份验证的管理员)分配配置文件或权限集。

    3. 在 IP 放宽部分,选择放宽 IP 限制。如需详细了解为何需要此设置,请参阅为应用设置登录 IP 政策。

    4. 点击保存。

  7. 复制应用的 OAuth 凭证:

    1. 选择 Settings(设置)标签页,展开 OAuth Settings(OAuth 设置),然后点击 Consumer Key and Secret(使用方密钥和 Secret)。
    2. 复制并保存使用方密钥和使用方密钥令牌。在 Gemini Enterprise 中创建数据存储区时,您需要将这些值输入为客户端 ID 和客户端密钥。

为应用设置登录 IP 政策

Salesforce 连接器不支持每个数据存储区使用静态 IP 地址。而是由 Salesforce 中的外部客户端应用来控制登录 IP 验证:

  • 身份验证调用(OAuth 令牌交换和刷新):当用户授权连接器时,Gemini Enterprise 会从 Google的服务器交换和刷新该用户的 Salesforce 令牌。这些请求并非来自贵组织的 IP 地址。如果应用强制执行 IP 限制,并且用户的个人资料具有登录 IP 范围,则请求会被拒绝,并且验证 Auth或授权步骤会失败。将应用的 IP 放宽政策设置为放宽 IP 限制。对于Google管理的 Gemini Enterprise 应用, Google 已将令牌请求限制为 Google自己的出站流量 IP 范围,并且无论政策设置如何,该检查都适用。
  • 数据调用:系统只会根据 IP 限制检查登录和令牌请求。用户授权连接器后,Salesforce 会根据用户的有效访问令牌处理连接器的数据请求。

如需为 Google管理的应用(或您自己的外部客户端应用)设置政策,请执行以下操作:

  1. 在 Salesforce 中,前往设置。

  2. 前往应用 > 外部客户端应用管理器,然后点击 Gemini Enterprise(或自定义外部客户端应用的名称)。

  3. 选择政策标签页,然后点击修改。

  4. 在 OAuth 政策部分中,将 IP 放宽设置为放宽 IP 限制。

  5. 点击保存。

关联沙盒组织

沙盒是一个独立的 Salesforce 组织,拥有自己的“我的网域”主机以及自己安装的软件包和应用。配置生产环境不会配置沙盒。

如需连接沙盒组织,请在沙盒中激活 SObject All MCP 服务器,然后将 AppExchange 软件包安装到沙盒中(选择在沙盒中安装),或在沙盒中创建外部客户端应用。如需了解沙盒连接所需的数据存储区设置,请参阅设置 Salesforce 数据存储区。

配置 Salesforce 后会发生什么

在 Salesforce 中配置应用本身不会连接任何内容。 它会使 OAuth 应用可供您的组织使用,以便个别用户可以对其进行授权。

Google Cloud 管理员在 Gemini Enterprise 中创建 Salesforce 数据存储区并将其连接到应用(请参阅设置 Salesforce 数据存储区)后,每个最终用户(包括使用 Web 应用的管理员)都会授权 Gemini Enterprise 使用每个用户的最终用户身份验证代表他们访问 Salesforce。当用户首次在 Gemini Enterprise Web 应用中查询 Salesforce 数据时,系统会将其重定向到贵组织的 Salesforce 登录页面,用户可以在该页面向应用授予 mcp_api 和 refresh_token 范围。如需了解详情,请参阅为连接器授权。

由于每个用户都是单独授权,因此 Gemini Enterprise 会使用该用户自己的权限访问 Salesforce 记录。用户只能查看和修改其在 Salesforce 中已经可以查看和修改的记录。

问题排查

症状 可能的原因
验证 Auth或授权步骤失败,或者 Salesforce 登录页面报告未知、无效或未经授权的客户端应用。 如果您使用 OAuth 2.0(Google 管理),请验证受管理软件包是否安装在实例 URI 指向的确切组织(包括沙盒)中。如果您使用 OAuth 2.0(自带应用),请验证客户端 ID 和客户端密钥是否与该组织中的应用匹配,回调网址是否设置为 https://vertexaisearch.cloud.google.com/oauth-redirect,是否选择了 mcp_api 和 refresh_token 范围,以及是否启用了需要用于代码交换的证明密钥 (PKCE) 扩展程序才能支持授权流程。
部分用户可以授权,而其他用户无法授权。 应用的允许的用户政策限制了对特定配置文件或权限集的访问,而这些配置文件或权限集不包含这些用户,或者放宽 IP 限制未设置为放宽 IP 限制。在设置中,打开应用的政策标签页,点击修改,添加受影响的配置文件或权限集(或将允许的用户设置为所有用户都可以自行授权),并验证放宽 IP 限制是否设置为放宽 IP 限制。
授权成功,但 Gemini Enterprise Web 应用中的查询或操作失败。 SObject All MCP 服务器在组织中未处于活跃状态,或者您的外部客户端应用中未选择为指定用户签发基于 JSON Web 令牌 (JWT) 的访问令牌。请在 Salesforce 设置中激活服务器(请参阅在组织中启用 MCP 服务器),并验证您的外部客户端应用是否会签发基于 JWT 的访问令牌。
授权成功,但未返回任何 Salesforce 数据。 授权用户可能在 Salesforce 中没有记录级访问权限。连接器会遵循用户自己的 Salesforce 权限。

后续步骤