我将假设您的组织中有 My Domains 设置和 SAML 2.0 设置,并且您正在尝试将未经身份验证的页面请求路由到其适当的身份验证源。
由于您无法在原始未经身份验证的请求中区分用户 1 和 2,因此您需要一个要求用户输入的插页式页面,即“让我使用用户名/密码登录”或“我使用单点登录”。在您的 SAML 设置的“身份提供商登录 URL”部分中指向此页面。如果用户选择用户名/密码,将用户重定向到 My Domains 登录页面,他们将使用 un/pw 登录。如果他们选择 SSO,则将它们发送到您的 IDP 并传播 SAML 请求和中继状态以启动 SAML 协议。
同样,对自定义应用程序的未经身份验证的请求需要重定向到 IDP,以便它们启动 SAML。自定义应用程序是在 salesforce 内部(作为不同的选项卡集),还是在 salesforce 外部托管?如果自定义应用程序与 salesforce 分离,您需要设置身份提供程序,使其具有 2 个 RP:一个用于 salesforce,一个用于此自定义应用程序。如果定制应用程序在 salesforce 中,用户将如何表达访问 salesforce 与定制应用程序的意图?