Federated Credential Management API 개요

개인 정보를 보호하는 ID 제휴를 위한 웹 API

FedCM이란 무엇인가요?

FedCM (Federated Credential Management)은 서드 파티 쿠키나 탐색 리디렉션에 의존하지 않는 제휴 ID 서비스 (예: '...로 로그인...')에 대한 개인 정보 보호 접근 방식입니다.

구현 상태

앞으로 Google은 ID 공급업체 (IdP), 신뢰 당사자 (RP), 브라우저 공급업체로부터 받은 의견을 바탕으로 다양한 새로운 기능을 도입할 계획입니다. ID 제공업체가 FedCM을 채택하기를 바라지만 FedCM은 아직 개발 중인 API임을 유의하세요.

하위 호환되지 않는 변경사항을 배포할 때 발생하는 문제를 최소화하기 위해 ID 제공업체에 다음 두 가지 권장사항을 제공합니다.

  • API가 발전함에 따라 업데이트를 보내드리는 뉴스레터를 구독하세요.
  • IdP는 API가 성숙하는 동안 JavaScript SDK를 사용하여 FedCM API를 배포하고 RP가 SDK를 자체 호스팅하지 않는 것이 좋습니다. 이렇게 하면 IdP가 모든 신뢰 당사자에게 재배포를 요청하지 않고도 API가 발전함에 따라 변경할 수 있습니다.

FedCM이 필요한 이유는 무엇인가요?

지난 10년 동안 ID 제휴는 사이트별 사용자 이름과 비밀번호에 비해 신뢰성, 사용 편의성(예: 암호 없는 싱글 로그인), 보안 (예: 피싱 및 사용자 인증 정보 스터핑 공격에 대한 저항 강화) 측면에서 웹 인증 기준을 높이는 데 중요한 역할을 했습니다.

ID 제휴를 사용하면 RP (신뢰 당사자)가 IdP (ID 공급자)를 사용하여 새 사용자 이름과 비밀번호를 요구하지 않고 사용자에게 계정을 제공할 수 있습니다.

안타깝게도 ID 제휴에서 사용한 메커니즘 (iframe, 리디렉션, 쿠키)이 웹에서 사용자를 추적하는 데 악용되고 있습니다. 사용자 에이전트는 ID 제휴와 추적을 구분할 수 없으므로 다양한 유형의 악용에 대한 완화 조치를 취하면 ID 제휴를 배포하기가 더 어려워집니다.

제휴 인증 관리 API(FedCM)는 사용자가 웹사이트에 로그인할 IdP의 계정을 선택할 수 있는 브라우저 매개 대화상자를 노출하여 웹에서 제휴 ID 흐름을 위한 사용 사례별 추상화를 제공합니다.

FedCM은 웹에서 ID를 개선하기 위한 여러 단계의 여정입니다. 첫 번째 단계에서는 서드 파티 쿠키 제한이 제휴 ID에 미치는 영향을 줄이는 데 중점을 두고 있습니다 (자세한 내용은 로드맵 섹션 참고).

사용자가 FedCM을 사용하여 RP에 서명합니다.

어떤 부분이 영향을 받을 것으로 예상되나요?

커뮤니티의 노력과 Google의 연구를 통해 서드 파티 쿠키 제한의 영향을 받는 ID 제휴 관련 통합이 몇 가지 있음을 확인했습니다.

FedCM의 첫 번째 목표는 서드 파티 쿠키 제한이 ID 제휴에 미치는 영향을 줄이는 것이며, 다음은 영향을 받을 것으로 예상되는 영역입니다. 여기에 나열되지 않은 추가 사용 사례가 있는 경우 응대하고 의견을 공유할 수 있습니다.

FedCM을 사용해야 하는 사용자

FedCM은 다음 조건을 모두 충족하는 경우에만 유용하게 사용할 수 있습니다.

  1. ID 공급업체 (IdP)입니다.
  2. 서드 파티 쿠키 제한의 영향을 받은 경우
  3. RP는 서드 파티 사이트입니다. RP가 유의미하게 관련된 사이트인 경우 관련 웹사이트 세트를 사용하는 것이 더 나을 수 있습니다.

IdP인 경우

FedCM은 ID 공급업체의 지원이 필요합니다. 신뢰 당사자는 FedCM을 독립적으로 사용할 수 없습니다. RP인 경우 IdP에 안내를 요청할 수 있습니다.

서드 파티 쿠키 제한의 영향을 받는 경우

