Gerenciar mapas de certificados

Um mapa de certificado faz referência a uma ou mais entradas que atribuem certificados específicos a nomes de host específicos. Esta página descreve como criar e gerenciar mapas de certificados.

Para mais informações, consulte Mapas de certificados.

Criar um CertificateMap

Você cria um mapa de certificados para se referir à entrada do mapa de certificados associada ao seu certificado.

Para realizar esta tarefa, você precisa ter um dos seguintes papéis do IAM no projeto do Google Cloud de destino.

  • Função de editor do Gerenciador de certificados (roles/certificatemanager.editor)
  • Função de proprietário do Gerenciador de certificados (roles/certificatemanager.owner)

Para mais informações, consulte Papéis e permissões.

Para criar um mapa de certificado, use o comando gcloud certificate-manager maps create:

gcloud certificate-manager maps create CERTIFICATE_MAP_NAME

Substitua:

  • CERTIFICATE_MAP_NAME: o nome do mapa de certificados.

Para criar um mapa de certificado, faça uma solicitação POST para o método certificateMaps.create:

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

Substitua:

  • PROJECT_ID: o ID do projeto do Google Cloud.
  • CERTIFICATE_MAP_NAME: o nome do mapa de certificados.

Para criar um mapa de certificado, use um recurso 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
  }
}

Para saber como aplicar ou remover uma configuração do Terraform, consulte Comandos básicos do Terraform.

Anexar um mapa de certificado a um proxy

Depois de criar e configurar um mapa de certificados com entradas de mapa de certificados, anexe o mapa de certificados ao proxy de destino. O Gerenciador de certificados é compatível com proxies HTTPS e SSL de destino com escopo global. Para mais informações sobre as diferenças entre esses tipos de proxy, consulte Usar proxies de destino.

Se você anexar um certificado TLS (SSL) ao proxy de destino e também anexar certificados por um mapa de certificados, o proxy usará os certificados referenciados no mapa e ignorará o certificado anexado diretamente.

Para realizar esta tarefa, você precisa ter um dos seguintes papéis do IAM no projeto do Google Cloud de destino.

  • Função de editor do Gerenciador de certificados (roles/certificatemanager.editor)

Para mais informações, consulte Papéis e permissões.

Para anexar o mapa de certificado ao proxy HTTPS de destino, use o comando gcloud compute target-https-proxies update:

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

Para anexar o mapa de certificado ao proxy SSL de destino, use o comando gcloud compute target-ssl-proxies update:

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

Substitua:

  • PROXY_NAME: o nome do proxy de destino.
  • CERTIFICATE_MAP_NAME: o nome do mapa de certificados que contém entradas que fazem referência aos certificados de destino.

Para anexar o mapa de certificados ao proxy HTTPS de destino, faça uma solicitação POST ao método targetHttpsProxies:

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

Para anexar o mapa de certificado ao proxy SSL de destino, faça uma solicitação POST para o método targetSslProxies:

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

Substitua:

  • PROJECT_ID: o ID do projeto do Google Cloud.
  • PROXY_NAME: o nome do proxy de destino.
  • CERTIFICATE_MAP_NAME: o nome do mapa de certificados que contém entradas que fazem referência aos certificados de destino.

Desvincular um mapa de certificado de um proxy

Antes de desconectar um mapeamento de certificado de um proxy, observe o seguinte:

  • Se algum certificado TLS (SSL) for anexado diretamente ao proxy, a remoção do mapa de certificado fará com que o proxy volte a usá-los.

  • Se nenhum certificado TLS (SSL) for anexado diretamente ao proxy, o mapa de certificado não poderá ser removido. Anexe pelo menos um certificado TLS diretamente ao proxy antes de desconectar o mapa de certificados.

Para realizar esta tarefa, você precisa ter um dos seguintes papéis do IAM no projeto do Google Cloud de destino.

  • Papel de administrador do balanceador de carga do Compute (roles/compute.loadBalancerAdmin)

Para mais informações, consulte Papéis e permissões.

Para desconectar qualquer mapa de certificado anexado do proxy HTTPS de destino, use o comando gcloud compute target-https-proxies update:

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

Para remover qualquer mapa de certificado anexado do proxy SSL de destino, use o comando gcloud compute target-ssl-proxies update:

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

Substitua:

  • PROXY_NAME: o nome do proxy de destino.

Para desconectar qualquer mapa de certificado anexado do proxy HTTPS de destino, faça uma solicitação POST ao método targetHttpsProxies:

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

Para desconectar qualquer mapa de certificado anexado do proxy SSL de destino, faça uma solicitação POST para o método targetSslProxies:

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

Substitua:

  • PROJECT_ID: o ID do projeto do Google Cloud.
  • PROXY_NAME: o nome do proxy de destino.

Atualizar um mapa de certificado

É possível atualizar a descrição e os rótulos de um mapa de certificado.

Para realizar esta tarefa, você precisa ter um dos seguintes papéis do IAM no projeto do Google Cloud de destino.

  • Função de editor do Gerenciador de certificados (roles/certificatemanager.editor)
  • Função de proprietário do Gerenciador de certificados (roles/certificatemanager.owner)

Para mais informações, consulte Papéis e permissões.

