Skip to content

Salesforce 凭据(Salesforce credentials)#

你可以使用以下凭据验证以下节点:

🌐 You can use these credentials to authenticate the following nodes:

支持的身份验证方法(Supported authentication methods)#

  • JWT
  • OAuth2

有关该服务的更多信息,请参阅Salesforce 开发者文档

🌐 Refer to Salesforce's developer documentation for more information about the service.

Salesforce 外部客户端应用

Salesforce 正在弃用连接应用,以支持外部客户端应用。两种方法都可以与 n8n 一起使用。如果你正在创建新的集成,请使用外部客户端应用。现有的连接应用将继续工作。

使用 JWT(Using JWT)#

要配置此凭据,你需要一个 Salesforce 账户以及:

🌐 To configure this credential, you'll need a Salesforce account and:

  • 你的环境类型(生产或沙箱)
  • A 客户端 ID:在你创建外部客户端应用或连接应用时生成。
  • 你的 Salesforce 用户名
  • 自签数字证书的私钥

要进行设置,首先你需要创建一个私钥和证书,然后创建一个外部客户端应用:

🌐 To set things up, first you'll create a private key and certificate, then an external client app:

  1. 在 n8n 中,为你的连接选择 环境类型。从 生产环境沙盒环境 中选择最能描述你环境的选项。
  2. 请输入你的 Salesforce 用户名
  3. 登录你的 Salesforce 组织。
  4. 你需要一个由认证机构颁发的私钥和证书。你可以使用自己的密钥/证书,或者使用 OpenSSL 创建密钥和自签名数字证书。有关创建你自己的密钥和证书的说明,请参阅 Salesforce 的 创建私钥和自签名数字证书文档
  5. 在 Salesforce 的 设置 中,在快速查找框中输入 App Manager,然后选择 应用管理器
  6. 在应用管理页面,选择 新建外部客户端应用
  7. 请输入你的外部客户端应用所需的基本信息,包括名称联系电子邮件地址
  8. API(启用 OAuth 设置) 下,选择 启用 OAuth
  9. 回调 URL 框中,添加回调 URL:http://localhost:1717/OauthRedirect(如果是自托管,请使用你的 n8n 实例 URL)。10. 在 OAuth 权限范围 部分,选择这些权限范围:
    • 完全访问(完整)
    • 随时执行请求(refresh_token, offline_access)11. 在 流程启用 部分,选择 启用 JWT 承载流。12. 选择 上传文件 并上传包含你的数字证书的文件,例如 server.crt。13. 在 OAuth 策略 下,确保以下设置 未勾选
    • Web 服务器流程需要密钥
    • 刷新令牌流程需要密钥
    • 对支持的授权流程要求使用代码交换密钥(PKCE)扩展14. 选择 保存,然后 继续。15. 复制 消费者密钥 并将其添加到你的 n8n 凭证中作为 客户端 ID。16. 在 n8n 中输入私钥文件的内容作为 私钥
    • 使用 n8n 中的多行编辑器。
    • 以标准 PEM 密钥格式输入私钥:

      1
      2
      3
      -----BEGIN PRIVATE KEY-----
      KEY DATA GOES HERE
      -----END PRIVATE KEY-----
      

有关更多信息,请参阅 Salesforce 的 外部客户端应用基础 文档。

🌐 Refer to Salesforce's External Client App Basics documentation for more information.

创建已连接的应用(旧版)(Create a Connected App (legacy))#

传统方法

Salesforce 正在弃用连接应用。对于新的集成,请改用外部客户端应用。

要进行设置,首先你需要创建私钥和证书,然后创建一个关联的应用:

