FedCM 업데이트: 자동 재인증을 위한 오리진 트라이얼

자동 재인증을 위한 새로운 오리진 트라이얼을 비롯한 몇 가지 FedCM 업데이트를 소개합니다.

Federated Credential Management API (FedCM)는 웹 API를 사용할 수도 있습니다. ID 제휴를 사용하면 RP (신뢰 당사자)는 IdP (ID 공급업체)를 통해 사용자에게 새 사용자 이름과 비밀번호를 요구하지 않고 계정을 만들 수 있습니다.

FedCM은 브라우저가 컨텍스트를 이해할 수 있도록 하는 전용 API입니다. RP 및 IdP가 정보를 교환하는 경우 사용자에게 정보 및 권한 수준을 공유하고 의도치 않은 악용을 방지합니다.

업데이트

Chrome의 FedCM 구현에 대한 몇 가지 업데이트가 있습니다.

API에 대한 이전의 모든 업데이트는 Federated Credential Management를 확인하세요. API 업데이트

최신 버전의 FedCM에는 FedCM을 사용하여 최초 인증 후 돌아오는 사용자를 자동으로 재인증할 수 있는 새로운 자동 재인증 기능이 포함되어 있습니다. 자동 재인증은 Chrome 112부터 오리진 트라이얼로 사용할 수 있습니다.

자동 재인증

현재는 사용자가 IdP를 사용하여 RP에 제휴 계정을 생성한 후 다음에 FedCM을 통해 신고됩니다. 사용자 인터페이스에서 동일한 단계를 거쳐야 합니다. 즉, 사용자가 인증을 하려면 로그인 과정을 진행합니다. Kubernetes의 FedCM의 목표는 은밀한 추적을 방지하는 것이며, 이러한 사용자 경험 (UX)은 사용자가 사용자가 제휴 계정을 만들었기 때문에 필요하지만 한 번은 경험하지 않았습니다. 사용자가 통신을 허용할 권한을 부여한 후 클라우드 서비스를 사용하는 경우,  개인 정보 보호나 보안상의 이점이 자신이 가지고 있는 것에 대해 또 다른 명시적인 사용자 확인을 시행하는 것 할 수 있습니다. 그래서 Chrome은 더욱 간소화된 환경을 RP가 재방문 사용자를 위해 선택할 수 있는 UX

FedCM 자동 재인증 ('auto-reauthn' 줄임말)은 사용자를 자동으로 재인증합니다 (RP가 선택 시). FedCM을 사용한 초기 인증 후 돌아오는 경우 "초기 인증' 사용자가 계정을 만들거나 RP의 FedCM의 로그인 대화상자에서 '다음으로 계속' 버튼을 탭하여 웹사이트를 인증합니다. 할 수 있습니다.

<ph type="x-smartling-placeholder">
</ph> 사용자가 계정을 만들거나 인증하기 위해 탭하는 대화상자입니다.
사용자가 계정을 만들거나 인증을 위해 탭하는 대화상자

RP는 autoReauthn: truenavigator.credentials.get()를 호출하여 자동 재인증을 요청할 수 있습니다.

const cred = await navigator.credentials.get({
  identity: {
    providers: [{
      configURL: "https://idp.example/fedcm.json",
      clientId: "1234",
    }],
    // NOTE: We are exploring different API options to expose this
    // functionality here:
    // https://github.com/fedidcg/FedCM/issues/429#issuecomment-1426358523
    // You should expect that, as a result of the origin trial, we'll
    // learn more from developers and browser vendors what works best here.
    autoReauthn: true, // default to false
  },
});

이 호출을 사용하면 다음 조건에서 자동 재인증이 실행됩니다.

  • FedCM을 사용할 수 있습니다. 예를 들어 사용자가 FedCM을 사용 중지하지도 않았습니다. RP에 적용됩니다
  • 사용자가 이 브라우저에서 웹사이트에 로그인할 때 하나의 FedCM 계정만 사용했습니다.
  • 사용자가 해당 계정으로 IdP에 로그인했습니다.
  • 최근 10분 이내에 자동 재인증이 발생하지 않았습니다.

위의 조건이 충족되면 사용자는 FedCM navigator.credentials.get()가 호출되는 즉시 시작됩니다.

<ph type="x-smartling-placeholder">
</ph>
사용자가 FedCM을 사용하여 RP에 자동 다시 인증

사용해 보기

Chrome을 사용 설정하여 로컬에서 FedCM 자동 재인증을 시도할 수 있습니다. 플래그 chrome://flags#fedcm-auto-re-authn 사용 Chrome 112 이상

테스트 목적으로 브라우저 데이터

  1. chrome://history로 이동합니다.
  2. 검색 기록 상자에 RP의 출처를 입력합니다.
  3. 점 3개 아이콘 ⋮을 클릭하고 기록에서 삭제를 선택합니다.
  4. Chrome을 다시 시작합니다.

오리진 트라이얼 참여

서드 파티 파트너 Chrome 112부터 사용 가능한 오리진 트라이얼 Chrome 114까지 지원됩니다

오리진 트라이얼을 통해 새로운 기능을 사용해 보고 웹 표준 커뮤니티에 사용성, 실용성, 효과성에 관한 의견을 제공할 수 있습니다. 자세한 내용은 웹 개발자를 위한 오리진 트라이얼 가이드를 참고하세요. 이 오리진 트라이얼 또는 다른 오리진 트라이얼에 가입하려면 등록 페이지를 방문하세요.

서드 파티 원본에 등록하기 위해 기능을 활성화하세요. :

  1. 오리진 트라이얼 등록 페이지로 이동합니다.
  2. 등록 버튼을 클릭하고 토큰을 요청하는 양식을 작성합니다.
  3. 웹 출처로 게재 출처를 입력합니다.
  4. 다른 출처에 JavaScript로 토큰을 삽입하려면 서드 파티 일치를 선택합니다.
  5. 제출을 클릭합니다.
  6. 발급된 토큰을 서드 파티에 삽입합니다.

제3자에 토큰을 삽입하려면 자바스크립트에 다음 코드를 추가합니다. 등록된 웹사이트의 출처에서 제공하는 라이브러리 또는 SDK

const tokenElement = document.createElement('meta');
tokenElement
.httpEquiv = 'origin-trial';
tokenElement
.content = 'TOKEN_GOES_HERE';
document
.head.appendChild(tokenElement);

TOKEN_GOES_HERE를 자체 토큰으로 바꿉니다.

참여 및 의견 공유

의견이 있거나 테스트 중에 문제가 발생하면 crbug.com에서 공유해 주세요. Blink>Identity>FedCM 구성요소에서 찾을 수 있습니다.

사진: Alex Perz스플래시 해제