리소스: ClientTlsPolicy
ClientTlsPolicy는 클라이언트가 서비스 백엔드에 대한 연결을 인증하는 방법을 지정하는 리소스입니다. 이 리소스 자체는 백엔드 서비스 리소스에 연결되어 있지 않는 한 구성에 영향을 미치지 않습니다.
JSON 표현 |
---|
{ "name": string, "description": string, "createTime": string, "updateTime": string, "labels": { string: string, ... }, "sni": string, "clientCertificate": { object ( |
필드 | |
---|---|
name |
필수 항목입니다. ClientTlsPolicy 리소스 이름입니다. |
description |
선택사항입니다. 리소스에 대한 자유 텍스트 설명입니다. |
createTime |
출력 전용입니다. 리소스가 생성된 타임스탬프입니다. RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 |
updateTime |
출력 전용입니다. 리소스가 업데이트된 타임스탬프입니다. RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 |
labels |
선택사항입니다. 리소스와 연결된 라벨 태그 집합입니다.
|
sni |
선택사항입니다. TLS 핸드셰이크 중에 서버에 표시할 서버 이름 표시 문자열입니다. 예를 들면 'secure.example.com'입니다. |
clientCertificate |
선택사항입니다. P2P 인증을 위해 클라이언트 ID(공개 및 비공개 키)를 프로비저닝하는 메커니즘을 정의합니다. 이 요소가 있으면 mTLS가 있음을 나타냅니다. |
serverValidationCa[] |
선택사항입니다. 서버 인증서 유효성을 검사하기 위해 인증 기관 인증서를 가져오는 메커니즘을 정의합니다. 비어 있으면 클라이언트에서 서버 인증서 유효성을 검사하지 않습니다. |
targets[] |
선택사항입니다. 이 정책에서 제공해야 하는 대상 목록을 정의합니다. 대상은 BackendService만 될 수 있으며 BackendService의 정규화된 이름(예: projects/xxx/backendServices/locations/global/xxx)이어야 합니다. 참고: ClientTlsPolicy와 참조된 BackendService는 같은 프로젝트에 있어야 합니다. Google 서비스 메시(GSM) 제품에만 사용됩니다. |
workloadContextSelectors[] |
선택사항입니다. 정책을 대상에 적용해야 하는 워크로드를 선택합니다. WorkloadContextSelector가 없는 정책은 충돌이 없는 경우 항상 대상에 적용되어야 합니다. WorkloadContextSelector가 여러 개 있는 경우 WorkloadContextSelector 중 하나라도 일치하면 정책이 모든 대상에 적용됩니다. 따라서 이러한 선택기를 OR 방식으로 결합할 수 있습니다. 같은 BackendService를 대상으로 하는 ClientTlsPolicy가 여러 개 있으면 유효한 ClientTlsPolicy 하나만 있어야 하며 우선순위는 다음과 같습니다. 1) workloadContextSelector가 있는 ClientTlsPolicy가 먼저 우선 적용됩니다. 2) workloadContextSelector가 일치하는 ClientTlsPolicy가 여러 개 있으면 가장 먼저 생성된 ClientTlsPolicy가 우선 적용됩니다. 3) 그런 다음 workloadSelector가 없는 ClientTlsPolicy가 우선 적용됩니다. 현재는 같은 backendService에 연결된 workloadSelector가 없는 ClientTlsPolicy가 여러 개 있을 수 없습니다. 참고: GSM 전용입니다. |
subjectAltNames[] |
선택사항입니다. 인증서에서 서버 ID를 확인하기 위한 대체 이름 목록입니다. 지정하면 클라이언트에서 서버 인증서 제목 대체 이름이 지정된 값 중 하나와 일치하는지 확인합니다. 지정되면 목록에서 BackendService.securitySettings.subjectAltNames[]에서 subjectAltNames 값을 재정의합니다. 도메인 이름은 일치검색(예: foo) 또는 서픽스 일치(예: foo* 또는 foo/*)일 수 있습니다. |
internalCaller |
선택사항입니다. 내부 컨트롤러를 식별하도록 설정된 플래그입니다. 이 플래그를 설정하면 다른 선택적 필드가 설정되지 않은 경우에도 호출자가 허용 목록에 추가된 서비스의 P4SA에 포함되어 있는지 검증하기 위해 P4SA 검사가 트리거됩니다. |
WorkloadContextSelector
정책을 적용할 워크로드를 결정합니다.
JSON 표현 |
---|
{
"metadataSelectors": [
{
object ( |
필드 | |
---|---|
metadataSelectors[] |
필수 항목입니다. 워크로드를 선택하는 데 사용되는 메타데이터 라벨 값 맵입니다. MetadataSelector가 여러 개 제공된 경우 정책을 이 워크로드에 적용하려면 모든 MetadataSelector가 일치해야 합니다. 따라서 이러한 선택기는 AND 방식으로 결합되어야 합니다. |
MetadataSelector
이 메시지 유형은 나중에 맵을 사용하여 우선순위와 같은 추가 필드를 지원하는 것과는 달리 존재합니다.
JSON 표현 |
---|
{ "key": string, "value": string } |
필드 | |
---|---|
key |
필수 항목입니다. 선택 중인 메타데이터 필드 |
value |
필수 항목입니다. 비교할 이 메타데이터 필드의 값 |
방법 |
|
---|---|
|
특정 프로젝트와 위치에 새 ClientTlsPolicy를 만듭니다. |
|
단일 ClientTlsPolicy를 삭제합니다. |
|
단일 ClientTlsPolicy의 세부정보를 가져옵니다. |
|
리소스의 액세스 제어 정책을 가져옵니다. |
|
특정 프로젝트와 위치의 ClientTlsPolicy를 나열합니다. |
|
단일 ClientTlsPolicy 매개변수를 업데이트합니다. |
|
지정된 리소스의 액세스 제어 정책을 설정합니다. |
|
지정된 리소스에 대해 호출자가 보유한 권한을 반환합니다. |