🌐 To set things up, first you'll create a private key and certificate, then a connected app:

  1. 在 n8n 中,为你的连接选择 环境类型。从 生产环境沙盒环境 中选择最能描述你环境的选项。
  2. 请输入你的 Salesforce 用户名
  3. 登录你的 Salesforce 组织。
  4. 你需要一个由认证机构颁发的私钥和证书。你可以使用自己的密钥/证书,或者使用 OpenSSL 创建密钥和自签名数字证书。有关创建你自己的密钥和证书的说明,请参阅 Salesforce 的 创建私钥和自签名数字证书文档
  5. 在 Salesforce 的 设置 中,在快速查找框中输入 App Manager,然后选择 应用管理器
  6. 在应用管理器页面,选择 新建连接应用
  7. 输入已连接应用所需的基本信息,包括名称联系邮箱地址。有关更多信息,请参阅 Salesforce 的配置基本连接应用设置文档。
  8. 勾选此框以启用 OAuth 设置
  9. 回调 URL 中输入 http://localhost:1717/OauthRedirect。10. 勾选 使用数字签名。11. 选择 选择文件 并上传包含你的数字证书的文件,例如 server.crt。12. 添加这些 OAuth 范围
    • 完全访问(完整)
    • 随时执行请求(refresh_token, offline_access)13. 选择 保存,然后选择 继续管理已连接的应用 页面应该会打开到你刚创建的应用。14. 在 API(启用 OAuth 设置) 部分,选择 管理消费者详情。15. 复制 消费者密钥 并将其作为 客户端 ID 添加到你的 n8n 凭证中。16. 在 n8n 中输入私钥文件的内容作为 私钥
    • 使用 n8n 中的多行编辑器。
    • 以标准 PEM 密钥格式输入私钥:

      1
      2
      3
      -----BEGIN PRIVATE KEY-----
      KEY DATA GOES HERE
      -----END PRIVATE KEY-----
      

这些步骤是 n8n 端所需的。Salesforce 还建议设置刷新令牌策略、会话策略和 OAuth 策略:

🌐 These steps are what's required on the n8n side. Salesforce recommends setting refresh token policies, session policies, and OAuth policies too:

  1. 在 Salesforce 中,选择 返回管理已连接的应用
  2. 选择 管理
  3. 选择 编辑策略
  4. 查看 刷新令牌策略 字段。Salesforce 建议使用 90 天后过期的刷新令牌。
  5. 会话策略 部分,Salesforce 建议将 超时值 设置为 15 分钟。
  6. OAuth 策略 部分,选择 管理员批准的用户为允许用户预先授权 作为 允许用户,然后选择 确定
  7. 选择 保存
  8. 选择 管理配置文件,选择已被预先授权使用此连接应用的配置文件,然后选择 保存
  9. 选择 管理权限集 来选择权限集,如有必要创建权限集。

有关更多信息,请参考 Salesforce 的在你的组织中创建连接应用文档。

🌐 Refer to Salesforce's Create a Connected App in Your Org documentation for more information.

使用 OAuth2(Using OAuth2)#

要配置此凭证,你需要一个 Salesforce 账户。

🌐 To configure this credential, you'll need a Salesforce account.

你需要选择你的环境类型。在生产环境沙盒环境之间进行选择。

🌐 You will need to select your Environment Type. Choose between Production and Sandbox.

如果你正在自托管 n8n,则需要通过创建外部客户端应用从头配置 OAuth2:

