在没有第 3 方 Cookie 的情况下使用 Google Firebase 身份验证
Use Google Firebase Authentication without 3rd Party Cookies
我目前正在尝试使用社交媒体登录,并意识到这些登录的传送方式有些奇怪,这是因为我的工作场所,像大多数办公室一样,将第三方 cookie 作为安全策略来阻止.
Google Firebase Authentication 使用第 3 方 cookie,因此如果我尝试使用 Firebase,我将被重定向到 Google 页面(如预期的那样),但是当我被重定向回原始网页时登录后(并且 Firebase 尝试设置 cookie),我收到一条错误消息 This browser is not supported or 3rd party cookies and data may be disabled.
但是,MongoDB Stitch 以某种方式起作用,我能够实际登录,即使禁用了第 3 方 cookie。我似乎真的无法理解为什么会这样,但我希望这里有人可以对此有所了解。如果有帮助,MongoDB Stitch 会要求您在 Google 控制台中将 https://stitch.mongodb.com
设置为原始 URI,将 https://stitch.mongodb.com/api/client/v2.0/auth/callback
设置为授权重定向 URI - 同时您必须设置自己的网站 URI在 MongoDB 控制台内,我认为这可能是不同之处?
无论如何,MongoDB Stitch 的文档严重不足(由于它仍处于 Public Beta 阶段)所以我真的很想采用 Google Firebase 方式,如果一切皆有可能。
- 有谁知道 MongoDB Stitch 如何绕过设置第 3 方 Cookies
- 如何在禁用第 3 方 Cookie 的情况下使用 Google Firebase 身份验证
您是否尝试过使用 gapi.auth2
,Google sign in library 用于 Javascript?
上次我检查时,它在禁用第 3 方 cookie 的情况下工作。您可以使用它获取 Google ID 令牌或访问令牌,然后登录 Firebase:
firebase.auth().signInWithCredential(firebase.auth.GoogleAuthProvider.credential(googleIdToken, googleAccessToken))...`
我目前正在尝试使用社交媒体登录,并意识到这些登录的传送方式有些奇怪,这是因为我的工作场所,像大多数办公室一样,将第三方 cookie 作为安全策略来阻止.
Google Firebase Authentication 使用第 3 方 cookie,因此如果我尝试使用 Firebase,我将被重定向到 Google 页面(如预期的那样),但是当我被重定向回原始网页时登录后(并且 Firebase 尝试设置 cookie),我收到一条错误消息 This browser is not supported or 3rd party cookies and data may be disabled.
但是,MongoDB Stitch 以某种方式起作用,我能够实际登录,即使禁用了第 3 方 cookie。我似乎真的无法理解为什么会这样,但我希望这里有人可以对此有所了解。如果有帮助,MongoDB Stitch 会要求您在 Google 控制台中将 https://stitch.mongodb.com
设置为原始 URI,将 https://stitch.mongodb.com/api/client/v2.0/auth/callback
设置为授权重定向 URI - 同时您必须设置自己的网站 URI在 MongoDB 控制台内,我认为这可能是不同之处?
无论如何,MongoDB Stitch 的文档严重不足(由于它仍处于 Public Beta 阶段)所以我真的很想采用 Google Firebase 方式,如果一切皆有可能。
- 有谁知道 MongoDB Stitch 如何绕过设置第 3 方 Cookies
- 如何在禁用第 3 方 Cookie 的情况下使用 Google Firebase 身份验证
您是否尝试过使用 gapi.auth2
,Google sign in library 用于 Javascript?
上次我检查时,它在禁用第 3 方 cookie 的情况下工作。您可以使用它获取 Google ID 令牌或访问令牌,然后登录 Firebase:
firebase.auth().signInWithCredential(firebase.auth.GoogleAuthProvider.credential(googleIdToken, googleAccessToken))...`