Gerenciar configurações de confiança

Nesta página, descrevemos como criar e gerenciar configurações de confiança para uso em cenários de autenticação de TLS mútua (mTLS).

Para saber mais, acesse os recursos a seguir:

As instruções gcloud nesta página pressupõem que você esteja usando o Cloud Shell ou outro ambiente com o bash instalado. Para mais informações sobre os comandos gcloud usados nesta página, consulte a referência da CLI do Gerenciador de certificados.

Criar uma configuração de confiança

Para concluir esta tarefa, é preciso ter um dos seguintes papéis no projeto de destino do Google Cloud:

  • Editor do Gerenciador de certificados (roles/certificatemanager.editor)
  • Proprietário do gerenciador de certificados (roles/certificatemanager.owner)

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

Para criar uma configuração de confiança, siga estas etapas:

  1. Criar um arquivo YAML de configuração de confiança que especifique os parâmetros de configuração de confiança. O arquivo tem o seguinte formato:

    trustStores:
    ‑ trustAnchors:
     ‑ pemCertificate: "CERTIFICATE_PEM_PAYLOAD"
     intermediateCas:
     ‑ pemCertificate: "INTER_CERT_PEM_PAYLOAD"
    allowlistedCertificates:
    ‑ pemCertificate: "ALLOWLISTED_CERT1"
    ‑ pemCertificate: "ALLOWLISTED_CERT2"
    

    Substitua:

    • TRUST_CONFIG_ID: um ID exclusivo que identifica esse recurso de configuração de confiança.
    • CERTIFICATE_PEM_PAYLOAD: o payload completo do PEM para o certificado usar nesse recurso de configuração de confiança.
    • INTER_CERT_PEM_PAYLOAD: o payload completo do PEM para o certificado intermediário a ser usado nesse recurso de configuração de confiança. Este valor é opcional.
    • ALLOWLISTED_CERT1 e ALLOWLISTED_CERT2: os certificados adicionados a uma lista de permissões para uso desse recurso de configuração de confiança. Este valor é opcional.

      É possível especificar várias âncoras de confiança e certificados intermediários usando várias instâncias do campo pemCertificate, um certificado por instância, nas respectivas seções da especificação do recurso da configuração de confiança.

      Um certificado adicionado a uma lista de permissões representa qualquer certificado que possa ser encapsulado na configuração de confiança para que seja sempre considerado válido. Para encapsular vários certificados em uma lista de permissões na configuração de confiança, use várias instâncias do campo pemCertificate, um certificado por instância. Você não precisa de um repositório de confiança enquanto usa certificados adicionados a uma lista de permissões. Um certificado adicionado a uma lista de permissões é sempre considerado válido, desde que seja analisável, a comprovação de posse da chave privada seja estabelecida e as restrições no campo SAN do certificado sejam atendidas. Os certificados expirados também são considerados válidos quando são adicionados a uma lista de permissões. Para mais informações sobre o formato codificado em PEM, consulte a RFC 7468 (em inglês).

  2. Importe o arquivo de configuração de confiança no Gerenciador de certificados:

    gcloud

    Use o comando gcloud certificate-manager trust-configs import:

    gcloud certificate-manager trust-configs import TRUST_CONFIG_ID \
       --project=PROJECT_ID \
       --source=TRUST_CONFIG_FILE \
       --location=LOCATION
    

    Substitua:

    • TRUST_CONFIG_ID: um ID exclusivo que identifica esse recurso de configuração de confiança.
    • PROJECT_ID: o ID do projeto de destino do Google Cloud.
    • TRUST_CONFIG_FILE: o caminho completo e o nome do arquivo YAML de configuração de confiança que você criou na etapa 1.
    • LOCATION: a região em que o recurso de configuração de confiança está armazenado. O local padrão é global.

    API

    Faça uma solicitação POST ao método trustConfigs.create:

    POST /v1/projects/PROJECT_ID/locations/LOCATION/trustConfigs?trust_config_id=TRUST_CONFIG_ID
    {
      "description": "DESCRIPTION",
      "trust_stores": {
        "trust_anchors": [{
          "pem_certificate": "CERTIFICATE_PEM_PAYLOAD"
        }],
        "intermediate_cas": [{
          "pem_certificate": "INTER_CERT_PEM_PAYLOAD"
        }],
      },
      "allowlistedCertificates": [{
        "pem_certificate": "ALLOWLISTED_CERT"
      }],
    }
    

    Substitua:

    • PROJECT_ID: o ID do projeto de destino do Google Cloud.
    • LOCATION: o atributo location especifica a região onde o recurso de configuração de confiança está armazenado. O local padrão é global.
    • TRUST_CONFIG_ID: um ID exclusivo que identifica esse recurso de configuração de confiança.
    • DESCRIPTION: uma descrição significativa para esse recurso de configuração de confiança. Este valor é opcional.
    • CERTIFICATE_PEM_PAYLOAD: o payload completo do PEM para o certificado usar nesse recurso de configuração de confiança.
    • INTER_CERT_PEM_PAYLOAD: o payload completo do PEM para o certificado intermediário a ser usado nesse recurso de configuração de confiança. Este valor é opcional.
    • ALLOWLISTED_CERT: o certificado adicionado a uma lista de permissões para usar nesse recurso de configuração de confiança. Esse valor é opcional.

