Habilitar Chrome para compartir las credenciales de acceso entre los sitios afiliados

Si empleas varios dominios que comparten el mismo backend de administración de cuentas, ahora también puedes asociarlos entre sí para permitir que los usuarios guarden las credenciales una vez y que el administrador de contraseñas de Chrome las sugiera a cualquiera de los sitios web afiliados.

El administrador de contraseñas de Chrome ya autocompleta las credenciales de los sitios con credenciales guardadas, además de los siguientes dos casos:

  1. Cuando dos sitios están en la relación del mismo sitio, Chrome mostrará credenciales de autocompletado para el otro sitio si hay al menos una credencial guardada en un sitio. Por ejemplo, dado que www.example.com y m.example.com son el mismo sitio, Chrome puede compartir las credenciales guardadas entre los dos sitios y sugerir la contraseña guardada a otro.
  2. Cuando un desarrollador asocia una app para Android con un sitio que usa las mismas credenciales, Chrome puede sugerir credenciales de Android en ese sitio. Las apps se asocian con sitios que usan Vínculos de recursos digitales (DAL).

Ahora también puedes asociar sitios web en una relación entre sitios para permitir que los usuarios guarden sus credenciales una vez y que el administrador de contraseñas las sugiera a cualquiera de los sitios web afiliados.

Si empleas varios dominios que comparten el mismo backend de administración de cuentas (como https://www.example.com y https://www.example.co.uk), a partir de la versión 91, puedes habilitar Chrome para que sugiera contraseñas guardadas en dominios asociados con Vínculos de recursos digitales.

Para establecer una asociación de DAL, los desarrolladores deben colocar un archivo JSON que siga la sintaxis de DAL en /.well-known/assetlinks.json en los dominios correspondientes.

Requisitos previos

  1. Usa Chrome 91 o una versión posterior.
  2. Habilita la marca en chrome://flags#filling-across-affiliated-websites.
  3. Asegúrate de que la opción "Sugerir que se guarden las contraseñas" esté activada en chrome://settings/passwords.
  4. Asegúrate de que el dominio de acceso de tu sitio web esté disponible a través de HTTPS.

Asocia tus dos sitios web

  1. Para declarar que el sitio web, por ejemplo, https://www.example.com,, puede compartir credenciales con https://www.example.co.uk, crea un archivo llamado assetlinks.json con el siguiente contenido:

    [{
      "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"
      }
    }]
    

    El campo relation es un array de una o más cadenas que describen la relación entre los sitios. Para que los sitios compartan credenciales de acceso, especifica la cadena delegate_permission/common.get_login_creds. El campo target es un objeto que especifica el recurso al que se aplica la declaración. Los siguientes campos identifican un sitio web:

    namespace Debe ser web para los sitios web.
    site La URL del sitio web, en el formato https://domain[:optional_port]; por ejemplo, https://www.example.com.

    Consulta la referencia de Vínculos de recursos digitales para obtener más información.

  2. Aloja el archivo JSON de Vínculos de recursos digitales en la siguiente ubicación del dominio de acceso: https://domain[:optional_port]/.well-known/assetlinks.json.

    En este ejemplo, el dominio es www.example.com, por lo que el archivo JSON debería estar alojado en https://www.example.com/.well-known/assetlinks.json.

    El tipo de MIME del archivo de Vínculos de recursos digitales debe ser JSON. Asegúrate de que el servidor envíe un encabezado Content-Type: application/json en la respuesta.

  3. Para declarar la asociación en ambos sitios web, también debes alojar assetlinks.json en https://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. Asegúrate de que tu host permita que Google recupere tu archivo de Vínculos de recursos digitales. Si tienes un archivo robots.txt, este debe permitir que el agente de Googlebot recupere /.well-known/assetlinks.json. La mayoría de los sitios pueden permitir que cualquier agente automatizado recupere archivos en la ruta de acceso /.well-known/ para que otros servicios puedan acceder a los metadatos en esos archivos:

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

Cómo asociar varios sitios web entre sí

Puedes asociar varios sitios web entre sí especificando cada uno en el archivo de Vínculos de recursos digitales. Por ejemplo, para asociar example.com, example.co.uk, y example.co.jp, especifica todos esos sitios web en el archivo JSON assetlinks.json y alójalo en cada sitio web en 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"
     }
  }]