FedCM은 현재 통합이 서드 파티 쿠키 제한의 영향을 받는 경우에만 사용해야 합니다.

서드 파티 쿠키를 사용할 수 없는 경우 ID 제휴가 계속 작동하는지 확실하지 않다면 Chrome에서 서드 파티 쿠키를 차단하여 웹사이트에 미치는 영향을 테스트할 수 있습니다.

서드 파티 쿠키 없이 ID 제휴에 식별 가능한 영향이 없는 경우 FedCM 없이 현재 통합을 계속 사용할 수 있습니다.

무엇을 확인해야 할지 잘 모르겠다면 서드 파티 쿠키 제한의 영향을 받을 것으로 예상되는 알려진 기능에 관해 자세히 알아보세요.

RP가 서드 파티인 경우

RP가 IdP와 퍼스트 파티 관계가 있는 ID 공급업체의 경우 관련 웹사이트 세트가 더 나은 옵션일 수 있습니다. 관련 웹사이트 세트 (RWS)는 브라우저가 특정 목적을 위해 제한된 서드 파티 쿠키 액세스를 허용하도록 조직에서 사이트 간 관계를 선언하는 방법입니다. 이를 통해 서드 파티 쿠키가 제한되더라도 유의미한 관련 사이트 세트 사이에서 서드 파티 쿠키가 작동할 수 있습니다.

사용자는 FedCM과 어떻게 상호작용할 수 있나요?

FedCM의 주요 목표는 서드 파티 쿠키 제한의 영향을 완화하는 것입니다. 사용자는 Chrome의 사용자 설정에서 FedCM을 사용 설정하거나 중지할 수 있습니다.

FedCM은 프로토콜과 관계없이 설계되었으며 다음과 같은 인증 관련 기능을 제공합니다.

데모를 확인하여 작동 방식을 알아보세요.

신뢰 당사자에 로그인

사용자가 FedCM을 사용하여 RP에 로그인합니다.

사용자가 신뢰 당사자(RP) 웹사이트에 접속하면 FedCM 로그인 대화상자가 나타납니다(사용자가 IdP에 로그인한 경우).

사용자에게 RP에 IdP 계정이 없는 경우 RP의 서비스 약관 및 개인정보처리방침(제공된 경우)과 같은 추가 공개 텍스트가 포함된 가입 대화상자가 표시됩니다.

사용자는 계속...을 탭하여 로그인을 완료할 수 있습니다. 성공하면 브라우저는 사용자가 IdP로 RP에 제휴 계정을 만들었다는 사실을 저장합니다.

RP는 FedCM을 지원하지 않는 브라우저에서 작동합니다. 사용자는 FedCM이 아닌 기존 로그인 프로세스를 사용할 수 있어야 합니다. FedCM에서 로그인이 작동하는 방식을 자세히 알아보세요.

FedCM을 사용 설정 또는 사용 중지하기 위한 설정

사용자는 Android의 Chrome 설정에서 FedCM을 사용 설정하거나 사용 중지할 수 있습니다. 설정 > 사이트 설정 > 서드 파티 로그인으로 이동한 다음 전환 버튼을 변경합니다.

서드 파티 로그인을 전환하여 모바일의 Chrome 설정에서 FedCM을 사용 설정하세요.

chrome://settings/content/federatedIdentityApi로 이동하여 데스크톱의 Chrome에서도 동일한 작업을 할 수 있습니다.

서드 파티 로그인을 사용 설정하여 데스크톱의 Chrome 설정에서 FedCM 사용 설정

메시지 대기 기간

사용자가 UI를 수동으로 닫으면 항목이 일시적으로 설정 UI에 추가되고 일정 기간 동안 동일한 웹사이트에 UI가 표시되지 않습니다. 이 기간이 지나면 UI가 다시 사용 설정되지만, 연속으로 닫으면 시간이 기하급수적으로 늘어납니다. 예를 들어 Chrome의 경우 다음 단계를 따르세요.

연속 종료 횟수 FedCM 메시지가 억제되는 기간
1 2시간
2 하루
3 1주
4+ 4주

다른 브라우저에서는 서로 다른 대기 기간을 정의할 수 있습니다.

사용자는 설정 페이지로 이동하거나 PageInfo UI (URL 표시줄 옆에 있는 자물쇠 아이콘)를 클릭하고 권한을 재설정하여 RP에서 FedCM을 수동으로 다시 사용 설정할 수 있습니다.

로드맵

