REST Resource: projects.locations.serverTlsPolicies

리소스: ServerTlsPolicy

ServerTlsPolicy는 서버가 수신 요청을 인증하는 방법을 지정하는 리소스입니다. 대상 HTTPS 프록시 또는 엔드포인트 구성 선택기 리소스에 연결되지 않았다면 이 리소스 자체가 구성에 영향을 미치지 않습니다.

애플리케이션 부하 분산기에서 허용하는 형식의 ServerTlsPolicy는 EXTERNAL, EXTERNAL_MANAGED 또는 INTERNAL_MANAGED 부하 분산 스키마가 있는 TargetHttpsProxy에만 연결할 수 있습니다. Traffic Director 호환 ServerTlsPolicies는 Traffic Director INTERNAL_SELF_MANAGED 부하 분산 스키마를 사용하여 EndpointPolicy 및 TargetHttpsProxy에 연결할 수 있습니다.

JSON 표현
{
  "name": string,
  "description": string,
  "createTime": string,
  "updateTime": string,
  "labels": {
    string: string,
    ...
  },
  "allowOpen": boolean,
  "serverCertificate": {
    object (CertificateProvider)
  },
  "mtlsPolicy": {
    object (MTLSPolicy)
  }
}
필드
name

string

필수 항목. ServerTlsPolicy 리소스의 이름입니다. projects/*/locations/{location}/serverTlsPolicies/{serverTlsPolicy} 패턴과 일치합니다.

description

string

리소스에 대한 자유 텍스트 설명입니다.

createTime

string (Timestamp format)

출력 전용입니다. 리소스가 생성된 타임스탬프입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

updateTime

string (Timestamp format)

출력 전용입니다. 리소스가 업데이트된 타임스탬프입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

labels

map (key: string, value: string)

리소스와 연결된 라벨 태그 집합입니다.

"key": value 쌍 목록을 포함하는 객체입니다. 예: { "name": "wrench", "mass": "1.3kg", "count": "3" }

allowOpen

boolean

이 필드는 Traffic Director 정책에만 적용됩니다. 애플리케이션 부하 분산기 정책의 경우 false로 설정해야 합니다.

서버에서 일반 텍스트 연결을 허용하는지 결정합니다. true로 설정하면 서버에서 일반 텍스트 연결을 허용합니다. 기본적으로 false로 설정됩니다. 이 설정은 다른 암호화 모드를 제외하지 않습니다. 예를 들어 allowOpenmtlsPolicy가 설정된 경우 서버는 일반 텍스트 연결과 mTLS 연결을 모두 허용합니다. 호환성을 확인하려면 다른 암호화 모드의 문서를 참조하세요.

포트 80에 도달하는 TLS 및 비TLS 트래픽이 혼합된 상태에서 배포를 TLS로 업그레이드하려는 경우 사용해 보세요.

serverCertificate

object (CertificateProvider)

Traffic Director와 함께 정책을 사용할 경우 선택사항입니다. 애플리케이션 부하 분산기의 경우 비어 있어야 합니다.

서버 ID(공개 및 비공개 키)를 프로비저닝하는 메커니즘을 정의합니다. 일반 텍스트와 TLS를 모두 허용하는 허용 모드가 지원되지 않으므로 allowOpen과 결합할 수 없습니다.

mtlsPolicy

object (MTLSPolicy)

이 필드는 정책이 애플리케이션 부하 분산기와 함께 사용되는 경우 필수입니다. Traffic Director의 경우 이 필드는 비어 있을 수 있습니다.

P2P 인증(상호 TLS - mTLS)을 위해 피어 유효성 검사 인증서를 프로비저닝하는 메커니즘을 정의합니다. 지정하지 않으면 클라이언트 인증서가 요청되지 않습니다. 연결은 mTLS가 아닌 TLS로 취급됩니다. allowOpenmtlsPolicy가 설정된 경우 서버는 일반 텍스트 연결과 mTLS 연결을 모두 허용합니다.

MTLSPolicy

MTLSPolicy의 사양입니다.

JSON 표현
{
  "clientValidationMode": enum (ClientValidationMode),
  "clientValidationCa": [
    {
      object (ValidationCA)
    }
  ],
  "clientValidationTrustConfig": string
}
필드
clientValidationMode

enum (ClientValidationMode)

클라이언트가 부하 분산기에 잘못된 인증서를 제공하거나 인증서를 제공하지 않으면 clientValidationMode는 클라이언트 연결이 처리되는 방법을 지정합니다.

애플리케이션 부하 분산기와 함께 정책을 사용하려면 이 필드가 필요합니다. Traffic Director의 경우 비어 있어야 합니다.

clientValidationCa[]

object (ValidationCA)

Traffic Director와 함께 정책을 사용하려는 경우 필요합니다. 애플리케이션 부하 분산기의 경우 비어 있어야 합니다.

클라이언트 인증서 유효성을 검사하기 위해 인증 기관 인증서를 가져오는 메커니즘을 정의합니다.

clientValidationTrustConfig

string

certificatemanager.googleapis.com 네임스페이스의 TrustConfig 참조입니다.

지정된 경우 체인 유효성 검사가 지정된 TrustConfig에 구성된 인증서에 대해 실행됩니다.

정책이 애플리케이션 부하 분산기와 함께 사용되는 경우에만 허용됩니다.

ClientValidationMode

상호 TLS 인증서 유효성 검사 모드입니다.

열거형
CLIENT_VALIDATION_MODE_UNSPECIFIED 허용되지 않음
ALLOW_INVALID_OR_MISSING_CLIENT_CERT 클라이언트 인증서의 인증서 체인 검증에 실패했거나 클라이언트 인증서가 제공되지 않은 경우에도 연결을 허용합니다. 클라이언트 인증서가 제공된 경우 비공개 키의 소유 증명은 항상 확인됩니다. 이 모드에서는 백엔드가 피어를 인증하거나 클라이언트 인증서 지문이 누락된 경우 연결을 거부하기 위해 클라이언트 인증서에서 추출된 데이터의 처리를 구현해야 합니다.
REJECT_INVALID

클라이언트 인증서를 요구하고 클라이언트 인증서 검증이 통과한 경우에만 백엔드에 대한 연결을 허용합니다.

설정된 경우 clientValidationTrustConfig에 지정된 비어 있지 않은 TrustConfig 참조가 필요합니다.

메서드

create

특정 프로젝트와 위치에 새 ServerTlsPolicy를 만듭니다.

delete

단일 ServerTlsPolicy를 삭제합니다.

get

단일 ServerTlsPolicy의 세부정보를 가져옵니다.

getIamPolicy

리소스의 액세스 제어 정책을 가져옵니다.

list

특정 프로젝트와 위치의 ServerTlsPolicies를 나열합니다.

patch

단일 ServerTlsPolicy 파라미터를 업데이트합니다.

setIamPolicy

지정된 리소스의 액세스 제어 정책을 설정합니다.

testIamPermissions

지정된 리소스에 대해 호출자가 보유한 권한을 반환합니다.