使用 Auth0 作为身份提供者的静默 SAML 身份验证
Silent SAML Authentication using Auth0 as Identity Provider
我正在尝试做的是使用 SAML 2.0 协议以 Auth0 作为身份提供者的静默身份验证。我不想使用 Auth0 SDK,因为服务器提供者的目的是能够在身份提供者之间进行更改。我读过这个post and this other。
我从
更新了我的登录名 url
https://{your_domain}.auth0.com/samlp/{client_id}
到
https://{your_domain}.auth0.com/samlp/{client_id}={connection your_db_connection_name}
如第一个 link 中所述,但这只允许我在用户已经存在会话时避免重定向。第二个link引用了url中的一个参数:
prompt = none
但是这个是针对OpenId Connect协议的,所以帮不了我。
当前流程如下:
- 用户将凭据发送到我的服务器提供商(这是无用的,因为
Auth0 需要他的小部件中的凭据)
- 服务器提供商向 Auth0 请求 SAML 身份验证
- Auth0 将用户重定向到他的登录小部件(用户输入
再次凭据)
- 用户获得访问权限
我要实现的是:
- 用户将凭据发送到我的服务器提供商
- 服务器提供商集成了凭据(这是我做的地方
不知道如何)在 SAML 2.0 请求中
- Auth0 接收并验证凭据(没有任何类型的
重定向)
- 用户获得访问权限
我在用什么:
- 作为服务器提供商,带有 Express 和 saml2-js 库的 Node JS
- 作为身份提供者,在 Auth0 上带有 SAML2 Web 应用程序附加组件的常规 Web 应用程序
我是 SAML 和 Auth0 的新手,我还不太了解。欢迎任何指导或建议。谢谢。
(如果我的英文有问题,请不要犹豫评论,谢谢)
我研究过这个,发现不可能实现(现在不行,也许将来)。
使用 HTTP-Post 绑定允许仅在用户会话已存在时避免重定向。如果没有,用户将被重定向到 IdP 登录页面(在本例中为 Auth0 的登录页面)
SAML协议中有一个配置文件,叫做Enhanced Client or Proxy(ECP),但很少使用,推荐用于不能使用浏览器的应用。
此外,只有一些 IdP 支持它,例如 Keycloak and Shibboleth。
我正在尝试做的是使用 SAML 2.0 协议以 Auth0 作为身份提供者的静默身份验证。我不想使用 Auth0 SDK,因为服务器提供者的目的是能够在身份提供者之间进行更改。我读过这个post and this other。 我从
更新了我的登录名 urlhttps://{your_domain}.auth0.com/samlp/{client_id}
到
https://{your_domain}.auth0.com/samlp/{client_id}={connection your_db_connection_name}
如第一个 link 中所述,但这只允许我在用户已经存在会话时避免重定向。第二个link引用了url中的一个参数:
prompt = none
但是这个是针对OpenId Connect协议的,所以帮不了我。
当前流程如下:
- 用户将凭据发送到我的服务器提供商(这是无用的,因为 Auth0 需要他的小部件中的凭据)
- 服务器提供商向 Auth0 请求 SAML 身份验证
- Auth0 将用户重定向到他的登录小部件(用户输入 再次凭据)
- 用户获得访问权限
我要实现的是:
- 用户将凭据发送到我的服务器提供商
- 服务器提供商集成了凭据(这是我做的地方 不知道如何)在 SAML 2.0 请求中
- Auth0 接收并验证凭据(没有任何类型的 重定向)
- 用户获得访问权限
我在用什么:
- 作为服务器提供商,带有 Express 和 saml2-js 库的 Node JS
- 作为身份提供者,在 Auth0 上带有 SAML2 Web 应用程序附加组件的常规 Web 应用程序
我是 SAML 和 Auth0 的新手,我还不太了解。欢迎任何指导或建议。谢谢。
(如果我的英文有问题,请不要犹豫评论,谢谢)
我研究过这个,发现不可能实现(现在不行,也许将来)。
使用 HTTP-Post 绑定允许仅在用户会话已存在时避免重定向。如果没有,用户将被重定向到 IdP 登录页面(在本例中为 Auth0 的登录页面)
SAML协议中有一个配置文件,叫做Enhanced Client or Proxy(ECP),但很少使用,推荐用于不能使用浏览器的应用。
此外,只有一些 IdP 支持它,例如 Keycloak and Shibboleth。