如何在salesforce.com中创建自定义登录页面?

时间:2010-04-15 06:50:40

标签: salesforce apex-code

是否可以在salesforce.com中创建自定义登录页面?如果是这样,任何人都可以提供帮助来创建页面和验证部分吗?

3 个答案:

答案 0 :(得分:7)

要考虑的几件事情:

  • 此网页是否会在您的网站上托管?
  • 这是否会用于多个销售团队?

您可以做的一件事是使用login() API调用来获取会话ID。您将能够判断登录是否失败,并正确地提醒用户。

从那里,您必须通过“frontdoor.jsp”页面重定向用户,该页面具有以下格式:

  • 的https:// <强> [主机] .salesforce.com / SECUR / frontdoor.jsp SID = <强> [SESSION_ID] &安培; retURL = <强> [START_PAGE]

其中:

  • [主持人] - 因组织而异。我见过的一些是na1,na2,....如果你只是为一个组织构建这个,你可以硬编码这个值。如果要为多个组织构建,可以从返回的LoginResult的serverUrl属性中解析它。
  • [session_id] - 从返回的LoginResult
  • 中获取此信息
  • [start_page] - 这是可选的,但可以用来在用户登录后将其“深层链接”到页面。

编辑:2014-08-25

Salesforce现在正式支持此答案(link)中描述的frontdoor.jsp登录方法。此外,session_ID令牌可以从以下任何来源获得:

  1. 来自OAuth身份验证的access_token。请注意,创建连接应用时指定的其中一个范围必须为Web或已满。
  2. 从SOAP API login()调用返回的LoginResult
  3. Apex UserInfo.getSessionId()

答案 1 :(得分:3)

这可以使用Ajax Toolkit,我写了如何并共享代码http://brianpeddle.com/2011/06/06/building-a-custom-salesforce-login/

我知道这已经过时了但如果有人偶然发现这可能会有所帮助。

答案 2 :(得分:0)

Salesforce ideas网站上有一些信息here。 Salesforce.com目前不支持自定义登录页面,但听起来您可以使用Force.com sites完成此操作。