我在 Salesforce 和 Okta(OIE) 之间启用了 SAML SSO。 我在发送给用户的电子邮件中嵌入了 Salesforce 链接。当用户单击此链接时,用户将被重定向到 okta 登录页面。我们希望在单击电子邮件中的 salesforce 链接时在 okta 登录页面中自动填充 okta 用户名。
如果我直接点击这个 URL 并且这有效,Okta 会填充用户名。
https://example.okta.com/login/[email protected]
所以我尝试通过如下所示的两种方式将其添加到 Salesforce URL。这行不通。在此流程中发起 SAML 请求时,Okta 查询参数丢失。
https://example.salesforce.com?so=https://example.okta.com/login/[email protected]
https://example.force.com?startURL=https://example.force.com/mycompany/s/new-application?recordId=b544u56783KKIq&[email protected]
有什么见解吗?
问题似乎是在流程期间启动 SAML 请求时,Okta 查询参数丢失了。一种解决方案是修改 Salesforce 链接以包含一个自定义重定向 URL,该 URL 将 Okta 用户名作为查询参数。
例如,链接可以修改为:
这样,当用户单击电子邮件中的链接时,他们将被重定向到 Okta 登录页面,并在登录表单中预先填充 Okta 用户名。用户登录后,SAML 流程应照常继续。
您需要修改重定向 URL 以匹配实际的 Okta 应用程序 URL,并更新查询参数名称以匹配 Okta 中的预期名称。