사용자 에이전트 타겟팅

사용자 에이전트 헤더가 유용한 정보를 제공하기 위해 입찰 요청에 포함되었습니다. 시작 기기의 브라우저 및 플랫폼과 같은 타겟팅 데이터가 포함되어 있습니다. 하지만 브라우저는 사용 편의성과 사용 편의성으로 인해 사용자 에이전트를 심하게 사용자 개인 정보를 더욱 안전하게 보호할 수 있습니다. 이에 대응하여 Google은 사용자 에이전트 클라이언트 힌트: 사용자-에이전트 헤더를 보완하기 위해 가능한 경우 입찰 요청에 포함됩니다. 이러한 클라이언트 힌트 (줄여서)는 Sec-Ch-UA* 헤더 또는 를 가져옵니다.

사용된 프로토콜에 따라, 사용자-에이전트 헤더는 다음 문자열 필드가 포함됩니다.

  • OpenRTB: BidRequest.device.ua
  • Google RTB (지원 중단됨): BidRequest.user_agent

UserAgent 메시지는 사용할 수 있지만 그렇지 않으면 User-Agent 헤더 사용된 프로토콜에 따라 하나로 노출됩니다. 다음 필드 중 하나를 선택합니다.

  • OpenRTB: BidRequest.device.sua
  • Google RTB (지원 중단됨): BidRequest.user_agent_data

입찰자는UserAgent 사용자 에이전트 문자열입니다.

UserAgent가 채워지는 방식

사용자-에이전트 헤더와 달리 UserAgent 메시지는 사용자 에이전트를 나타냅니다. 정보가 특정 정보를 위해 여러 필드로 분리됩니다.

광고 요청에서 클라이언트 힌트를 사용할 수 있는지에 따라 UserAgent 메시지는 다음과 같은 방법으로 채울 수 있습니다.

  • 요청에 낮은 엔트로피 클라이언트 힌트에서 UserAgent는 콘텐츠에 따라 채워집니다.
  • 요청에 사용자-에이전트 헤더만 포함된 경우 UserAgent은 헤더에서 파싱할 수 있는 내용에 따라 채워집니다.
를 통해 개인정보처리방침을 정의할 수 있습니다.

예: User-Agent 헤더를 기반으로 UserAgent 채우기

브라우저가 다음 헤더를 전송하는 광고 요청이 있다고 가정해 보겠습니다.

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
            AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36

사용자 에이전트 헤더만을 기반으로 채워진 UserAgent는 다음과 같습니다. 다음과 같습니다.

browsers: [{ brand: "Mozilla", version: ["5", "0"] },
           { brand: "AppleWebKit", version: ["537", "36"] },
           { brand: "Chrome", version: ["103", "0", "0", "0"] },
           { brand: "Safari", version: ["537", "36"] }],
platform: { brand: "Windows NT", version: ["10", "0"] },
mobile: false,
architecture: "x86",
bitness: "64",
model: "x64",
source: USER_AGENT_STRING

예: 클라이언트 힌트를 기반으로 UserAgent 채우기

브라우저가 다음 헤더를 전송하는 광고 요청이 있다고 가정해 보겠습니다.

User-Agent:                 Mozilla/5.0 (Windows NT 10.0; Win64; x64)
                            AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36
Sec-Ch-Ua:                  ".Not/A)Brand";v="99", "Google Chrome";v="103", "Chromium";v="103"
Sec-Ch-Ua-Arch:             x86
Sec-Ch-Ua-Full-Version:     103.0.5060.134
Sec-Ch-Ua-Mobile:           ?0
Sec-Ch-Ua-Platform:         Windows
Sec-Ch-Ua-Platform-Version: 15.0.0

최소한 낮은 엔트로피의 클라이언트 힌트가 포함된 경우 UserAgent는 해당 헤더의 콘텐츠를 기반으로 채워져 있으며 헤더가 있는지 확인합니다 다음과 같이 표시됩니다.

browsers: [{ brand: ".Not/A)Brand", version: ["99", "0", "0", "0"] },
           { brand: "Google Chrome", version: ["103", "0", "5060", "134"] },
           { brand: "Chromium", version: ["103", "0", "5060", "134"] }],
platform: { brand: "Windows", version: ["15", "0", "0"] },
mobile: false,
architecture: "x86",
bitness: "64",
source: CLIENT_HINTS_HIGH_ENTROPY

사용자 에이전트 헤더 및 클라이언트 힌트 비교에 따라 채우기

일부 필드는 다음을 기반으로 하는지에 따라 다르게 채워집니다. 사용자 에이전트 헤더 또는 클라이언트 힌트입니다. 다음은 이러한 차이점:

  • 동일한 브라우저와 플랫폼에서 UserAgent.browsers.brandUserAgent.platform.brand는 주로 다음에 따라 UserAgent 간에 다릅니다. 사용자 에이전트 헤더 또는 클라이언트 힌트입니다. 예를 들어 UserAgent.platform.brand이(가) 다음 검색어에 기반할 경우 'Windows NT'로 사용자 에이전트 헤더 또는 'Windows'(클라이언트 힌트에 기반하는 경우)
  • 일부 UserAgent.browsers 항목은 사용자-에이전트 헤더에 고유하거나 클라이언트 힌트에 관해 알아보겠습니다. 예를 들어 UserAgent 'Chromium'은 사용자 에이전트 헤더를 기반으로 하는 반면 확인할 수 있습니다.
  • User-Agent 헤더를 기반으로 하는 UserAgent에만 고정된 값을 포함할 수 있습니다. 예를 들어 플랫폼이 Windows 11 22H2인 경우 UserAgent.platform.brand는 'Windows NT'로 설정되고 UserAgent.platform.version[“10”, “0”]로 설정됩니다. 10 이상의 모든 Windows 버전에 대한 고정 값을 제공하지 않습니다.