Atualizar uma configuração de confiança

Para concluir esta tarefa, é preciso ter um dos seguintes papéis no projeto de destino do Google Cloud:

  • Editor do Gerenciador de certificados (roles/certificatemanager.editor)
  • Proprietário do gerenciador de certificados (roles/certificatemanager.owner)

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

Para atualizar uma configuração de confiança, siga estas etapas:

  1. Crie um arquivo YAML de configuração de confiança atualizado que especifique os novos parâmetros de configuração de confiança. O arquivo tem o seguinte formato:

    name: "TRUST_CONFIG_ID"
    trustStores:
    ‑ trustAnchors:
     ‑ pemCertificate: "CERTIFICATE_PEM_PAYLOAD"
     intermediateCas:
     ‑ pemCertificate: "INTER_CERT_PEM_PAYLOAD"
    allowlistedCertificates:
    ‑ pemCertificate: "ALLOWLISTED_CERT1"
    ‑ pemCertificate: "ALLOWLISTED_CERT2"
    

    Substitua:

    • TRUST_CONFIG_ID: um ID exclusivo que identifica esse recurso de configuração de confiança.
    • CERTIFICATE_PEM_PAYLOAD: o payload completo do PEM para o certificado usar nesse recurso de configuração de confiança.
    • INTER_CERT_PEM_PAYLOAD: o payload completo do PEM para o certificado intermediário a ser usado nesse recurso de configuração de confiança. Este valor é opcional.
    • ALLOWLISTED_CERT1 e ALLOWLISTED_CERT2: os certificados adicionados a uma lista de permissões para uso desse recurso de configuração de confiança. Este valor é opcional.
  2. Importe o novo arquivo de configuração de confiança no Gerenciador de certificados e o nome do recurso de configuração de confiança atual:

    gcloud

    Use o comando gcloud certificate-manager trust-configs import:

    gcloud certificate-manager trust-configs import TRUST_CONFIG_ID \
        --project=PROJECT_ID \
        --source=TRUST_CONFIG_FILE \
        --location=LOCATION
    

    Substitua:

    • TRUST_CONFIG_ID: o ID do recurso de configuração de confiança de destino.
    • PROJECT_ID: o ID do projeto de destino do Google Cloud.
    • TRUST_CONFIG_FILE: o caminho completo e o nome do arquivo de configuração de confiança atualizado.
    • LOCATION: o atributo location especifica a região onde o recurso de configuração de confiança está armazenado. O local padrão é global.

    API

    Faça uma solicitação PATCH ao método trustConfigs.update:

    PATCH /v1/projects/PROJECT_ID/locations/LOCATION/trustConfigs/TRUST_CONFIG_ID?update_mask=*
     {
       "description": "DESCRIPTION",
       "trust_stores": {
         "trust_anchors": [{
           "pem_certificate": "CERTIFICATE_PEM_PAYLOAD"
         }],
         "intermediate_cas": [{
           "pem_certificate": "INTER_CERT_PEM_PAYLOAD"
         }],
       },
       "allowlistedCertificates": [{
         "pem_certificate": "ALLOWLISTED_CERT"
      }],
     }
    

    Substitua:

    • PROJECT_ID: o ID do projeto de destino do Google Cloud.
    • LOCATION: o atributo location especifica a região onde o recurso de configuração de confiança está armazenado. O local padrão é global.
    • TRUST_CONFIG_ID: o ID do recurso de configuração de confiança de destino.
    • DESCRIPTION: uma descrição significativa para esse recurso de configuração de confiança. Essa descrição é opcional.
    • CERTIFICATE_PEM_PAYLOAD: o payload completo do PEM para o certificado usar nesse recurso de configuração de confiança.
    • INTER_CERT_PEM_PAYLOAD: o payload PEM completo do certificado intermediário a ser usado para esse recurso de configuração de configuração de confiança. Este valor é opcional.
    • ALLOWLISTED_CERT: o certificado adicionado a uma lista de permissões para usar nesse recurso de configuração de confiança. Esse valor é opcional.

Listar configurações de confiança

Para concluir esta tarefa, é preciso ter um dos seguintes papéis no projeto de destino do Google Cloud:

  • Leitor do Gerenciador de certificados (roles/certificatemanager.viewer)
  • Editor do Gerenciador de certificados (roles/certificatemanager.editor)
  • Proprietário do gerenciador de certificados (roles/certificatemanager.owner)

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