Para atualizar um mapa de certificados, use o comando gcloud certificate-manager maps update:

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

Substitua:

  • CERTIFICATE_MAP_NAME: o nome do mapa de certificados.
  • DESCRIPTION: a nova descrição para este mapa de certificados.
  • LABELS: uma lista separada por vírgulas de identificadores aplicados a este mapa de certificado.

Para atualizar o mapa de certificados, faça uma solicitação PATCH para o método certificateMaps.patch:

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

Substitua:

  • PROJECT_ID: o ID do projeto do Google Cloud.
  • CERTIFICATE_MAP_NAME: o nome do mapa de certificados.
  • DESCRIPTION: a nova descrição para este mapa de certificados.
  • LABEL_KEY: uma chave de rótulo aplicada a este mapa de certificados.
  • LABEL_VALUE: um rótulo aplicado a este mapa de certificados.

Listar mapas de certificados

É possível listar, filtrar e classificar todos os mapas de certificado configurados do projeto.

Para realizar esta tarefa, você precisa ter um dos seguintes papéis do IAM no projeto do Google Cloud de destino.

  • Função de leitor do Gerenciador de certificados (roles/certificatemanager.viewer)
  • Função de editor do Gerenciador de certificados (roles/certificatemanager.editor)
  • Função de proprietário do Gerenciador de certificados (roles/certificatemanager.owner)

Para mais informações, consulte Papéis e permissões.

Para listar mapas de certificado, use o comando gcloud certificate-manager maps list:

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

Substitua:

  • FILTER: uma expressão que restringe os resultados retornados a valores específicos.

    Por exemplo, para filtrar os resultados pelos rótulos e pelo tempo de criação, especifique: --filter='labels.key:value AND create_time > "2021-09-01T00:00:00Z"'

    Para mais exemplos de filtragem que podem ser usados com o Gerenciador de certificados, consulte Como ordenar e filtrar resultados de listas na documentação do Cloud Key Management Service.

  • PAGE_SIZE: o número de resultados a serem retornados por página.

  • LIMIT: o número máximo de resultados a serem retornados.

  • SORT_BY: uma lista delimitada por vírgulas de campos name por que os resultados retornados são classificados. A ordem de classificação padrão é crescente. Para classificar em ordem decrescente, prefixe o campo com um til (~).

Para listar os mapas de certificados configurados, faça uma solicitação LIST para o método certificateMaps.list:

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

Substitua:

  • PROJECT_ID: o ID do projeto do Google Cloud.
  • FILTER: uma expressão que restringe os resultados retornados a valores específicos.

    Por exemplo, para filtrar os resultados pelos rótulos e pela hora de criação, especifique: --filter='labels.key:value AND create_time > "2021-09-01T00:00:00Z"'

    Para mais exemplos de filtragem que podem ser usados com o Gerenciador de certificados, consulte Como ordenar e filtrar resultados de listas na documentação do Cloud Key Management Service.

  • PAGE_SIZE: o número de resultados a serem retornados por página.

  • SORT_BY: uma lista delimitada por vírgulas de campos name por que os resultados retornados são classificados. A ordem de classificação padrão é crescente. Para classificar em ordem decrescente, prefixe o campo com um til (~).

Conferir os detalhes de um mapa de certificado

É possível conferir os detalhes de um mapa de certificado, como a data e hora de criação e a data e hora da última atualização.

Para realizar esta tarefa, você precisa ter um dos seguintes papéis do IAM no projeto do Google Cloud de destino.

  • Função de leitor do Gerenciador de certificados (roles/certificatemanager.viewer)
  • Função de editor do Gerenciador de certificados (roles/certificatemanager.editor)
  • Função de proprietário do Gerenciador de certificados (roles/certificatemanager.owner)

Para mais informações, consulte Papéis e permissões.

Para conferir o estado de um mapa de certificado, use o comando gcloud certificate-manager maps describe:

gcloud certificate-manager maps describe CERTIFICATE_MAP_NAME

Substitua:

  • CERTIFICATE_MAP_NAME: o nome do mapa de certificados.

Para conferir os detalhes do mapa de certificados, faça uma solicitação GET para o método certificateMaps.get:

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

Substitua:

  • PROJECT_ID: o ID do projeto do Google Cloud.
  • CERTIFICATE_MAP_NAME: o nome do mapa de certificados.

Excluir um mapa de certificado

Antes de excluir um mapeamento de certificado, faça o seguinte:

Para realizar esta tarefa, você precisa ter um dos seguintes papéis do IAM no projeto do Google Cloud de destino.

  • Função de proprietário do Gerenciador de certificados (roles/certificatemanager.owner)

Para mais informações, consulte Papéis e permissões.

Para excluir um mapa de certificado, use o comando gcloud certificate-manager maps delete:

gcloud certificate-manager maps delete CERTIFICATE_MAP_NAME

Substitua:

  • CERTIFICATE_MAP_NAME: o nome do mapa de certificados.

Para excluir o mapa de certificados, faça uma solicitação DELETE para o método certificateMaps.delete:

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

Substitua:

  • PROJECT_ID: o ID do projeto do Google Cloud.
  • CERTIFICATE_MAP_NAME: o nome do mapa de certificados.

A seguir