本页面介绍了 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。
由于服务器默认处于停用状态,因此管理员必须在贵组织中将其激活。
如需激活该功能,请按以下步骤操作:
在 Salesforce 中,前往设置。
依次前往集成 > API 目录 > MCP 服务器。
在 Salesforce 服务器标签页上,找到 SObject All,其说明为创建、读取、更新和删除 Salesforce 记录。
将其服务器状态设置为有效。
激活 SObject All MCP 服务器后,该服务器即会为您的组织启用,而无需单独的 MCP 服务器用户权限,并且该服务器本身不会向用户授予创建、更新或删除记录的权限。写入和删除权限在两个层级进行控制:
- 在 Gemini Enterprise 中:只读操作默认处于启用状态,而创建、更新或删除记录的操作默认处于关闭状态。在设置或管理数据存储区时, Google Cloud 管理员可以选择要启用哪些创建、更新或删除操作,也可以将这些操作全部停用,使连接器处于只读状态。请参阅启用操作。
- 在 Salesforce 中:每项操作都在授权用户的 Salesforce 账号下运行,并遵循该用户的对象级权限、字段级安全性和共享规则。
安装 Google代管式软件包
如果您打算使用 OAuth 2.0(Google 管理),请从 Salesforce AppExchange 安装 Gemini Enterprise 托管软件包:
以管理员身份登录您的 Salesforce 组织。
前往 Salesforce AppExchange 上的 Gemini Enterprise - Salesforce Connector 页面。
点击立即获取。
选择要安装到的环境:
- 为您的生产组织选择 Install in Production(在生产环境中安装)。
- 在沙盒中安装(适用于沙盒组织)。
选择哪些用户可以访问该应用:
- 仅为管理员安装:只有具有系统管理员个人资料的用户才能使用该应用。
- 为特定个人资料安装:只有具有您所选个人资料的用户才能使用该应用。
- 为所有用户安装(推荐):组织中的每个用户都无需进行额外的个人资料配置即可使用该应用。
受管理软件包已包含所需的 OAuth 范围(
mcp_api和refresh_token)。每个登录以在 Gemini Enterprise 中授权连接器的用户都必须能够访问您所选选项下的应用。如果用户的个人资料没有访问权限,则无法完成登录步骤。如果 Salesforce 提示您批准第三方访问,请批准,然后点击安装或升级。
等待安装完成。对于大型组织,Salesforce 可能会异步完成安装,并在完成后向您发送电子邮件。
安装后,该应用会在 Salesforce 设置中显示为 Gemini Enterprise。接下来,为应用设置登录 IP 政策。
创建您自己的 OAuth 应用
如果您计划使用 OAuth 2.0(自带应用),请在 Salesforce 中创建并配置外部客户端应用,以获取使用方密钥(客户端 ID)和使用方密钥(客户端密钥):
以管理员身份登录您的 Salesforce 组织,然后前往设置。
在快速查找字段中,输入
External Client App Manager,然后选择外部客户端应用管理器。点击新建外部客户端应用,然后在基本信息下输入所需信息(外部客户端应用名称、API 名称和联系人邮箱)。
在 API(启用 OAuth 设置)部分,选择启用 OAuth 并配置以下设置:
在应用设置下,为回调网址输入:
https://vertexaisearch.cloud.google.com/oauth-redirect对于 OAuth 范围,请添加以下两个范围:
- 访问 Salesforce API Platform MCP 服务器 (mcp_api)
- Perform requests at any time (refresh_token, offline_access)
这些角色会授予连接器所需的
mcp_api和refresh_token范围。在安全下,确保选中以下选项:
- 为受支持的授权流程启用必需的用于代码交换的证明密钥 (PKCE) 扩展程序
- 为指定用户签发基于 JSON Web 令牌 (JWT) 的访问令牌
点击创建。
配置应用的 OAuth 政策:
在设置中,前往应用 > 外部客户端应用管理器,点击您的外部客户端应用,选择政策标签页,然后点击修改。
对于许可的用户,选择所有用户均可自行授权(推荐),或选择管理员批准的用户已获得预先授权,并为将授权连接器的所有用户(包括在创建数据存储区期间验证身份验证的管理员)分配配置文件或权限集。
在 IP 放宽部分,选择放宽 IP 限制。如需详细了解为何需要此设置,请参阅为应用设置登录 IP 政策。
点击保存。
复制应用的 OAuth 凭证:
- 选择 Settings(设置)标签页,展开 OAuth Settings(OAuth 设置),然后点击 Consumer Key and Secret(使用方密钥和 Secret)。
- 复制并保存使用方密钥和使用方密钥令牌。在 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管理的应用(或您自己的外部客户端应用)设置政策,请执行以下操作:
在 Salesforce 中,前往设置。
前往应用 > 外部客户端应用管理器,然后点击 Gemini Enterprise(或自定义外部客户端应用的名称)。
选择政策标签页,然后点击修改。
在 OAuth 政策部分中,将 IP 放宽设置为放宽 IP 限制。
点击保存。
关联沙盒组织
沙盒是一个独立的 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 权限。 |
后续步骤
- 如需创建数据存储区,请参阅设置 Salesforce 数据存储区。