다음 표에서는 증명 토큰에서 지원되는 최상위 클레임을 설명합니다. 이러한 항목은 OpenID Connect 1.0 사양을 준수합니다.
키 | 유형 | 설명 |
---|---|---|
헤더 | ||
x5c | 문자열 | PKI 토큰에만 있습니다. PKI 토큰을 검증할 인증서 체인입니다. PKI 토큰 유효성 검사 엔드포인트에서 루트 인증서를 다운로드할 수 있습니다. |
JSON 데이터 페이로드 | ||
attester_tcb |
문자열 배열 |
하나 이상의 TCB (신뢰할 수 있는 컴퓨팅 기반) 구성요소 이 주장은 증명 증거의 출처를 지정하기 위한 것입니다. Confidential Space의 |
aud |
문자열 |
시청자층 워크로드 아이덴티티 풀과 함께 사용되는 기본 토큰의 경우 대상은 맞춤 잠재고객이 있는 토큰의 경우 잠재고객이 토큰 요청의 잠재고객에서 에코됩니다. 최대 길이는 512바이트입니다. |
dbgstat |
문자열 | 하드웨어의 디버그 상태입니다. 프로덕션 이미지에서 값은 disabled-since-boot 입니다. 디버그 이미지에서 값은 enabled 입니다. |
eat_nonce |
문자열 또는 문자열 배열 | 증명 토큰의 nonce 1개 이상 값은 맞춤 토큰 요청에 전송된 토큰 옵션에서 에코됩니다. 각 nonce는 8~88바이트(양 끝값 포함)여야 합니다. nonce는 최대 6개까지 허용됩니다. |
exp |
Int, Unix 타임스탬프 | 처리를 위해 토큰이 허용되지 않아야 하는 만료 시간입니다. 이 값은 UTC로 측정한 1970-01-01T0:0:0Z 부터 만료 시간까지의 초 수를 나타내는 JSON 숫자입니다.
|
google_service_accounts |
문자열 배열 | Confidential Space 워크로드를 실행하는 확인된 서비스 계정입니다. |
hwmodel |
문자열 |
하드웨어 토큰의 고유 식별자입니다. 유효한 값은 다음과 같습니다.
|
iat |
Int, Unix 타임스탬프 | JWT가 발급된 시간입니다. 이 값은 UTC로 측정한 1970-01-01T0:0:0Z 부터 문제 발생 시간까지의 초 수를 나타내는 JSON 숫자입니다. |
iss |
문자열 | 토큰의 발급기관으로, https://confidentialcomputing.googleapis.com 로 설정됩니다. |
nbf |
Int, Unix 타임스탬프 | JWT를 처리에 사용할 수 없는 시간입니다. |
oemid |
Uint64 | Google
비공개 기업 번호 (PEN)로, 11129 입니다.
|
secboot |
불리언 | 보안 부팅이 사용 설정되어 있는지 여부. 이로 인해 VM 부팅 프로세스 중에 펌웨어와 운영체제가 인증됩니다. 이 값은 항상 true 입니다. |
sub |
문자열 | 컨피덴셜 VM의 정규화된 가상 머신 ID인 제목입니다. 예를 들면 https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_ID 입니다.
이 형식을
인스턴스의 selfLink라고 합니다.
|
submods |
배열 | 다양한 소유권 주장의 배열입니다. 하위 모드 소유권 주장을 참고하세요. |
swname |
문자열 |
VM에 대해 승인된 운영체제의 이름입니다. 값은 |
swversion |
문자열 배열 |
운영체제의 버전입니다. 값은 하나의 값만 포함하는 문자열 배열입니다. 버전은 |
하위 모드 소유권 주장
다음 표에서는 증명 토큰의 submods
클레임을 설명합니다.
키 | 유형 | 설명 |
---|---|---|
confidential_space.support_attributes |
문자열 배열 | 값에는 USABLE , STABLE , LATEST 이 포함될 수 있습니다. 자세한 내용은
Confidential Space 이미지 수명 주기를 참고하세요.
|
confidential_space.monitoring_enabled |
객체 배열 | 사용 설정된 시스템 모니터링의 유형을 표시합니다. 값은 {"memory":false} 또는 {"memory":true} 일 수 있습니다.
|
container |
객체 | 워크로드 컨테이너 소유권 주장을 참고하세요. |
gce |
객체 | Compute Engine 소유권 주장을 참고하세요. |
워크로드 컨테이너 소유권 주장
다음 표에서는 증명 토큰의 container
클레임을 설명합니다.
이러한 클레임에 관한 자세한 내용은 증명 어설션을 참고하세요.
키 | 유형 | 설명 |
---|---|---|
args |
문자열 배열 | 컨테이너가 호출된 전체 argv 입니다. 이 소유권 주장에는 컨테이너의 진입점 경로와 추가 명령줄 인수가 포함됩니다. |
cmd_override |
문자열 배열 | 워크로드 이미지에 사용되는 CMD 명령어 및 매개변수입니다. |
env |
객체 배열 | 컨테이너에 명시적으로 전달된 환경 변수 및 값입니다. |
env_override |
객체 배열 | 컨테이너에서 덮어쓴 환경 변수입니다. |
image_digest |
문자열 | 워크로드 컨테이너의 이미지 다이제스트입니다. |
image_id |
문자열 | 워크로드 컨테이너의 이미지 ID입니다. |
image_reference |
문자열 | Confidential Space에서 실행되는 워크로드 컨테이너의 위치입니다. |
image_signatures |
객체 배열 | 컨테이너 이미지 서명 클레임을 참고하세요. |
restart_policy |
문자열 | 워크로드가 중지될 때 컨테이너 런처의 다시 시작 정책입니다.
유효한 값은 Always , OnFailure , Never 입니다. 기본값은 Never 입니다. |
Compute Engine 소유권 주장
다음 표에서는 증명 토큰의 gce
클레임을 설명합니다.
키 | 유형 | 설명 |
---|---|---|
instance_id |
문자열 | VM 인스턴스 ID입니다. |
instance_name |
문자열 | VM 인스턴스 이름입니다. |
project_id |
문자열 | VM이 실행 중인 프로젝트의 프로젝트 ID입니다. |
project_number |
문자열 | VM이 실행 중인 프로젝트의 프로젝트 번호입니다. |
zone |
문자열 | 컨피덴셜 VM이 실행되는 Compute Engine 영역입니다. |
컨테이너 이미지 서명 소유권 주장
다음 표에서는 증명 토큰의 image_signatures
클레임을 설명합니다.
키 | 유형 | 설명 |
---|---|---|
key_id |
문자열 |
공개 키의 16진수 디지털 지문입니다. 지문을 가져오려면 다음 명령어를 실행합니다. openssl pkey -pubin -in public_key.pem -outform DER | openssl sha256 여기서 |
signature |
문자열 | 서명된 컨테이너와 연결되어 있으며 간단한 서명 형식을 따르는 페이로드의 base64로 인코딩된 서명입니다. |
signature_algorithm |
문자열 |
키에 서명하는 데 사용되는 알고리즘입니다. 다음 중 하나입니다.
|
다음 단계
증명 주장에 관한 자세한 내용은 항목 증명 토큰 (EAT)에 관한 IETF 초안을 참고하세요.
OpenID 토큰 클레임에 관한 자세한 내용은 OpenID Connect Core 1.0을 참고하세요.