允许 Chrome 在关联的网站之间共享登录凭据

如果您使用同一个账号管理后端的多个网域,那么现在还可以将这些网域相互关联,这样一来,用户只需保存一次凭据,然后 Chrome 密码管理工具便会将这些凭据推荐给任何关联网站。

Milica Mihajlija
Milica Mihajlija

Chrome 的密码管理工具已针对已保存的网站自动填充凭据 以及以下两种情况下的身份验证:

  1. 当两个网站 同网站关系;Chrome 如果至少存在一个网站 凭据已保存到一个网站上。例如,因为 www.example.comm.example.com 是同一网站,Chrome 可以共享已保存的凭据 并向其他网站建议已保存的密码。
  2. 当开发者将 Android 应用与使用 Chrome 可以在相应网站上提供 Android 凭据建议。应用 都与使用 Digital Asset Links (DAL)

现在,您还可以关联跨网站关系的网站 一次保存凭据,然后让密码管理器将这些凭据 相关联。

如果您采用的多个网域共享同一个账号管理后端 (例如 https://www.example.comhttps://www.example.co.uk),从 91 版,您可以允许 Chrome 提供保存到网域中的密码建议 关联 Digital Asset Links。

要建立 DAL 关联,开发者需要放置一个 JSON 文件,该文件的 DAL 语法 位于 /.well-known/assetlinks.json 上。

前提条件

  1. 使用 Chrome 91 或更高版本。
  2. chrome://flags#filling-across-affiliated-websites 中启用该标志。
  3. 确保选择“提示保存密码”在以下设备上已开启 chrome://settings/passwords
  4. 确保您网站的登录域名可通过 HTTPS 访问。

关联您的两个网站

  1. 若要声明相应网站,例如 https://www.example.com,可与以下用户分享凭据: https://www.example.co.uk,创建一个名为 assetlinks.json 且包含 以下内容:

    [{
      "relation": ["delegate_permission/common.get_login_creds"],
      "target": {
        "namespace": "web",
        "site": "https://www.example.com"
      }
     },
    {
      "relation": ["delegate_permission/common.get_login_creds"],
      "target": {
        "namespace": "web",
        "site": "https://www.example.co.uk"
      }
    }]
    

    relation 字段是包含一个或多个字符串的数组,用于描述 关系。对于要共享登录凭据的网站, 指定字符串 delegate_permission/common.get_login_credstarget 字段是一个对象,用于指定声明中的资源 应用范围。以下字段用于标识网站:

    namespace 对于网站,此值必须为 web
    site 网站的网址,格式为 https://domain[:optional_port]; 例如 https://www.example.com

    请参阅 Digital Asset Links 参考文档 了解详情。

  2. 将 Digital Asset Links JSON 文件托管在以下位置: 登录网域:https://domain[:optional_port]/.well-known/assetlinks.json

    在此示例中,网域是 www.example.com,因此 JSON 文件应 托管在 https://www.example.com/.well-known/assetlinks.json 上。

    Digital Asset Links 文件的 MIME 类型必须是 JSON。确保服务器在响应中发送 Content-Type: application/json 标头。

  3. 要在这两个网站中声明关联,请托管 assetlinks.jsonhttps://www.example.co.uk/.well-known/assetlinks.json 以及:

    [{
      "relation": ["delegate_permission/common.get_login_creds"],
      "target": {
        "namespace": "web",
        "site": "https://www.example.com"
      }
     },
    {
      "relation": ["delegate_permission/common.get_login_creds"],
      "target": {
        "namespace": "web",
        "site": "https://www.example.co.uk"
      }
    }]
    
  4. 确保您的托管服务商允许 Google 检索您的数字资产 链接文件。如果您有 robots.txt 文件,则该文件必须允许 Googlebot 来检索 /.well-known/assetlinks.json。大多数网站只需要 允许任何自动化代理检索 /.well-known/ 路径下的文件, 以便其他服务可以访问这些文件中的元数据:

    User-agent: *
    Allow: /.well-known/
    

将多个网站相互关联

您可以将多个网站相互关联,只需在 Digital Asset Links 文件中。例如,如需关联 example.com,请执行以下操作: example.co.uk,example.co.jp,请在“管理”部分中指定所有这些网站 assetlinks.json JSON 文件,并将其托管在 https://EXAMPLE_DOMAIN_NAME/.well-known/assetlinks.json

[{
     "relation":[
        "delegate_permission/common.get_login_creds"
     ],
     "target":{
        "site":"https://www.example.com",
        "namespace":"web"
     }
  },
  {
     "relation":[
        "delegate_permission/common.get_login_creds"
     ],
     "target":{
        "site":"https://www.example.co.uk",
        "namespace":"web"
     }
  },
  {
     "relation":[
        "delegate_permission/common.get_login_creds"
     ],
     "target":{
        "site":"https://www.example.co.jp",
        "namespace":"web"
     }
  }]