인증서 맵 관리

인증서 맵은 특정 인증서를 특정 호스트 이름에 할당하는 하나 이상의 인증서 맵 항목을 참조합니다. 이 페이지에서는 인증서 맵을 만들고 관리하는 방법을 설명합니다.

자세한 내용은 인증서 맵을 참고하세요.

인증서 맵 만들기

인증서와 연결된 인증서 맵 항목을 참조하는 인증서 맵을 만듭니다.

gcloud

인증서 맵을 만들려면 gcloud certificate-manager maps create 명령어를 사용합니다.

gcloud certificate-manager maps create CERTIFICATE_MAP_NAME

다음을 바꿉니다.

  • CERTIFICATE_MAP_NAME: 인증서 맵의 이름입니다.

API

인증서 맵을 만들려면 certificateMaps.create 메서드에 POST 요청을 전송합니다.

POST /v1/projects/PROJECT_ID/locations/global/certificateMaps?certificate_map_id=CERTIFICATE_MAP_NAME

다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트의 ID
  • CERTIFICATE_MAP_NAME: 인증서 맵의 이름입니다.

Terraform

인증서 맵을 만들려면 google_certificate_manager_certificate_map 리소스를 사용하면 됩니다.

resource "google_certificate_manager_certificate_map" "default" {
  name        = "${local.name}-certmap1-${random_id.tf_prefix.hex}"
  description = "${local.domain} certificate map"
  labels = {
    "terraform" : true
  }
}

Terraform 구성을 적용하거나 삭제하는 방법은 기본 Terraform 명령어를 참조하세요.

프록시에 인증서 맵 연결

인증서 맵 항목으로 인증서 맵을 만들고 구성한 후 인증서 맵을 대상 프록시에 연결합니다. 인증서 관리자는 전역 범위의 대상 HTTPS 및 대상 SSL 프록시를 모두 지원합니다. 이러한 프록시 유형 간 차이점에 대한 자세한 내용은 대상 프록시 사용을 참고하세요.

TLS (SSL) 인증서를 대상 프록시에 연결하고 인증서 맵을 통해 인증서를 연결하면 프록시는 인증서 맵에서 참조하는 인증서를 사용하고 직접 연결된 인증서는 무시합니다.

gcloud

인증서 맵을 대상 HTTPS 프록시에 연결하려면 gcloud compute target-https-proxies update 명령어를 사용합니다.

gcloud compute target-https-proxies update PROXY_NAME \
    --certificate-map="CERTIFICATE_MAP_NAME"

인증서 맵을 대상 SSL 프록시에 연결하려면 gcloud compute target-ssl-proxies update 명령어를 사용합니다.

gcloud compute target-ssl-proxies update PROXY_NAME \
    --certificate-map="CERTIFICATE_MAP_NAME"

다음을 바꿉니다.

  • PROXY_NAME: 대상 프록시 이름
  • CERTIFICATE_MAP_NAME: 대상 인증서를 참조하는 인증서 맵 항목이 포함된 인증서 맵의 이름

API

인증서 맵을 대상 HTTPS 프록시에 연결하려면 targetHttpsProxies 메서드에 POST 요청을 전송합니다.

POST /projects/PROJECT_ID/global/targetHttpsProxies/PROXY_NAME/setCertificateMap
{
  certificateMap: "//certificatemanager.googleapis.com/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME",
}

인증서 맵을 대상 SSL 프록시에 연결하려면 targetSslProxies 메서드에 POST 요청을 전송합니다.

POST /projects/PROJECT_ID/global/targetSslProxies/PROXY_NAME/setCertificateMap
{
  certificateMap: "//certificatemanager.googleapis.com/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME",
}

다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트의 ID
  • PROXY_NAME: 대상 프록시 이름
  • CERTIFICATE_MAP_NAME: 대상 인증서를 참조하는 인증서 맵 항목이 포함된 인증서 맵의 이름

