Asset

저작물을 고유하게 식별합니다.

디지털 애셋은 일반적으로 서비스 또는 콘텐츠를 제공하는 식별 가능한 주소 대상 온라인 법인입니다. 애셋의 예로는 웹사이트, Android 앱, Twitter 피드, Plus 페이지가 있습니다.

JSON 표현
{
  // Union field, only one of the following:
  "web": {
    object(WebAsset)
  },
  "androidApp": {
    object(AndroidAppAsset)
  },
}
필드 이름 유형 설명
공용체 필드는 다음 중 하나에만 해당합니다.
web object(WebAsset) 웹 애셋인지 여부를 설정합니다.
androidApp object(AndroidAppAsset) Android 앱 애셋인지 여부를 설정합니다.

웹 애셋

웹 애셋을 설명합니다.

JSON 표현
{
  "site": string,
}
필드 이름 유형 설명
site string

웹 애셋은 스키마, 호스트 이름, 포트 부분만 포함된 URL로 식별됩니다. 형식은

http[s]://<hostname>[:<port>]

호스트 이름은 정규화되어야 하며 하나의 마침표('.')로 끝나야 합니다.

현재 'http' 및 'https' 스키마만 허용됩니다.

포트 번호는 십진수로 지정되며, 표준 포트 번호가 사용되는 경우 80은 http, https는 443이어야 합니다.

이 제한된 URL을 '사이트'라고 합니다. 동일한 스키마, 호스트 이름, 포트를 공유하는 모든 URL은 사이트의 일부로 간주되어 웹 저작물에 속합니다.

예: https://www.google.com 사이트의 애셋에 다음 URL이 모두 포함되어 있습니다.

  • https://www.google.com/
  • https://www.google.com:443/
  • https://www.google.com/foo
  • https://www.google.com/foo?bar
  • https://www.google.com/foo#bar
  • https://user@password:www.google.com/

하지만 다음 URL은 포함되지 않습니다.

  • http://www.google.com/(잘못된 스키마)
  • https://google.com/(호스트 이름이 일치하지 않음)
  • https://www.google.com:444/ (포트가 일치하지 않음) REQUIRED

Android 앱 애셋

Android 앱 애셋을 설명합니다.

JSON 표현
{
  "packageName": string,
  "certificate": {
    object(CertificateInfo)
  },
}
필드 이름 유형 설명
packageName string Android 앱 애셋은 자바 패키지 이름으로 자연스럽게 식별됩니다. 예를 들어 Google 지도 앱에서는 com.google.android.apps.maps라는 패키지 이름을 사용합니다. REQUIRED
certificate object(CertificateInfo)

패키지 이름 고유성은 전 세계적으로 시행되지 않으므로 패키지 이름과 함께 앱을 고유하게 식별하는 서명 인증서도 필요합니다.

일부 앱의 서명 키는 순환되므로 시간이 지남에 따라 다른 키로 서명될 수 있습니다. (패키지 이름, 인증서)를 고유 ID로 사용하므로 두 애셋을 별개의 애셋으로 간주합니다. 두 버전의 앱에서 동일하거나 유사한 문을 작성하기 때문에 일반적으로는 문제가 발생하지 않습니다. 그러나 키가 순환될 때 앱에 관한 문을 만드는 다른 애셋은 업데이트되어야 합니다.

(문을 게시하고 쿼리하는 문법에는 여러 인증서로 알려진 앱을 쉽게 지정할 수 있도록 구문 슈가가 포함되어 있습니다.) REQUIRED

인증서 정보

X509 인증서를 설명합니다.

JSON 표현
{
  "sha256Fingerprint": string,
}
필드 이름 유형 설명
sha256Fingerprint string

인증서의 대문자 SHA-265 디지털 지문입니다. PEM 인증서에서 다음과 같이 가져올 수 있습니다.

$ keytool -printcert -file $CERTFILE | grep SHA256:
SHA256: 14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83: \
    42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5

또는 다음과 같이 만드세요.

$ openssl x509 -in $CERTFILE -noout -fingerprint -sha256
SHA256 Fingerprint=14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64: \
    16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5

이 예에서 이 필드의 콘텐츠는 14:6D:E9:83:C5:73: 06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF: 44:E5입니다.

이러한 도구를 사용할 수 없는 경우 PEM 인증서를 DER 형식으로 변환하고 해당 문자열의 SHA-256 해시를 계산하여 결과를 16진수 문자열로 표시할 수 있습니다(즉, 각 옥텟의 대문자 16진수 표현(콜론으로 구분)).