本页介绍了如何将 Salesforce 连接到 Gemini Enterprise。
建议使用 Salesforce V2(推荐)连接器将 Salesforce 数据注入到 Gemini Enterprise 中。现有的 Salesforce 连接器将被弃用。如果您使用的是采用 Salesforce 连接器的现有数据存储区,请使用 Salesforce V2 连接器创建一个新的数据存储区。
关联 Salesforce V2(推荐)
支持的版本
Salesforce V2 连接器支持 SOAP API 30.0 版或更高版本。
准备工作
在设置关联之前,请先执行以下操作:
使用 Salesforce 企业版或 Salesforce 开发者方案。不支持试用账号。
根据您选择的身份验证类型配置 Salesforce 以实现关联性。支持的身份验证类型包括:
生成服务连接
请按以下步骤生成服务连接:
对于公共端点:如果 Salesforce 数据中心的目标类型为公共,则无需创建服务连接设置。您可以改为在 Google Cloud 控制台的网域网址字段中使用您的公开网址。
对于专用端点:
配置 Salesforce 以实现关联性
如需将 Salesforce 数据源关联到 Gemini Enterprise,您必须在 Salesforce 中完成特定配置。这些配置因您选择的身份验证类型而异。
设置用户名和密码身份验证
对于用户名-密码身份验证,您可以使用现有的安全令牌,也可以重置安全令牌以通过您的注册邮箱接收一个新令牌。
如需重置安全令牌,请执行以下操作:
点击您的个人资料图标,然后选择设置。
设置 前往重置我的安全令牌标签页,然后点击重置安全令牌。
重置安全令牌 Salesforce 会将新的安全令牌发送到您的注册邮箱。
设置 OAuth 2.0 - JWT 不记名身份验证
您必须在 Salesforce 中将 Gemini Enterprise 设置为关联的应用,才能进行 API 集成。
将 Gemini Enterprise 作为关联的应用进行关联后,您可以获取在 Gemini Enterprise 中创建 Salesforce 连接器所需的以下身份验证信息。
- 客户自己的密钥
- 公钥
- 用户名(已预先获得授权,可使用该应用)
生成私钥和公共证书
执行以下 OpenSSL 命令,以生成 2048 位 RSA 私钥。
openssl genrsa -out server.key 2048
此命令会创建一个名为
server.key
的文件,其中包含您的私钥。请确保此文件的安全性和保密性。执行以下 OpenSSL 命令,以使用该私钥生成自签名公共证书。
openssl req -new -x509 -sha256 -days 3650 -key server.key -out server.crt
此命令会生成一个名为
server.crt
的文件,即您的公共证书。您可以在配置关联应用期间将此证书上传到 Salesforce。
在 Salesforce 中创建和配置关联的应用
在 Salesforce 应用中,点击“设置”图标,然后选择设置。
设置 在快速查找框中输入
Apps
,然后选择应用管理器。选择新建外部客户端应用。
新建外部客户端应用 输入关联的应用所需的基本信息,例如外部客户端应用名称、API 名称和联系人邮箱。
在 API(启用 OAuth 设置)部分,配置以下 OAuth 设置。如需了解详情,请参阅为 API 集成启用 OAuth 设置。
- 选中启用 OAuth 复选框。
- 将回调网址输入为
https://vertexaisearch.cloud.google.com/console/oauth/salesforce_oauth.html
。 - 在选定的 OAuth 范围部分,添加完全访问权限 (full)、通过 API 管理用户数据 (api) 和随时执行请求(refresh_token、offline_access)等设置。如需了解详情,请参阅 OAuth 令牌和范围。
在“启用流程”部分:
选中启用 JWT 不记名令牌流程复选框。
上传在生成私钥和公共证书中创建的公共证书。
启用 OAuth 设置 - OAuth2 JWT 点击创建。
预先授权外部客户端应用访问权限
创建关联的应用后,您必须明确授权特定用户或授予相应的权限集,才能访问该应用。
- 在快速查找框中输入
External client app
,然后选择外部客户端应用管理器。 - 找到并打开您之前创建的外部客户端应用。
- 在政策标签页中,点击修改以修改应用详细信息。
在 OAuth 政策部分中,执行以下操作:
- 在许可的用户字段中,选择管理员批准的用户已获得预先授权。
- 在刷新令牌政策字段中,选择刷新令牌在被撤消之前一直有效。
- 在 IP 放宽字段中,选择放宽 IP 限制。
OAuth 政策 - OAuth2 JWT 不记名
IP 放宽选项用于控制关联应用的访问权限是否受 IP 范围限制。系统会根据用户个人资料设置强制执行 IP 限制。您必须验证用户设置中是否已启用在组织级强制执行 IP 范围限制。如果启用了每项请求都强制执行登录 IP 范围,那么即便将“IP 放宽”设置为“放宽 IP 限制”,也并不会覆盖现有的 IP 限制。如需了解详情,请参阅关联应用 IP 放宽和持续 IP 强制执行。
- 如果您想在关联的应用中强制执行 IP 限制,可以设置可信 IP。如需了解详情,请参阅为关联的应用配置可信 IP 范围。
- 如果您不想设置任何 IP 访问限制,请确认是否未选中每项请求都强制执行登录 IP 范围。
在应用政策部分中,选择需要为此身份验证类型进行授权的个人资料和权限集。
应用政策 点击保存。
前往设置标签页。
在 OAuth 设置部分,点击使用方密钥和 Secret,然后复制
Consumer key
和Consumer secret
。
设置 OAuth 2.0 - 客户端凭证身份验证
您必须在 Salesforce 中将 Gemini Enterprise 设置为关联的应用,才能进行 API 集成。
将 Gemini Enterprise 作为关联的应用进行关联后,您可以获取在 Gemini Enterprise 中创建 Salesforce 连接器所需的以下身份验证信息。
- 使用方 ID 或客户端 ID
- 使用方 Secret 或客户端密钥
创建和配置外部客户端应用
在 Salesforce 应用中,点击“设置”图标,然后选择设置。
在快速查找框中输入
Apps
,然后选择应用管理器。选择新建外部客户端应用。
输入关联的应用所需的基本信息,例如外部客户端应用名称、API 名称和联系人邮箱。
在 API(启用 OAuth 设置)部分,配置以下 OAuth 设置。如需了解详情,请参阅为 API 集成启用 OAuth 设置。
- 选中启用 OAuth 复选框。
- 将回调网址输入为
https://vertexaisearch.cloud.google.com/console/oauth/salesforce_oauth.html
。 - 在选定的 OAuth 范围部分,选择完全访问权限 (full)、通过 API 管理用户数据 (api) 和随时执行请求(refresh_token、offline_access)等设置。如需了解详情,请参阅 OAuth 令牌和范围。
- 在“启用流程”部分中,选中启用客户端凭证流程复选框。
启用 OAuth 设置 - OAuth2 客户端凭据
点击创建。
预先授权外部客户端应用访问权限
创建外部客户端应用后,您必须明确授权特定用户或授予相应的权限集,才能访问该应用。
- 在快速查找框中输入
External client app
,然后选择外部客户端应用管理器。 - 点击您创建的外部客户端应用的名称。
- 在政策标签页中,点击修改以修改应用详细信息。
在 OAuth 政策部分中,执行以下操作:
- 在许可的用户字段中,选择管理员批准的用户已获得预先授权。
在 OAuth 流程和外部客户端增强部分,执行以下操作:
- 选中启用客户端凭证流程复选框。
- 输入用户的邮箱 ID。
在刷新令牌政策字段中,选择刷新令牌在被撤消之前一直有效。
在 IP 放宽字段中,选择放宽 IP 限制。
OAuth 政策 - OAuth2 客户端凭据
IP 放宽选项用于控制关联应用的访问权限是否受 IP 范围限制。系统会根据用户个人资料设置强制执行 IP 限制。您必须验证用户设置中是否已启用在组织级强制执行 IP 范围限制。如果启用了每项请求都强制执行登录 IP 范围,那么即便将“IP 放宽”设置为“放宽 IP 限制”,也并不会覆盖现有的 IP 限制。如需了解详情,请参阅关联应用 IP 放宽和持续 IP 强制执行。
- 如果您想在关联的应用中强制执行 IP 限制,可以设置可信 IP。如需了解详情,请参阅为关联的应用配置可信 IP 范围。
- 如果您不想设置任何 IP 访问限制,请确认是否未选中每项请求都强制执行登录 IP 范围。
在应用政策部分中,选择需要为此身份验证类型进行授权的个人资料和权限集。
应用政策 点击保存。
前往设置标签页。
在 OAuth 设置部分,点击使用方密钥和 Secret,然后复制
Consumer key
和Consumer secret
。
获取登录网址
如需获取 Salesforce 实例的登录网址,请执行以下操作:
- 在快速查找框中输入
My domain
,然后选择我的网域。 - 复制以
my.salesforce.com
结尾的网域。 - 在复制的网域开头添加
https://
。这是在 Gemini Enterprise 中创建 Salesforce 连接器时所需的实例网址。实例网址必须采用以下格式:https://DOMAIN_NAME.my.salesforce.com
。
配置用户最低权限
如需验证配置连接器的用户是否拥有提取数据所需的最低权限,请完成以下步骤:
- 在快速查找框中输入
Profiles
,然后选择个人资料。 - 选择运行连接器的用户个人资料。
- 前往标准对象权限部分,然后验证权限。
验证所选用户是否具有相应权限。您必须针对要注入的每个实体重复此流程。这包括检查用户个人资料级别的默认访问权限是否设置为 Private
。如果实体的访问权限设置为 Private
, Google Cloud 连接器将无法访问所需的对象,并会在 Cloud Logging 中登记错误。如需允许访问,请执行以下操作:
创建权限集并与用户共享
在快速查找框中输入
Permission sets
,然后选择权限集。点击 New(新建)。
输入名称,然后保存权限集。
打开创建的权限集,然后前往应用部分。
选择对象设置。
选中查看所有记录复选框。
在字段权限部分中,授予对您要同步的所有字段的读取权限。
对象设置 保存设置并返回。
在“系统”部分中,选择系统权限。
启用以下最低权限:
API enabled
View all users
View roles and role hierarchy
View setup and configuration
将用户添加到权限集中:
- 在快速查找框中输入
Users
,然后选择用户。 选择用户。
在权限集分配部分中,选择修改分配。
将最近创建的权限集添加到已启用的权限集部分。
- 在快速查找框中输入
如需了解详情,请参阅 Salesforce 中的数据访问权限和在组织范围共享默认设置。
创建 Salesforce V2 数据存储区
控制台
如需使用 Google Cloud 控制台将 Salesforce 中的数据同步到 Gemini Enterprise,请按以下步骤操作:
在 Google Cloud 控制台中,前往 Gemini Enterprise 页面。
在导航菜单中,点击数据存储区。
点击
创建数据存储区。在选择数据源页面上,滚动查找或搜索 Salesforce V2 以关联该第三方来源。
在身份验证部分中,选择身份验证方法并输入身份验证信息。
在目标位置部分中,选择公共或专用。
对于公共目标位置类型,您无需创建服务连接设置。在登录网址字段中,输入 Salesforce 服务器的登录网址。
对于专用目标位置类型,请输入所有必需的信息:
- 服务连接:输入您的服务连接。
- 基本域名:输入您的基本域名。
- 登录网址:输入 Salesforce 服务器的登录网址。
点击继续。
在要同步的实体部分中,执行以下操作:
选择要同步的实体。
可选:网址字段名称:输入一个列名,以使用 Salesforce 表中的自定义网址替换默认实体网址。此字段区分大小写。
例如:如果您同步的 Salesforce“客户”表包含一个
website
列,其中存储了每个客户的特定网址,则您可以在此处输入website
。当用户在搜索结果中查看某个客户并点击相应链接时,系统会将其重定向到website
列中存储的网址,而不是标准的 Salesforce 记录页面网址。
可选:如需添加自定义实体,请点击手动添加实体。自定义实体名称的格式必须为
custom_object_name__c
。例如:MyObject__c
。要同步的实体 为完全同步选择同步频率,为增量数据同步选择增量同步频率。如需了解详情,请参阅同步计划。
设置同步频率。 - 可选:如需分开安排实体数据和身份数据的完全同步,请展开“完全同步”下的菜单,然后选择自定义选项。在自定义同步选项对话框中,设置实体数据和身份数据的同步频率。
分开设置实体数据的完全同步和身份数据的完全同步的同步计划。
点击继续。
在配置数据连接器部分中,执行以下操作:
- 为您的数据存储区选择一个区域。
- 为数据存储区输入名称。
- 点击创建。Gemini Enterprise 会为您创建数据存储区,并在数据存储区页面上显示您的数据存储区。
配置数据连接器
如需查看数据注入状态,请前往数据存储区页面,然后点击数据存储区名称,在其数据页面查看相关详情。当连接器开始同步数据时,连接器状态会从正在创建变为正在运行。注入完成后,状态会变为活跃,表明已设置与数据源之间的关联,并在等待下一次的计划同步。
注入过程可能需要几分钟或几小时才能完成,具体取决于数据的大小。
安装 OAuth 关联的应用
如果您使用的是 OAuth 身份验证,则必须安装在在 Salesforce 中创建和配置关联的应用部分中创建的外部客户端应用。前往 Salesforce 账号中的关联的应用 OAuth 用量页面,然后安装该应用。 如需了解详情,请参阅关联的应用使用限制变更。
速率限制
Salesforce 连接器的默认速率限制为每秒 5 个请求。
错误消息
下表列出了您在使用 Salesforce 连接器时可能会收到的错误消息:
错误消息 | 说明 | 问题排查 |
---|---|---|
由于流水线失败,初始化连接器失败。请删除连接器,然后重试创建。 | 由于流水线故障,连接器未能初始化。这是由于内部服务错误造成的。 | 删除现有连接器并重新创建。 |
由于项目已添加到 VPC-SC 边界,连接器被阻止。请重新创建数据存储区。 | 创建数据存储区后,此项目已添加到 VPC Service Controls 边界。 | 删除现有数据存储区并重新创建。这可确保数据存储区已正确配置,可在 VPC Service Controls 边界内运行。 |
连接未处于活跃状态。连接状态:ERROR,说明:未能检索到 OAuth 令牌信息。[INVALID_GRANT] 未启用任何客户端凭证用户。 | 使用 JWT 客户端凭证进行身份验证时,由于无法检索 OAuth 令牌,连接处于非活跃状态。 |
|
连接未处于活跃状态。连接状态:ERROR,说明:INVALID_LOGIN:用户名、密码、安全令牌无效;或用户遭到锁定。 | 由于登录信息不正确,连接失败。由于用户名、密码或安全令牌无效,连接未处于活跃状态。 |
|
连接未处于活跃状态。连接状态:ERROR,说明:未能检索到 OAuth 令牌信息。[INVALID_GRANT] 受众群体无效。 | 连接失败,因为 JWT 身份验证的 OAuth 令牌检索返回了无效的受众群体,这可能是由于用户凭证不正确所致。 | 验证用户名和密码是否正确。用户名通常是邮箱,例如 user@company.com。 |
[INVALID_SESSION_ID] 会话无效或已过期,请尝试重新连接。如果问题仍然存在,可能是由于以下原因:A) 您已超出此用户的会话限制。B) 这可能与您的账号需要使用 MFA 相关。C) Salesforce 安全控制中启用了“将会话锁定到生成会话的 IP”,并且您的 IP 在不同请求之间会发生变化。 | 会话不再有效。如果您已超出会议限制,或者您的账号需要进行多重身份验证 (MFA),就可能会发生这种情况。如果启用了将您的会话锁定到特定 IP 地址的安全设置,而您的 IP 地址发生了变化,也可能会出现此错误。 |
|
已知限制
不支持基于知识文章版本的类别的访问权限控制列表。
只有具有查看所有数据权限的用户、任务所有者以及通过层次结构获得访问权限的用户才能看到任务。
在创建连接后,如果您将项目添加到 VPC Service Controls (VPC-SC) 边界,连接器同步运行会失败。
手动添加实体时,仅支持 Salesforce 自定义对象__c(变量名称以 __c 结尾的自定义对象)。
关联 Salesforce (V1)
准备工作
在设置关联之前,请先执行以下操作:
- 使用企业版或开发者方案。不支持试用账号。
- 为数据源设置访问权限控制。如需了解如何设置访问权限控制,请参阅使用数据源访问权限控制。
- 验证 Salesforce CORS 许可名单是否包含 Google Cloud。
- 如需配置许可名单,请参阅为 OAuth 端点启用 CORS。
- 如需添加 Google Cloud,请添加
https://console.cloud.google.com/
作为源网址,然后保存您的配置。
在 Salesforce 中创建关联的应用
您必须在 Salesforce 中将 Vertex AI Search 设置为关联的应用,才能进行 API 集成。
将 Vertex AI Search 作为关联的应用进行关联后,您可以获取在 Gemini Enterprise 中创建 Salesforce 连接器所需的以下身份验证信息。
- 实例网址
- 使用方 ID 或客户端 ID
- 使用方 Secret 或客户端密钥
如需启用 OAuth 2.0 并获取身份验证信息,请执行以下操作:
在 Salesforce 应用中,点击“设置”图标,然后选择设置。
为 Salesforce 应用选择“设置” 在快速查找框中输入
External Client App
,然后选择外部客户端应用管理器。在菜单中,前往设置。
将允许创建关联的应用切换开关切换到开启位置,然后点击新建关联的应用。
为此,您必须拥有外部客户端应用的相应权限。验证您是否拥有以下权限:
- 创建、修改和删除外部客户端应用
- 查看所有外部客户端应用
- 查看所有外部客户端应用、查看其设置并修改其政策
查找应用管理器并创建新的关联应用 在新关联应用的创建页面中,添加应用的基本信息,例如应用名称、您的联系信息以及用于标识应用的徽标。如需了解详情,请参阅配置基本关联应用设置。
在 API(启用 OAuth 设置)部分,配置以下 OAuth 设置。 如需了解详情,请参阅为 API 集成启用 OAuth 设置。
启用并配置 OAuth 设置 - 选择 Enable OAuth Settings(启用 OAuth 设置)。
将回调网址指定为
https://vertexaisearch.cloud.google.com/console/oauth/salesforce_oauth.html
。在选定的 OAuth 范围部分,添加完全访问权限 (full) 和随时执行请求(refresh_token、offline_access)。如需了解详情,请参阅 OAuth 令牌和范围。
选择启用客户端凭据流程。
选择启用授权代码和凭据流程。
选择 Require user credentials in the POST body for Authorization Code and Credentials Flow(要求在授权码和凭据流程的 POST 正文中提供用户凭据)。
在自定义关联的应用处理程序中,指定以什么用户身份运行。 此用户必须对连接器需要提取的所有实体具有读取权限。
指定具有读取权限的“以用户身份运行”用户
点击保存以创建关联的应用。
在“快速查找”框中输入
Manage connected apps
,然后选择管理关联的应用。在列表中找到您的应用,选择修改,然后在关联的应用详情页面上选择修改政策,以配置以下详细信息:
管理关联的应用并修改其政策 将 IP 放宽设置为放宽 IP 限制。
关联应用和客户端凭据流程的其他设置 此选项用于确定关联应用的访问权限是否受 IP 范围限制。系统会根据用户个人资料中的设置强制执行 IP 限制。您必须验证用户设置中是否已配置在组织级强制执行 IP 范围限制。如果启用了每项请求都强制执行登录 IP 范围,那么即便将“IP 放宽”选项设置为放宽 IP 限制,也并不会移除 IP 限制。如需了解详情,请参阅关联应用 IP 放宽和持续 IP 强制执行。 如果您想在关联的应用中强制执行 IP 限制,可以设置可信 IP。如需了解详情,请参阅为关联的应用配置可信 IP 范围。如果您不想设置任何 IP 访问限制,请确认是否未选中每项请求都强制执行登录 IP 范围。
将刷新令牌政策设置为刷新令牌在被撤消之前一直有效。
将允许的用户设置为所有用户都可以自行授权。
在 Client Credentials Flow(客户端凭据流程)部分中,指定一个以此身份运行的用户。 指定的用户必须具有读取权限,才能让连接器提取所需的所有实体。如需检查所选用户是否拥有所有必需的权限,请执行以下操作之一:
- 在 Salesforce 应用中,点击“设置”图标,然后选择设置。
- 在主菜单中,点击用户,然后点击要验证其权限的用户名。
- 点击个人资料,前往标准对象权限部分,然后验证权限。
验证用户的权限
验证所选用户是否具有相应权限。 这包括检查用户个人资料级别的默认访问权限是否设置为
Private
。如果实体的访问权限设置为Private
, Google Cloud 连接器将无法访问所需的对象,并会在 Cloud Logging 中登记错误。如需允许访问,请执行以下操作之一:- 将默认个人资料权限更改为
Public
。 - 在共享设置中,单独配置对每个实体的访问权限。
为实体配置共享设置 - 创建权限集并与用户共享该权限集:
- 在“快速查找”框中输入
Permission sets
,然后选择权限集。 - 点击 New(新建)。
- 输入名称,然后保存权限集。
- 在系统下,点击系统权限。
- 点击修改,选择查看设置和配置,然后保存。
- 在权限集页面上,点击管理分配
- 点击添加分配对象,选择要向其分配权限集的用户,然后点击分配。
- 在“快速查找”框中输入
- 如需了解详情,请参阅 Salesforce 中的数据访问权限和在组织范围共享默认设置。
- 将默认个人资料权限更改为
点击保存。
在“快速查找”框中输入
OAuth and openID connect settings
,选择 OAuth 和 OpenId Connect 设置,然后启用允许授权代码和凭据流程设置 OAuth 和 OpenID Connect 设置 获取实例网址:
- 在“快速查找”框中输入
My domain
,然后选择我的网域。复制应用的域名 - 复制以
my.salesforce.com
结尾的网域。 - 在复制的网域开头添加
https://
。这是在 Gemini Enterprise 中创建 Salesforce 连接器时所需的实例网址。实例网址必须采用以下格式:https://<var>DOMAIN_NAME</var>.my.salesforce.com</var>
。
- 在“快速查找”框中输入
获取使用方 ID 和使用方密钥。
- 前往应用管理器,找到您的应用,然后在选项中选择查看。
查看应用详情 - 点击管理客户详细信息。
点击“管理使用方详细信息”按钮 - 根据提示验证您的身份。
复制消费者详细信息。
复制使用方密钥和密文 这是在 Gemini Enterprise 中创建 Salesforce 连接器时所需的实例网址。
如果启用了刷新令牌,请确保在 Gemini Enterprise 中创建 Salesforce 连接器时,令牌已刷新,并且您复制的是最新令牌。
- 前往应用管理器,找到您的应用,然后在选项中选择查看。
创建 Salesforce (V1) 数据存储区
控制台
如需使用 Google Cloud 控制台将 Salesforce 中的数据同步到 Gemini Enterprise,请按以下步骤操作:
在 Google Cloud 控制台中,前往 Gemini Enterprise 页面。
在导航菜单中,点击数据存储区。
点击
创建数据存储区。在选择数据源页面上,滚动查找或搜索 Salesforce 以关联该第三方来源。
输入您的 Salesforce 身份验证信息。
选择要同步的实体,然后点击继续。
为完全同步选择同步频率,为增量数据同步选择增量同步频率。如需了解详情,请参阅同步时间表。
如果您想分开安排实体数据和身份数据的完全同步,请展开完全同步下的菜单,然后选择自定义选项。
分开设置实体数据的完全同步和身份数据的完全同步的同步计划。 为您的数据存储区选择一个区域。
为数据存储区输入名称。
点击创建。Gemini Enterprise 会为您创建数据存储区,并在数据存储区页面上显示您的数据存储区。
如需查看数据注入状态,请前往数据存储区页面,然后点击数据存储区名称,在其数据页面查看相关详情。当连接器开始同步数据时,连接器状态会从正在创建变为正在运行。注入完成后,状态会变为活跃,表明已设置与数据源之间的关联,并在等待下一次的计划同步。
注入过程可能需要几分钟或几小时才能完成,具体取决于数据的大小。
后续步骤
如需将数据存储区附加到应用,请按照创建应用中的步骤创建应用并选择数据存储区。
如需在设置应用和数据存储区后预览搜索结果的显示方式,请参阅预览搜索结果。如果您使用的是第三方访问权限控制,请参阅预览采用第三方访问权限控制的应用的结果。
如需为数据存储区启用提醒,请参阅为第三方数据存储区配置提醒。