FedCM에 여러 변경사항을 적용하기 위해 노력하고 있습니다. 자세한 내용은 업데이트를 참고하세요.

  • 변경 로그: Federated Credential Management API 업데이트

IdP, RP, 브라우저 공급업체로부터 접수된 문제 등 아직 해결해야 할 몇 가지 사항이 있습니다. Google은 다음과 같은 문제를 해결하는 방법을 알고 있다고 생각합니다.

  • 교차 출처 iframe 지원: IdP는 교차 출처 iframe 내에서 FedCM을 호출할 수 있습니다 (업데이트).
  • 맞춤설정된 버튼: IdP는 IdP 소유의 교차 출처 iframe 내에서 로그인 버튼에 재방문 사용자의 ID를 표시할 수 있습니다 (업데이트).
  • 측정항목 엔드포인트: IdP에 실적 측정항목을 제공합니다.

또한 Google에서 평가하거나 프로토타입을 제작 중인 구체적인 제안서를 비롯하여 해결되지 않은 문제가 있습니다.

마지막으로 Mozilla, Apple, TAG 검토자의 의견을 바탕으로 아직 완료해야 할 사항이 있습니다. YouTube는 다음과 같은 미해결 문제에 가장 적합한 해결책을 평가하기 위해 노력하고 있습니다.

  • 사용자 이해도 향상 및 의도 일치: Mozilla에서 언급한 대로 Google은 다양한 UX 공식 및 노출 영역과 트리거 기준을 계속 탐색하고자 합니다.
  • ID 속성 및 선택적 공개: 태그 검토자가 명시한 바와 같이 Google에서는 ID 속성 (예: 이메일, 연령대, 전화번호 등)을 선택적으로 공유하거나 더 적게 공유하는 메커니즘을 제공하려고 합니다.
  • 개인 정보 보호 속성 확대: Mozilla는 표준 입장에서 제안한 대로 IdP 블라인드, 방향성 식별자와 같이 더 나은 개인 정보 보호 보장을 제공하는 메커니즘을 계속 모색하고 있습니다.
  • WebAuthn과의 관계: Apple이 제안한 것처럼 Google은 패스키 관련 진전을 확인하고 FedCM, Passwords, WebAuthn, WebOTP 간에 일관되고 일관된 환경을 제공하기 위해 노력할 것입니다.
  • 로그인 상태: Apple이 개인 정보 보호 CG의 로그인 상태 API에서 제안한 것처럼, Google은 사용자의 로그인 상태가 브라우저가 정보에 입각한 결정을 내리는 데 도움이 되는 유용한 정보라는 직관을 공유하며, 이를 통해 어떤 기회가 생길지 기대하고 있습니다. (업데이트)
  • 기업 및 교육: FedID CG에서 분명히 알 수 있듯이 FedCM에서 제대로 지원하지 않는 많은 사용 사례가 있습니다(예: 프런트 채널 로그아웃(IdP가 로그아웃을 위해 RP에 신호를 전송하는 기능) 및 SAML 지원).
  • mDL/VC 등의 관계: Mobile Document Request API와 같이 FedCM 내에서 이러한 항목이 어떻게 적용되는지 이해하기 위한 작업을 계속 진행합니다.

FedCM API 사용

FedCM을 사용하려면 Chrome의 IdP와 RP 모두에 보안 컨텍스트 (HTTPS 또는 localhost)가 필요합니다.

FedCM과 통합하려면 계정 목록, 어설션 발급, (선택사항) 클라이언트 메타데이터에 관한 잘 알려진 파일, 구성 파일, 엔드포인트를 만들어야 합니다. 그러면 FedCM은 RP가 IdP로 로그인하는 데 사용할 수 있는 JavaScript API를 노출합니다.

FedCM API 사용 방법을 알아보려면 FedCM 개발자 가이드를 참고하세요.

참여 및 의견 공유

온라인 개인 정보 보호법 준수

FedCM을 IdP 또는 RP로 사용하는 경우 사용자의 터미널 장비에 정보를 저장하거나 이미 저장된 정보에 액세스해야 하므로 일반적으로 사용자 동의를 필요로 하는 유럽 경제 지역(EEA) 및 영국의 개인 정보 보호법의 적용을 받습니다. 사용자가 명시적으로 요청한 온라인 서비스를 제공하는 데 FedCM 사용이 절대적으로 필요하여 동의 요건이 면제되는지 여부를 판단하는 것은 개발자의 책임입니다. 자세한 내용은 개인 정보 보호 샌드박스 개인 정보 보호 관련 규정 준수 FAQ를 참고하세요.