클라이언트 힌트를 기반으로 하는 UserAgent의 데이터는 일반적으로 고정되거나 수정된 정보를 부정확하게 대체 만약 클라이언트 기반의 사용자-에이전트 헤더와 UserAgent 간 불일치 힌트: UserAgent의 정보가 선호되어야 합니다.

UserAgent 객체 필드

이 섹션에서는 Google RTB 관련에 초점을 맞춰 각 필드를 요약합니다. 사용 권장사항이 있습니다.

브라우저

목록 포함 BrandVersion 일반적으로 특정성을 기준으로 정렬된 항목(예: browsers의 콘텐츠를 나열하면 각 항목의 brand가 표시될 수 있습니다. 다음과 같습니다.

브랜드 의미
Mozilla Mozilla 호환
AppleWebKit AppleWebKit 기반(Mozilla의 하위 집합).
Chrome AppleWebKit 호환 브라우저의 하위 집합인 Chrome 브라우저
Safari 모바일이 아닌 데스크톱 대안

UserAgent는 특히 브라우저를 특정 순서로 나열하지 않습니다. 클라이언트 힌트를 기반으로 하는 경우 다음은 그 밖의 차이점에 대한 설명입니다. 다음과 같습니다.source

  • USER_AGENT: version 필드가 주 버전으로 축소될 수 있습니다. 고정 (상담사별 정책에 따라 다름) 참고로 이는 값이 동결되었음을 나타냅니다.
  • CLIENT_HINTS_LOW_ENTROPYCLIENT_HINTS_HIGH_ENTROPY: 참가 신청은 어떤 기준에도 따라 정렬되지 않음 예를 들어, 동일한 브라우저가 각 요청에서 다른 순서로 입력됩니다. 또한 GREASE entry가 무시해야 합니다.
  • CLIENT_HINTS_HIGH_ENTROPY: 브라우저에 있는 모든 version 입력란이 전체 버전으로 설정

플랫폼

BrandVersion 플랫폼을 설명하는 항목이 있어야 합니다 이는 사용자 에이전트에서 호환되지 않을 수 있습니다. 헤더 및 클라이언트 힌트가 포함되어 있으므로 일부 플랫폼의 타겟팅은 테스트가 필요할 수 있습니다. 있습니다. 예를 들어, Apple의 Macintosh 운영 체제는 User-Agent 헤더에 'Macintosh'가 있고 클라이언트 힌트에는 'macOS'가 있어야 합니다. 그 밖에 예상할 수 있는 차이점은 다음과 같습니다. source의 값:

  • USER_AGENT: version 필드가 주 버전으로 축소될 수 있습니다. 고정되어 있습니다. 값이 고정되었다는 표시는 없습니다.
  • CLIENT_HINTS_LOW_ENTROPY: version 필드가 채워지지 않습니다.
  • CLIENT_HINTS_HIGH_ENTROPY: version 필드가 전체( 있습니다.

모바일

광고와 같은 콘텐츠를 작은 화면에 맞게 최적화해야 하는지 또는 있습니다. 이것은 반드시 기기 유형을 나타내는 것은 아닙니다 '데스크톱 사이트'를 요청하도록 모바일 브라우저를 설정할 수 있습니다.

아키텍처

'x86' 또는 'arm'과 같은 플랫폼의 아키텍처를 식별합니다.

클라이언트 힌트를 기반으로 하는 UserAgent의 경우 sourceCLIENT_HINTS_HIGH_ENTROPY로 설정된 경우.

비트

플랫폼의 비트율을 식별합니다(예: 32비트인지 64비트인지 여부). CPU 사용량입니다. 이 필드는 아키텍처, 예를 들어, “x86” 아키텍처는 '32' 또는 '64'입니다.

클라이언트 힌트를 기반으로 하는 UserAgent의 경우 sourceCLIENT_HINTS_HIGH_ENTROPY로 설정된 경우.

모델

기기 모델을 식별합니다. 휴대기기의 경우(노트북이나 데스크톱: 'Pixel 6 Pro'와 같은 모델 이름으로 채워집니다.

다음은 source의 값:

  • USER_AGENT
    • 휴대기기 이외의 기기: model 입력란에는 일반적으로 비트율 값(예: Windows의 경우 'x64')입니다. 이 값은 크로스 플랫폼이 아닙니다. 예를 들어, 리눅스는 'x86_64'를 동일한 사용할 수 있습니다
    • 휴대기기: 이 필드에는 아키텍처 및 비트율이 포함되지 않습니다. 이 값에 관심이 있다면 UserAgent.architectureUserAgent.bitness입니다.
  • CLIENT_HINTS_LOW_ENTROPY: model 필드가 채워지지 않습니다.
  • CLIENT_HINTS_HIGH_ENTROPY: model 필드는 모바일 장치의 기기 모델입니다. 데스크톱 플랫폼에는 설정된 값이 없습니다.

소스

UserAgent를 만드는 데 사용된 헤더를 식별합니다. 클라이언트 힌트의 경우 다음 두 사례도 구별됩니다.

  • CLIENT_HINTS_LOW_ENTROPY: 기본 클라이언트 힌트만 사용할 수 있습니다.
  • CLIENT_HINTS_HIGH_ENTROPY: 다음을 포함한 클라이언트 힌트를 사용할 수 있습니다. 높은 엔트로피로 분류되어 있습니다.