Chrome 100부터 CHIPS 오리진 트라이얼을 통해 쿠키를 '파티션을 나눈' 상태로 선택할 수 있음 최상위 사이트마다 별도의 쿠키 jar가 있습니다.
변경사항
- 2022년 9월: Chrome 106까지 오리진 트라이얼 연장에 관한 업데이트된 정보를 참고하세요.
- 2022년 8월:
path=/
요구사항이 삭제되었습니다 (github.com/privacycg/CHIPS/pull/49 참고). - 2022년 6월: Chrome 104부터
Partitioned
속성으로 쿠키를 설정할 때 더 이상Domain
속성을 생략할 필요가 없습니다. - 2022년 5월: Chrome 103부터 오리진 트라이얼을 선택하는 데 더 이상
Accept-CH: Sec-CH-Partitioned-Cookies
헤더를 전송할 필요가 없습니다.
CHIPS란 무엇인가요?
Cookies Having Independent Partitioned State (CHIPS)는 개발자가 쿠키를 '파티션 나누기' 모드로 선택할 수 있는 개인 정보 보호 샌드박스 제안서입니다. 최상위 사이트마다 별도의 쿠키 보관함을 사용합니다.
파티셔닝된 서드 파티 쿠키는 처음에 설정된 최상위 사이트에 연결되어 다른 곳에서 액세스할 수 없습니다. 서드 파티 서비스에서 쿠키를 설정하도록 허용하되, 쿠키가 처음 설정된 최상위 사이트의 컨텍스트 내에서만 읽을 수 있도록 하는 것이 목적입니다.
오리진 트라이얼의 대상은 누구인가요?
이 트라이얼은 서드 파티 오리진 트라이얼으로 제공되며, 이를 통해 삽입된 콘텐츠 제공업체는 여러 사이트에서 새로운 기능을 사용해 볼 수 있습니다.
사이트가 퍼스트 파티로 무료 체험에 등록한 경우 해당 사이트의 서드 파티 콘텐츠 제공업체도 쿠키 파티셔닝을 사용할 수 있습니다. 이러한 서드 파티 제공업체는 오리진 트라이얼 등록을 나타내는 추가 HTTP 헤더도 받게 됩니다.
무료 체험 기간은 얼마나 되나요?
체험판은 Chrome 100부터 Chrome 105까지 제공됩니다. 계획된 출시일은 Chrome 출시 일정을 확인하세요.
오리진 트라이얼 등록 방법
기본 요건
Chrome 안정화 버전 103.
단계
오리진 트라이얼에 등록하고 도메인 토큰을 받으려면 CHIPS 오리진 트라이얼 페이지를 방문하세요.
Partitioned
가 포함된Set-Cookie
헤더가 있는 모든 응답에 유효한 토큰이 있는Origin-Trial
헤더를 포함합니다.Origin-Trial: <ORIGIN TRIAL TOKEN>
다음 두 가지 방법 중 하나로 쿠키에
Partitioned
속성을 추가합니다.Set-Cookie
헤더:Set-Cookie: __Host-name=value; Secure; Path=/; SameSite=None; Partitioned;
JavaScript의 경우:
cookieStore.set({ name: '__Host-name', value: 'value', secure: true, path: '/', sameSite: 'none', // Set a partitioned cookie using the attribute below. partitioned: true, });
예
오리진 트라이얼에 참여하는 사이트는 응답에 다음 헤더를 포함해야 합니다.
Origin-Trial: <ORIGIN TRIAL TOKEN>
Set-Cookie: __Host-name=value; Secure; Path=/; SameSite=None; Partitioned;
작동하는지 확인
헤더 검사
오리진 트라이얼을 성공적으로 선택하고 파티션을 나눈 쿠키를 설정하면 현재 세션이 종료될 때까지 Chrome 클라이언트의 후속 요청에 Sec-CH-Partitioned-Cookies: ?0
요청 헤더가 포함됩니다.
Sec-CH-Partitioned-Cookies: ?0
Cookie: __Host-name=value
사이트에서 이 클라이언트 힌트 없이 쿠키를 수신하면 오리진 트라이얼 선택이 실패했으며 수신되는 쿠키는 파티셔닝되지 않습니다.
Partitioned
가 있는 Set-Cookie
헤더를 포함하지 않는 응답은 사이트의 오리진 트라이얼 참여 상태에 영향을 주지 않습니다.
Origin-Trial
헤더에 유효한 토큰으로 응답하지 않으면 시스템의 파티션을 나눈 쿠키가 파티션을 나누지 않은 쿠키로 변환됩니다.
자세한 내용은 chromium.org에서 CHIPS 문서를 참고하세요.
DevTools
chrome://flags/#partitioned-cookies
로 이동하여 설정을 '사용 설정됨'으로 변경합니다.- '다시 시작'을 클릭하여 Chromium을 다시 시작합니다. chrome://restart 페이지로 이동하여 다시 시작할 수 있습니다.
chrome://settings/cookies
(으)로 이동하여 라디오 버튼이 '모든 쿠키 허용'으로 설정되어 있는지 확인합니다. 또는 '시크릿 모드에서 서드 파티 쿠키 차단'을 참고하세요.- 삽입되어 있는 사이트를 로드합니다.
- DevTools를 열고 Application으로 이동합니다. > 쿠키 > yourSite를 클릭하고 DevTools에서 Partition Key 열을 찾습니다.
추가 세부정보
쿠키 요구사항
- 파티션을 나눈 쿠키는
Secure
로 설정해야 합니다. (Path=/
는 더 이상 필요하지 않습니다. github.com/privacycg/CHIPS/pull/49 참고). SameParty
속성은Partitioned.
과 함께 사용할 수 없습니다.
Chrome은 쿠키 파티션 나누기의 사용 설정 여부와 관계없이 Partitioned
속성으로 설정된 쿠키에 이러한 규칙을 적용합니다. 잘못 설정된 쿠키는 거부됩니다.
쿠키 파티셔닝이 사용 중지되었지만 쿠키가 올바른 속성으로 설정된 경우 Chrome은 Partitioned
속성을 무시하고 이에 따른 쿠키는 설정된 위치와 다른 최상위 사이트에서 호스트로 계속 요청을 통해 전송됩니다.
파티션을 나눈 쿠키에는 쿠키 파티셔닝을 지원하지 않는 브라우저에서 서드 파티 컨텍스트로 쿠키가 전송될 수 있도록 SameSite=None
속성도 포함되어야 합니다.
JavaScript 및 서비스 워커
오리진 트라이얼을 사용하는 프레임은 document.cookie
및 CookieStore API와 같은 JavaScript API를 사용하여 파티션을 나눈 쿠키를 읽고 쓸 수 있습니다. 체험판의 스크립트에 없는 프레임은 파티션을 나눈 쿠키를 읽거나 쓸 수 없습니다.
서비스 워커에서는 CHIPS 오리진 트라이얼이 지원되지 않습니다.
참여 및 의견 공유
- 문제를 제기하고 GitHub에서 토론을 팔로우합니다.
- 개인 정보 보호 샌드박스 개발자 지원 저장소에서 질문하고 토론에 참여하세요.
- 개인 정보 보호 샌드박스 제안에 관한 의견을 제공할 수 있는 다양한 방법을 살펴보세요.