프록시에서 인증서 맵 분리

프록시에서 인증서 맵을 분리하기 전에 다음 사항에 유의하세요.

  • TLS (SSL) 인증서가 프록시에 직접 연결된 경우 인증서 맵을 분리하면 프록시가 인증서를 다시 사용합니다.

  • 프록시에 직접 연결된 TLS (SSL) 인증서가 없으면 인증서 맵을 분리할 수 없습니다. 인증서 맵을 분리하기 전에 TLS 인증서를 하나 이상 프록시에 직접 연결합니다.

gcloud

대상 HTTPS 프록시에서 연결된 인증서 맵을 분리하려면 gcloud compute target-https-proxies update 명령어를 사용합니다.

gcloud compute target-https-proxies update PROXY_NAME \
    --clear-certificate-map

대상 SSL 프록시에서 연결된 인증서 맵을 분리하려면 gcloud compute target-ssl-proxies update 명령어를 사용합니다.

gcloud compute target-ssl-proxies update PROXY_NAME \
    --clear-certificate-map

다음을 바꿉니다.

  • PROXY_NAME: 대상 프록시 이름

API

대상 HTTPS 프록시에서 연결된 인증서 맵을 분리하려면 targetHttpsProxies 메서드에 POST 요청을 전송합니다.

POST /projects/PROJECT_ID/global/targetHttpsProxies/PROXY_NAME/setCertificateMap
{
  certificateMap: "",
}

대상 SSL 프록시에서 연결된 인증서 맵을 분리하려면 targetSslProxies 메서드에 POST 요청을 보냅니다.

POST /projects/PROJECT_ID/global/targetSslProxies/PROXY_NAME/setCertificateMap
{
  certificateMap: "",
}

다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트의 ID
  • PROXY_NAME: 대상 프록시 이름

인증서 맵 업데이트

인증서 맵의 설명과 라벨을 업데이트할 수 있습니다.

gcloud

인증서 맵을 업데이트하려면 gcloud certificate-manager maps update 명령어를 사용합니다.

gcloud certificate-manager maps update CERTIFICATE_MAP_NAME \
    --description="DESCRIPTION"
    --update-labels="LABELS"

다음을 바꿉니다.

  • CERTIFICATE_MAP_NAME: 인증서 맵의 이름입니다.
  • DESCRIPTION: 이 인증서 맵에 대한 새 설명입니다.
  • LABELS: 이 인증서 맵에 적용된 쉼표로 구분된 라벨 목록입니다.

API

인증서 맵을 업데이트하려면 certificateMaps.patch 메서드에 PATCH 요청을 전송합니다.

PATCH /v1/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME?updateMask=labels,description"
{
  "description": "DESCRIPTION",
  "labels": {
    "LABEL_KEY": "LABEL_VALUE",
  }
}

다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트의 ID
  • CERTIFICATE_MAP_NAME: 인증서 맵의 이름입니다.
  • DESCRIPTION: 이 인증서 맵에 대한 새 설명입니다.
  • LABEL_KEY: 이 인증서 맵에 적용된 라벨 키입니다.
  • LABEL_VALUE: 이 인증서 맵에 적용된 라벨입니다.

인증서 맵 나열

프로젝트의 구성된 모든 인증서 맵을 나열, 필터링, 정렬할 수 있습니다.

콘솔

  1. Google Cloud 콘솔에서 인증서 관리자 페이지로 이동합니다.

    인증서 관리자로 이동

  2. 인증서 맵 탭에서 선택한 프로젝트에 구성된 모든 인증서 맵 목록을 확인합니다.

gcloud

인증서 맵을 나열하려면 gcloud certificate-manager maps list 명령어를 사용합니다.

gcloud certificate-manager maps list \
    --filter="FILTER" \
    --page-size="PAGE_SIZE" \
    --limit="LIMIT" \
    --sort-by="SORT_BY"

