Emitir um certificado usando a Google Cloud CLI
Nesta página, explicamos como criar um pool de autoridade de certificação (AC) e emitir um certificado usando a Google Cloud CLI.
O CA Service permite implantar e gerenciar ACs particulares sem gerenciar a infraestrutura.
Antes de começar
Instale a Google Cloud CLI e inicialize-a executando o seguinte comando:
gcloud init
Crie ou selecione um projeto do Google Cloud.
-
Crie um projeto do Google Cloud:
gcloud projects create PROJECT_ID
Substitua
PROJECT_ID
por um nome para o projeto do Google Cloud que você está criando. -
Selecione o projeto do Google Cloud que você criou:
gcloud config set project PROJECT_ID
Substitua
PROJECT_ID
pelo nome do projeto do Google Cloud.
-
Ative a API Certificate Authority Service:
gcloud services enable privateca.googleapis.com
Verifique se a cobrança está ativada para o seu projeto do Google Cloud.
Configure um local padrão para uso nos comandos
gcloud
deste guia de início rápido.gcloud config set privateca/location LOCATION
Os recursos do CA Service, como pools e CAs, residem em um único local do Google Cloud que não pode ser alterado depois da criação desses recursos.
Criar um pool de CA
Um pool de autoridades certificadoras (CA) é um conjunto de várias CAs. Com um pool de ACs, é possível alternar as cadeias de confiança sem interrupção ou inatividade das cargas de trabalho.
Para criar um pool de ACs no nível Enterprise, execute o seguinte comando:
gcloud privateca pools create POOL_ID --tier "enterprise"
Substitua POOL_ID pelo nome do pool de ACs.
Os nomes de todos os recursos de serviço de CA precisam conter apenas os caracteres permitidos, que são letras, números, hífen e sublinhado. O comprimento máximo permitido de um nome é de 63 caracteres.
Crie uma AC raiz:
Um pool de AC fica vazio no momento da criação. Para solicitar certificados de um pool de ACs, adicione uma AC nele.
Para criar uma AC raiz e adicioná-la ao pool de ACs criado, execute o seguinte comando:
gcloud privateca roots create CA_ID --pool POOL_ID --subject "CN=Example Prod Root CA, O=Google"
Substitua:
- CA_ID: o nome da AC raiz.
- POOL_ID: o nome do pool de ACs.
O CA Service retorna o seguinte comando quando cria a CA raiz:
Created Certificate Authority [projects/PROJECT_ID/locations/LOCATION/caPools/POOL_ID/certificateAuthorities/CA_ID]
Ative a CA raiz inserindo y
quando solicitado pela CLI gcloud.
Agora que você tem um pool de ACs com uma AC raiz, prossiga e crie certificados.
Criar um certificado
Para usar a CA recém-criada para criar um certificado, faça o seguinte:
Instale a biblioteca de criptografia Pyca usando o comando
pip
.pip install --user "cryptography>=2.2.0"
O CA Service usa a biblioteca de criptografia Pyca para gerar e armazenar um novo par de chaves assimétricas na máquina local. Essa chave nunca é enviada ao serviço da AC.
Para permitir que o SDK Google Cloud use a biblioteca de criptografia Pyca, ative os pacotes do site.
macOS ou Linux
export CLOUDSDK_PYTHON_SITEPACKAGES=1
Windows
set CLOUDSDK_PYTHON_SITEPACKAGES=1
Crie um certificado.
gcloud privateca certificates create \ --issuer-pool POOL_ID \ --subject "CN=Example Prod,O=Google" \ --generate-key \ --key-output-file=./key \ --cert-output-file=./cert.pem
Substitua POOL_ID pelo ID do recurso do pool de ACs que você criou.
O CA Service retorna a seguinte resposta:
Created Certificate [projects/PROJECT_ID/locations/LOCATION/caPools/POOL_ID/certificates/CERTIFICATE_ID]
Limpar
Faça uma limpeza excluindo o pool de ACs, a AC e o projeto que você criou para este guia de início rápido.
Revogue o certificado.
- CERT_NAME: o nome do certificado que você quer revogar.
- POOL_ID: o nome do pool de ACs que emitiu o certificado.
Para revogar um certificado, execute o seguinte comando:
gcloud privateca certificates revoke --certificate CERT_NAME --issuer-pool POOL_ID
Substitua:
Exclua a AC.
Só é possível excluir uma AC depois de revogar todos os certificados emitidos por ela.
Desative a AC.
gcloud privateca roots disable CA_ID --pool=POOL_ID
Substitua:
- CA_ID: o ID do recurso da AC.
- POOL_ID: o ID do recurso do pool de ACs.
Exclua a AC.
gcloud privateca roots delete CA_ID --pool=POOL_ID
O estado da CA muda para
Deleted
. O CA Service exclui a CA permanentemente 30 dias após o início da exclusão.Exclua o pool de ACs.
Só é possível excluir um pool de ACs após a AC nele ser excluída permanentemente.
gcloud privateca pools delete POOL_ID
Exclua o projeto.
Exclua um projeto do Google Cloud:
gcloud projects delete PROJECT_ID
A seguir
- Saiba mais sobre pools de CA.
- Saiba mais sobre como criar um pool de ACs.
- Saiba mais sobre como criar ACs.
- Saiba mais sobre como solicitar certificados.
- Saiba como controlar o tipo de certificados que um pool de AC pode emitir.