7

我目前正在尝试使用社交媒体登录,并意识到这些登录的传递方式有些奇怪,这是因为我的工作场所与大多数办公室一样,将第 3 方 cookie 作为安全策略进行阻止。

Google Firebase 身份验证使用第 3 方 cookie,因此如果我尝试使用 Firebase,我将被重定向到 Google 页面(如预期的那样),但是当我在登录后被重定向回原始网页时(并且 Firebase 尝试设置 cookie) ,我收到一条错误消息This browser is not supported or 3rd party cookies and data may be disabled.

但是,MongoDB Stitch以某种方式工作并且我能够实际登录,即使禁用了 3rd 方 cookie。我真的无法理解为什么会这样,但我希望这里有人能对此有所了解。如果有帮助,MongoDB Stitch 会要求您在 Google 控制台中将其设置https://stitch.mongodb.com为 Origin URI 和https://stitch.mongodb.com/api/client/v2.0/auth/callbackAuthorized Redirect URI - 而您必须在 MongoDB 控制台中设置您自己的网站 URI,我认为这可能会有所不同?

无论如何,MongoDB Stitch 的文档严重不足(由于它仍处于公开测试阶段),所以如果可能的话,我真的很想采用 Google Firebase 的方式。

  1. 有谁知道 MongoDB Stitch 如何绕过设置 3rd Party Cookies
  2. 如何在禁用 3rd Party Cookie 的情况下使用 Google Firebase 身份验证
4

1 回答 1

2

您是否尝试过使用Javascriptgapi.auth2Google 登录库?上次我检查时,它在禁用 3rd 方 cookie 的情况下工作。您可以使用它来获取 Google ID 令牌或访问令牌,然后登录 Firebase:

firebase.auth().signInWithCredential(firebase.auth.GoogleAuthProvider.credential(googleIdToken, googleAccessToken))...`
于 2018-02-14T07:12:55.620 回答