使 iframe 在 Safari 中从父级继承 cookie

Making an iframe inherit cookies from the parent in Safari

我的网络应用程序扩展了 Google 表单的功能,将其加载为 iframe,并在 iframe 之外执行其他操作。如果 Google 表单需要身份验证,Google 会使 "Sign In" 框出现在 iframe 中。当用户单击该按钮时,将打开一个新选项卡,用户将被重定向到新选项卡中的表单。

如果用户离开我的网络应用程序,额外的功能显然将无法使用。因此,我正在寻找的是:在我的网络应用程序 .

中将 已验证 Google 表单加载为 iframe
  1. 我可以让用户先通过 Google 登录 (OAuth) 在我的网络应用程序上登录,然后加载 iframe。在 Chrome 和 Firefox 上,iframe 会自动启动登录会话。这很棒!但是,此解决方案不适用于 Safari。这与Safari blocking third-party cookies有关吗?

  2. 如果我希望此功能在 Safari(和其他此类浏览器)中运行,我将如何实现?我必须使用 Storage Access API 吗?如果是的话,你能大致告诉我怎么做吗?

  3. 现在,如果用户想使用我的网络应用程序,我可以要求他们下载 Firefox/Chrome。无论如何,我的大多数用户都是 Chrome 用户。但是,实施这些隐私措施是否也是其他浏览器路线图的一部分?如果是,我不妨尝试构建一个可以在一两年内运行的解决方案。

  1. 我希望如此。
  2. 这需要在 iFrame 中发生,因此 Google 而不是您需要实现它。
  3. 是的,但要到 2022,所以我希望 Google 届时表格将支持此功能。