다음을 바꿉니다.

  • FILTER: 반환된 결과를 특정 값으로 제한하는 표현식입니다.

    예를 들어 라벨 및 생성 시간별로 결과를 필터링하려면 다음을 지정하면 됩니다. --filter='labels.key:value AND create_time > "2021-09-01T00:00:00Z"'

    인증서 관리자에서 사용할 수 있는 필터링 예시는 Cloud Key Management Service 문서의 목록 결과 정렬 및 필터링을 참고하세요.

  • PAGE_SIZE: 페이지당 반환할 결과 수입니다.

  • LIMIT: 반환할 최대 결과 수입니다.

  • SORT_BY: 쉼표로 구분된 name 필드의 목록으로, 반환된 결과가 정렬됩니다. 기본 정렬 순서는 오름차순입니다. 내림차순 정렬 순서의 경우 필드 앞에 물결(~)로 프리픽스를 붙입니다.

API

구성된 인증서 맵을 나열하려면 certificateMaps.list 메서드에 LIST 요청을 전송합니다.

GET /v1/projects/PROJECT_ID/locations/global/certificateMaps?filter=FILTER&pageSize=PAGE_SIZE&sortBy=SORT_BY

다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트의 ID
  • FILTER: 반환된 결과를 특정 값으로 제한하는 표현식입니다.

    예를 들어 라벨 및 생성 시간별로 결과를 필터링하려면 다음을 지정하면 됩니다. --filter='labels.key:value AND create_time > "2021-09-01T00:00:00Z"'

    인증서 관리자에서 사용할 수 있는 필터링 예시는 Cloud Key Management Service 문서의 목록 결과 정렬 및 필터링을 참고하세요.

  • PAGE_SIZE: 페이지당 반환할 결과 수입니다.

  • SORT_BY: 쉼표로 구분된 name 필드의 목록으로, 반환된 결과가 정렬됩니다. 기본 정렬 순서는 오름차순입니다. 내림차순 정렬 순서의 경우 필드 앞에 물결(~)로 프리픽스를 붙입니다.

인증서 맵 세부정보 보기

생성 날짜/시간, 마지막 업데이트 날짜/시간과 같은 기존 인증서 맵의 세부정보를 볼 수 있습니다.

콘솔

  1. Google Cloud 콘솔에서 인증서 관리자 페이지로 이동합니다.

    인증서 관리자로 이동

  2. 인증서 맵 탭에서 맵 항목이 포함된 인증서 맵의 이름을 클릭합니다. 인증서 맵 세부정보 페이지에는 선택한 인증서 맵에 관한 세부정보가 표시됩니다.

gcloud

인증서 맵의 상태를 보려면 gcloud certificate-manager maps describe 명령어를 사용합니다.

gcloud certificate-manager maps describe CERTIFICATE_MAP_NAME

다음을 바꿉니다.

  • CERTIFICATE_MAP_NAME: 인증서 맵의 이름입니다.

API

인증서 맵의 세부정보를 보려면 certificateMaps.get 메서드에 GET 요청을 보냅니다.

GET /v1/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME

다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트의 ID
  • CERTIFICATE_MAP_NAME: 인증서 맵의 이름입니다.

인증서 맵 삭제

인증서 맵을 삭제하기 전에 다음을 실행합니다.

gcloud

인증서 맵을 삭제하려면 gcloud certificate-manager maps delete 명령어를 사용합니다.

gcloud certificate-manager maps delete CERTIFICATE_MAP_NAME

다음을 바꿉니다.

  • CERTIFICATE_MAP_NAME: 인증서 맵의 이름입니다.

API

인증서 맵을 삭제하려면 certificateMaps.delete 메서드에 DELETE 요청을 보냅니다.

DELETE /v1/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME

다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트의 ID
  • CERTIFICATE_MAP_NAME: 인증서 맵의 이름입니다.

다음 단계