我正在致力于实施 SSO。假设我有一个网站 app1,我们在其中使用 PingIdentity 作为 OIDC 协议的 IdP。我们有 Moodle 平台,并希望我们的用户通过单击按钮(反应)从我们的网站访问它。 Moodle 不应要求重新验证
因此,我从 Moodle 获取了基于 OIDC 的插件并对其进行了配置,还在 Ping 上进行了配置。现在,我登录我的网站并点击 URL 来访问 Moodle,这是第一次,它会提示凭据,这是我们想要避免的。在浏览器关闭之前,我们可以通过单击按钮注销并登录。我们的要求是,我们不希望客户第二次输入凭据,用户应该在已经登录我的网站的情况下随时无缝登录 Moodle。
我的网站是 Nodejs 无服务器 Web 应用程序,使用 PingIdentity 作为 Idp 和 OIDC 协议。
(另外,当用户登录我的门户时,是否可以在内部向 Moodle 发送身份验证请求,因为凭据和 IdP 相同)
根据您的描述,只要两个应用程序都使用 Ping 和相同的身份验证方法,这应该有效。
网站和 Moodle 如何进行登录重定向?它们都是全窗口重定向吗?
请注意,iframe 上的重定向将删除 SSO cookie。另请检查 Moodle 是否未发送 OpenID Connect
prompt=login
参数。
由于 SSO 是通过 Ping SSO cookie 启用的,您接下来可能需要在浏览器工具中进行一些浏览器跟踪:
对于网站,请检查
set-cookie
标头,其中 Ping cookie 将使用 SameSite=none
对于 Moodle OIDC 重定向,请检查
cookie
请求标头中是否包含相同的 cookie。如果是,您就知道这不是 cookie 问题,接下来的步骤是检查 Ping 配置和日志。