Chrome에서 웹사이트 간 사용자 인증 정보의 원활한 공유 지원

동일한 계정 관리 백엔드를 공유하는 여러 도메인을 사용하는 경우 이제 이러한 도메인이 서로 사용자 인증 정보를 공유할 수 있다고 선언하여 사용자가 사용자 인증 정보를 한 번 저장하면 Chrome 비밀번호 관리자가 연결된 웹사이트에 사용자 인증 정보를 제안하도록 할 수 있습니다.

Chrome의 비밀번호 관리자는 이미 저장된 사용자 인증 정보가 있는 웹사이트의 사용자 인증 정보를 자동 완성하고 다음 두 가지 경우에 자동 완성합니다.

  • 두 웹사이트가 동일 사이트 관계에 있는 경우 한 사이트에 저장된 사용자 인증 정보가 하나 이상 있으면 Chrome에 다른 사이트의 자동 완성 사용자 인증 정보가 표시됩니다. 예를 들어 www.example.comm.example.com는 동일한 사이트이므로 Chrome은 두 웹사이트 간에 저장된 사용자 인증 정보를 공유하고 저장된 비밀번호를 다른 사이트에 제안할 수 있습니다.
  • 개발자가 Android 앱을 동일한 사용자 인증 정보를 사용하는 사이트와 연결하면 Chrome에서 해당 사이트에 Android 사용자 인증 정보를 제안할 수 있습니다. 앱은 디지털 애셋 링크 (DAL)를 사용하여 웹사이트와 연결됩니다.

이제 교차 사이트 관계에서 웹사이트를 연결하여 사용자가 사용자 인증 정보를 한 번 저장하면 비밀번호 관리자가 연결된 웹사이트에 사용자 인증 정보를 추천하도록 할 수도 있습니다.

동일한 계정 관리 백엔드를 공유하는 여러 도메인(예: https://www.example.comhttps://www.example.co.uk))을 사용하는 경우 버전 91부터 Chrome에서 디지털 애셋 링크와 연결된 도메인에 저장된 비밀번호를 추천하도록 사용 설정할 수 있습니다.

DAL 연결을 만들려면 개발자가 각 도메인의 /.well-known/assetlinks.jsonDAL 문법을 따르는 JSON 파일을 배치해야 합니다.

기본 요건

  • Chrome 91 이상을 사용합니다.
  • chrome://settings/passwords에서 '비밀번호 저장 여부 확인'이 사용 설정되어 있는지 확인합니다.
  • 웹사이트의 로그인 도메인을 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_creds 문자열을 지정합니다. target 필드는 선언이 적용되는 애셋을 지정하는 객체입니다. 다음은 웹사이트를 식별하기 위한 필드입니다.

    namespace 웹사이트의 경우 web여야 합니다.
    site https://domain[:optional_port] 형식의 웹사이트 URL(예: https://www.example.com).

    자세한 내용은 디지털 애셋 링크 참조를 참고하세요.

  2. 디지털 애셋 링크 JSON 파일을 로그인 도메인의 다음 위치(https://domain[:optional_port]/.well-known/assetlinks.json)에 호스팅합니다.

    이 예시에서 도메인은 www.example.com이므로 JSON 파일은 https://www.example.com/.well-known/assetlinks.json에서 호스팅되어야 합니다.

    디지털 애셋 링크 파일의 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/
    

여러 웹사이트에서 원활한 사용자 인증 정보 공유 설정

디지털 애셋 링크 파일에서 각 웹사이트를 지정하여 여러 웹사이트에서 원활한 사용자 인증 정보 공유를 설정할 수 있습니다. 예를 들어 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"
     }
  }]

사용자 인증 정보 공유에 대해 자세히 알아보세요.