我是SalesForce及其Apex语言的新手。我一直在阅读一些文档,并尝试了Google和SalesForce之间的集成。
我想知道是否可以模仿从谷歌到SalesForce的身份验证令牌?
我正在尝试阅读Google电子表格,然后自动填写SalesForce对象。对于此电子表格,用户登录将始终相同/通用,因此我具有登录所需的凭据。 我正在处理需要visualforce的示例,我想知道如何自动执行google电子表格API所需的会话ID令牌。
有什么想法吗?
答案 0 :(得分:1)
老派,艰难的方式是向API发送login()调用(通过SOAP消息提供)。 Salesforce API已有详细记录,并提供了大量示例(包括编程语言和raw XML requests/responses)。
但我不知道你有什么可能来自Google方面,如果它只是JavaScript,那么你可能无法发送和检索类似AJAX的呼叫到另一个域......
最近出现了另一个选项,那就是REST API(不需要SOAP)。在我看来,看起来更有前途,更容易。可以使用快速介绍here,您可以在页面底部找到更多文档。
最后但并非最不重要的 - 2个有趣的链接: http://code.google.com/apis/gdata/articles/salesforce.html用于某些集成教程 和Salesforce提供的内置集成:http://www.salesforce.com/assets/pdf/datasheets/SalesforceGoogleApps.pdf
答案 1 :(得分:1)
我使用自定义设置来执行此操作。使用OAuth获取Google的令牌,然后将该令牌存储在Salesforce自定义设置中(Setup-Develop-Custom Settings)。然后,您可以针对需要访问Google Apps的任何用户,从该自定义设置中检索用于Google的标注令牌。缺点是,每个用户都将作为自定义设置令牌用户进行身份验证。好处是他们不需要单独验证。自定义设置可以使用简单的getter通过Apex检索,并作为类似Apex的对象生存。
另请注意,Google要求每项服务都使用自己的令牌。因此,如果您的用户想要使用日历和电子表格,则需要为标注存储和检索两个单独的标记。
我通常允许用户通过OAuth创建自己经过身份验证的会话令牌(如果他们想要这样做),然后根据需要故障转移到自定义设置以获取常规管理令牌。
答案 2 :(得分:0)
您是否尝试从SFDC登录Google Apps? Salesforce中有Google Apps的选项,请转到设置>管理设置> Google Apps>设置。我没有使用它,它需要一些设置,但我想我会指出它。除此之外,我只能脱口而出(让用户在尝试访问Google Apps时从Salesforce内部对Google进行身份验证)和SSO(我知道可以用来从外部系统进行身份验证,但不确定它是否适用于其他系统)方式)。
答案 3 :(得分:0)
在salesforce设置中查看“命名凭证”菜单。 在那里,您可以存储通过Apex访问的服务的身份验证凭据:
“命名凭证指定了标注端点及其必需的身份验证参数。设置标注时,请避免通过引用命名凭证为每个标注设置鉴定参数。”
可以使用用户名/密码组合,证书,AWS签名和JWT选项。
帮助文档:https://help.salesforce.com/articleView?id=named_credentials_about.htm&type=5