Para listar as configurações de confiança configuradas, conclua as etapas a seguir.

Console

  1. No console do Google Cloud, acesse a página Gerenciador de certificados.

    Acesse o Gerenciador de certificados.

  2. Clique na guia Configurações de confiança.

    A guia mostra uma lista de recursos configurados de configuração de confiança.

gcloud

Use o comando gcloud certificate-manager trust-configs list:

gcloud certificate-manager trust-configs list \
    --filter="FILTER" \
    --page-size="PAGE_SIZE" \
    --limit="LIMIT" \
    --sort-by="SORT_BY" \
    --location=LOCATION

Substitua:

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

    Por exemplo, você pode filtrar os resultados pelos seguintes critérios:

    • Marcadores e data/hora de criação: --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 classificar e filtrar resultados da lista na documentação do Cloud Key Management Service.

  • PAGE_SIZE: o número de resultados que serão 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 em que os resultados retornados são classificados.

    A ordem de classificação padrão é crescente. Para ordem de classificação decrescente, prefixe o campo escolhido com um til (~).

  • LOCATION: o atributo location especifica a região onde o recurso de configuração de confiança está armazenado. O local padrão é global.

API

Faça uma solicitação GET ao método trustConfigs.list:

GET /v1/projects/PROJECT_ID/locations/LOCATION/trustConfigs?filter=FILTER&pageSize=PAGE_SIZE&sortBy=SORT_BY

Substitua:

  • PROJECT_ID: o ID do projeto de destino do Google Cloud.
  • FILTER: uma expressão que restringe os resultados retornados a valores específicos.
  • PAGE_SIZE: o número de resultados que serão retornados por página.
  • SORT_BY: uma lista delimitada por vírgulas de nomes de campo pelos quais os resultados retornados são classificados.

    A ordem de classificação padrão é crescente. Para ordem de classificação decrescente, prefixe o campo selecionado com um til (~).

  • LOCATION: o atributo location especifica a região onde o recurso de configuração de confiança está armazenado. O local padrão é global.

Mostrar configurações de confiança

Para concluir esta tarefa, é preciso ter um dos seguintes papéis no projeto de destino do Google Cloud:

  • Leitor do Gerenciador de certificados (roles/certificatemanager.viewer)
  • Editor do Gerenciador de certificados (roles/certificatemanager.editor)
  • Proprietário do gerenciador de certificados (roles/certificatemanager.owner)

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

Para consultar uma configuração de confiança, conclua as etapas a seguir.

Console

  1. No console do Google Cloud, acesse a página Gerenciador de certificados.

    Acesse o Gerenciador de certificados.

  2. Clique na guia Configurações de confiança. A guia mostra uma lista de recursos de configuração de confiança configurados.

  3. Selecione o recurso de configuração de confiança para conferir os detalhes.

    A página Detalhes da configuração de confiança mostra informações detalhadas sobre a configuração de confiança selecionada.

gcloud

Use o comando gcloud certificate-manager trust-configs describe:

gcloud certificate-manager trust-configs describe TRUST_CONFIG_ID \
    --location=LOCATION

Substitua:

  • TRUST_CONFIG_ID: o ID da configuração de confiança de destino.
  • LOCATION: a região em que o recurso de configuração de confiança está armazenado. O local padrão é global.

API

Faça uma solicitação GET ao método trustConfigs.get:

GET /v1/projects/PROJECT_ID/locations/LOCATION/trustConfigs/TRUST_CONFIG_ID

Substitua:

  • PROJECT_ID: o ID do projeto de destino do Google Cloud.
  • TRUST_CONFIG_ID: o ID da configuração de confiança de destino.
  • LOCATION: o atributo location especifica a região onde o recurso de configuração de confiança está armazenado. O local padrão é global.

Excluir uma configuração de confiança

Para concluir esta tarefa, é preciso ter o papel de proprietário do gerenciador de certificados (roles/certificatemanager.owner) no projeto de destino do Google Cloud.

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

Para excluir uma configuração de confiança, conclua as etapas a seguir.

gcloud

Use o comando gcloud certificate-manager trust-configs delete:

gcloud certificate-manager trust-configs delete TRUST_CONFIG_ID \
    --location=LOCATION

Substitua:

  • TRUST_CONFIG_ID: o ID da configuração de confiança de destino.
  • LOCATION: a região onde o recurso de configuração de confiança está armazenado. O local padrão é global.

API

Faça uma solicitação DELETE ao método trustConfigs.delete:

DELETE /v1/projects/PROJECT_ID/locations/LOCATION/trustConfigs/TRUST_CONFIG_ID

Substitua:

  • PROJECT_ID: o ID do projeto de destino do Google Cloud.
  • LOCATION: a região em que o recurso de configuração de confiança está armazenado. O local padrão é global.
  • TRUST_CONFIG_ID: o ID da configuração de confiança de destino.

A seguir