将 Auth0 与 Google 集成时检查 SSO 会话
Checking for SSO session when integrating Auth0 with Google
我正在使用 Auth0 通过 Google 社交帐户实现 SSO,代码如下:
this.auth0.getSSOData(function (err, data) {
if (!isAuthCallback && !err && data.sso) { //Problem line
// ...
}
}
如果我使用 Auth0 内置用户名和密码身份验证,则 data.sso
returns true
,这意味着 SSO 会话处于活动状态。
但是,如果我使用 Google 之类的东西进行身份验证,则 data.sso
returns false
。我该如何解决这个问题?
如果您正确启用了标志 使用 Auth0 而不是 IdP 进行单点登录并且您仍然观察到此行为,最可能的原因是您正在使用Google 社交关系中的 Auth0 开发者密钥。
不使用自己的密钥的一个问题是 SSO 将无法正常运行;有关其他约束的更多信息,请参阅 Using the Auth0 Developer Keys with Social Connections。
Single Sign On will not function properly when using the Auth0 developer keys. The reason for this is that the Auth0 developer applications with all the relevant Identity Providers are configured to call back to the URL https://login.auth0.com/login/callback
instead of the callback URL for your own tenant, i.e. https://YOUR_AUTH0_DOMAIN/login/callback
.
This results in the SSO cookie not being set on your own tenant domain, so the next time a user authenticates no SSO cookie will be detected, even if you configured your client to Use Auth0 instead of the Identity Provider to do Single Sign On.
(重点是我的)
我正在使用 Auth0 通过 Google 社交帐户实现 SSO,代码如下:
this.auth0.getSSOData(function (err, data) {
if (!isAuthCallback && !err && data.sso) { //Problem line
// ...
}
}
如果我使用 Auth0 内置用户名和密码身份验证,则 data.sso
returns true
,这意味着 SSO 会话处于活动状态。
但是,如果我使用 Google 之类的东西进行身份验证,则 data.sso
returns false
。我该如何解决这个问题?
如果您正确启用了标志 使用 Auth0 而不是 IdP 进行单点登录并且您仍然观察到此行为,最可能的原因是您正在使用Google 社交关系中的 Auth0 开发者密钥。
不使用自己的密钥的一个问题是 SSO 将无法正常运行;有关其他约束的更多信息,请参阅 Using the Auth0 Developer Keys with Social Connections。
Single Sign On will not function properly when using the Auth0 developer keys. The reason for this is that the Auth0 developer applications with all the relevant Identity Providers are configured to call back to the URL
https://login.auth0.com/login/callback
instead of the callback URL for your own tenant, i.e.https://YOUR_AUTH0_DOMAIN/login/callback
.This results in the SSO cookie not being set on your own tenant domain, so the next time a user authenticates no SSO cookie will be detected, even if you configured your client to Use Auth0 instead of the Identity Provider to do Single Sign On.
(重点是我的)