Emitir um certificado usando a Google Cloud CLI
Nesta página, explicamos como criar um pool de autoridades certificadoras (ACs) e emitir um certificado usando a CLI do Google Cloud.
Com o CA Service, você implanta e gerencia CAs particulares sem precisar do Google Cloud.
Antes de começar
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
Enable the Certificate Authority Service API:
gcloud services enable privateca.googleapis.com
Make sure that billing is enabled for your Google Cloud project.
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 serviço de AC, como pools e ACs, ficam em um único local do Google Cloud que não pode ser alterado após a criação desses recursos.
Criar um pool de CA
Um pool de autoridades certificadoras (ACs) é uma coleção de várias ACs. Um pool de ACs permite alternar as cadeias de confiança sem interrupções ou inatividade para do Google Cloud.
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 devem conter apenas o 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, você precisa e adicionar uma AC.
Para criar uma AC raiz e adicioná-la ao pool de ACs que você criou, 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 AC raiz inserindo y
quando solicitado pela CLI da gcloud.
Agora que você tem um pool de ACs com uma AC raiz, pode criar 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 é enviados ao serviço da AC.
Para permitir que o SDK Google Cloud use a biblioteca de criptografia Pyca, você precisa ativar pacotes de sites.
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 da AC. no pool que você criou.
O serviço de autoridade certificadora 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 permanentemente CA 30 dias após o início da exclusão.Exclua o pool de ACs.
Só é possível excluir um pool de ACs depois que a AC nele for excluída permanentemente.
gcloud privateca pools delete POOL_ID
Exclua o projeto.
Delete a Google Cloud project:
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.