我正试图连接到salesforce实例,并通过python脚本提取数据,但我在走出大门时遇到了麻烦。我有一封电子邮件,提供以下信息:
用户名
配置文件名称
Id
组织Id
存取令牌
实例Url
登录Url
别名
密码
我可以直接登录到登录URL,所以我知道凭据可以工作。我试图跟随简单的salesforce文档,所以我的代码如下所示:
from simple_salesforce import Salesforce
import pandas as pd
sf = Salesforce(
username='test@example.com',
password='password',
security_token='the_provided_access_token')
为此,我得到了错误"SalesforceAuthenticationFailed: INVALID_LOGIN:无效的用户名、密码、安全令牌;或用户被锁定.“
我理解安全令牌和访问令牌之间有区别。我认为我从未收到过安全令牌,是否有一种方法可以使用访问令牌通过身份验证?我对REST非常陌生,这有点让人困惑。
我不确定IP白名单,我听说这可能是个问题。
发布于 2022-11-29 09:50:39
access_token就像一个会话id (当您使用SF作为网站时,它存储在cookie中)。最终会失效的。可能是上次使用后的2小时,我想最多是12小时。适当的整合不应依赖于它。
如果你真的想要的话,你可以使用它,但是它很可能已经过期了。检查simple的文档并修改
sf = Salesforce(instance='na1.salesforce.com', session_id='')
sf = Salesforce(instance_url='https://na1.salesforce.com', session_id='')
安全令牌是特别的东西,你可以通过电子邮件接收(一旦你第一次请求它-新的令牌将发送与每一个密码重置)。
如果您不想使用安全令牌,但您知道您的应用程序将始终使用相同的IP地址(因为它位于某个内部服务器上),您可以使用安装->网络访问并将IP范围标记为安全。从他们的访问应该是可行的没有安全令牌(和网站访问-没有一次发送到电子邮件的密码)
https://stackoverflow.com/questions/74594521
复制相似问题