You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python连接Salesforce遇认证失败,如何使用Access Token认证?

解决simple-salesforce认证失败问题

核心问题:Access Token ≠ Security Token

你遇到的错误是因为把Access Token当成了Security Token传入,这是两个完全不同的认证凭证:

  • Security Token是Salesforce用于用户名+密码登录API时的附加验证项,和用户账号绑定
  • Access Token是OAuth认证流程后得到的会话令牌,直接代表已认证的会话

用Access Token直接完成认证

simple-salesforce支持直接使用已有的Access Token和Instance URL初始化客户端,不需要用户名、密码和Security Token。代码示例如下:

from simple_salesforce import Salesforce
import pandas as pd

# 替换为你邮件里的对应值
sf = Salesforce(
    instance_url='https://your-instance.salesforce.com',
    session_id='your-provided-access-token'
)

这里的session_id参数就是你拿到的Access Token,instance_url用邮件中提供的地址即可,这样就能直接建立已认证的连接。

若要使用用户名+密码+Security Token登录

如果你之后想改用这种方式,需要获取正确的Security Token:

  • 登录Salesforce网页端,点击右上角头像→设置
  • 在左侧导航栏进入我的个人信息→重置我的安全令牌
  • 系统会将新的Security Token发送到你的注册邮箱,拿到后替换代码中的security_token参数即可

IP白名单的影响

如果你的机器IP不在Salesforce org的信任IP列表中,使用用户名+密码登录API时必须提供Security Token,否则会触发认证失败。而使用Access Token认证时,是否受IP限制取决于该令牌的生成规则:如果这个Access Token是在信任IP环境下生成的,非信任IP调用可能会被拒绝,你可以先测试上述Access Token的登录方式,验证是否存在IP限制。

内容的提问来源于stack exchange,提问作者lengthy_preamble

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 01:50:31