🌐 If you're self-hosting n8n, you'll need to configure OAuth2 from scratch by creating an external client app:

  1. 在 n8n 中,为你的连接选择 环境类型。从 生产环境沙盒环境 中选择最能描述你环境的选项。
  2. 请输入你的 Salesforce 用户名
  3. 登录你的 Salesforce 组织。
  4. 在 Salesforce 的 设置 中,在快速查找框中输入 App Manager,然后选择 应用管理器
  5. 在应用管理页面,选择 新建外部客户端应用
  6. 请输入你的外部客户端应用所需的基本信息,包括名称联系电子邮件地址
  7. API(启用 OAuth 设置) 下,选择 启用 OAuth
  8. Callback URL 框中,添加你的 n8n OAuth 回调 URL(例如,https://your-n8n-instance.com/rest/oauth2-credential/callback。对于 n8n Cloud,这将是 https://oauth.n8n.cloud/oauth2/callback)。
  9. OAuth 范围 部分,选择以下范围:
    • 完全访问(完整)
    • 随时执行请求(refresh_token,offline_access)10. 在 流程启用 部分,选择 启用授权代码和凭证流程。11. 在 OAuth 策略 下,确保以下设置已 勾选
    • Web 服务器流程需要密钥
    • 刷新令牌流程需要密钥
    • 在支持的授权流中要求使用代码交换证明密钥 (PKCE) 扩展12. 选择 保存,然后 继续。13. 复制 消费者密钥 并将其添加到你的 n8n 凭证中作为 客户端 ID。14. 复制 消费者密钥 并将其添加到你的 n8n 凭证中作为 客户端密钥

有关更多信息,请参阅 Salesforce 的 外部客户端应用基础 文档。

🌐 Refer to Salesforce's External Client App Basics documentation for more information.

创建已连接的应用(旧版)(Create a Connected App (legacy))#

传统方法

Salesforce 正在弃用连接应用。对于新的集成,请改用外部客户端应用。

如果你正在自托管 n8n,你也可以通过创建一个已连接的应用来配置 OAuth2:

🌐 If you're self-hosting n8n, you can also configure OAuth2 by creating a connected app:

  1. 在 n8n 中,为你的连接选择 环境类型。从 生产环境沙盒环境 中选择最能描述你环境的选项。
  2. 请输入你的 Salesforce 用户名
  3. 登录你的 Salesforce 组织。
  4. 在 Salesforce 的 设置 中,在快速查找框中输入 App Manager,然后选择 应用管理器
  5. 在应用管理器页面,选择 新建连接应用
  6. 输入已连接应用所需的基本信息,包括名称联系邮箱地址。有关更多信息,请参阅 Salesforce 的配置基本连接应用设置文档。
  7. 勾选此框以启用 OAuth 设置
  8. 对于 回调 URL,请输入 http://localhost:1717/OauthRedirect
  9. 添加这些 OAuth 范围
    • 完全访问(完整)
    • 随时执行请求(refresh_token、offline_access)10. 确保取消选中以下设置:
    • 要求在受支持的授权流程中使用代码交换(PKCE)扩展
    • Web 服务器流程需要密钥
    • 刷新令牌流程需要密钥
  10. 选择 保存,然后选择 继续管理已连接的应用 页面应打开到你刚创建的应用。
  11. API(启用 OAuth 设置) 部分,选择 管理消费者详细信息
  12. 复制 消费者密钥 并将其添加到你的 n8n 凭证中,作为 客户端 ID
  13. 复制 消费者密钥 并将其添加到你的 n8n 凭证中,作为 客户端密钥

这些步骤是 n8n 端所需的。Salesforce 还建议设置刷新令牌策略和会话策略:

🌐 These steps are what's required on the n8n side. Salesforce recommends setting refresh token policies and session policies, too:

  1. 在 Salesforce 中,选择 返回管理已连接的应用
  2. 选择 管理
  3. 选择 编辑策略
  4. 查看 刷新令牌策略 字段。Salesforce 建议使用在 90 天后过期的刷新令牌。
  5. 会话策略 部分,Salesforce 建议将 超时值 设置为 15 分钟。

有关更多信息,请参考 Salesforce 的在你的组织中创建连接应用文档。

🌐 Refer to Salesforce's Create a Connected App in Your Org documentation for more information.

常见问题(Common issues)#

从 n8n Cloud 使用 Salesforce 进行身份验证时出现连接问题(Connection issues when authenticating with Salesforce from n8n Cloud)#

如果你在使用 n8n Cloud 进行 Salesforce 身份验证时遇到连接问题,你可能需要在 Salesforce 用户配置文件中启用特定的系统权限:

🌐 If you encounter connection issues when authenticating with Salesforce from n8n Cloud, you might need to enable a specific system permission in your Salesforce user profiles:

  1. 在 Salesforce 中,进入 设置
  2. 快速查找 框中,搜索 Profiles
  3. 选择连接到 n8n 的用户使用的配置文件(例如,系统管理员或相关配置文件)。
  4. 点击 编辑 或使用新的 个人资料 界面(如果可用)。
  5. 找到管理权限部分。
  6. 勾选 为非管理员批准已连接的应用 的复选框。根据你的 Salesforce 语言或翻译,这个复选框也可能显示为 批准已连接但未安装的应用
  7. 点击 保存

此权限默认未启用,即使是管理员配置文件,也必须手动激活。没有此权限时,当尝试将 n8n 连接到 Salesforce 时,你可能会遇到身份验证失败的问题。

🌐 This permission isn't enabled by default, even for administrator profiles, and must be manually activated. Without this permission, you might experience authentication failures when trying to connect n8n to Salesforce.