Faça a gestão das autorizações de DNS

As autorizações de DNS permitem-lhe comprovar a propriedade de domínios para certificados geridos pela Google. Quando cria um certificado gerido pela Google, pode especificar uma ou mais autorizações de DNS para usar no aprovisionamento e na renovação.

Esta página descreve como criar e gerir autorizações de DNS para utilização com certificados geridos pela Google.

Para mais informações, consulte o artigo Autorizações de domínios.

Crie uma autorização de DNS

Uma autorização de DNS abrange apenas um único nome de domínio. Tem de criar uma autorização de DNS separada para cada nome de domínio que quer usar com o certificado de destino.

Se estiver a criar uma autorização de DNS para um certificado de caráter universal, como *.myorg.example.com, configure a autorização de DNS para o domínio principal, por exemplo, myorg.example.com.

Para gerir certificados de forma independente em vários projetos, pode usar a PER_PROJECT_RECORD autorização de DNS. O Certificate Manager pode processar a emissão e a gestão de certificados para cada projeto de forma independente no Google Cloud. As autorizações de DNS e os certificados que usa num projeto são autónomos e não interagem com os de outros projetos.

Consola

Pode criar uma autorização de DNS ou anexar uma autorização de DNS existente quando cria um certificado. Para mais informações, consulte o artigo Crie um certificado gerido pela Google que faça referência à autorização de DNS.

gcloud

Consoante os seus requisitos, pode criar qualquer um destes dois tipos de autorizações de DNS: FIXED_RECORD ou PER_PROJECT_RECORD. Para mais informações, consulte o artigo Autorização de DNS.

Autorização de DNS FIXED_RECORD

Para criar uma FIXED_RECORDautorização de DNS, use o seguinte gcloud certificate-manager dns-authorizations createcomando:

gcloud certificate-manager dns-authorizations create AUTHORIZATION_NAME \
    --domain="DOMAIN_NAME" \
    --type=[FIXED_RECORD] \
    [--location="LOCATION"]

Substitua o seguinte:

  • AUTHORIZATION_NAME: o nome da autorização de DNS.
  • DOMAIN_NAME: o nome do domínio de destino para o qual está a criar esta autorização de DNS. O nome do domínio tem de ser um nome do domínio totalmente qualificado, como myorg.example.com.
  • LOCATION: a localização Google Cloud de destino onde cria a autorização de DNS.

Depois de criar a autorização de DNS FIXED_RECORD, valide-a com o comando gcloud certificate-manager dns-authorizations describe:

gcloud certificate-manager dns-authorizations describe AUTHORIZATION_NAME

O resultado é semelhante ao seguinte. No resultado, encontre a linha dnsResourceRecord e obtenha o registo CNAME (data, name e type) para adicionar à configuração de DNS.

createTime: '2022-01-14T13:35:00.258409106Z'
dnsResourceRecord:
  data: 0e40fc77-a37d-4eb8-8fe1-eea2e18d12d9.4.authorize.certificatemanager.goog.
  name: _acme-challenge.myorg.example.com.
  type: CNAME
domain: myorg.example.com
name: projects/myProject/locations/global/dnsAuthorizations/myAuthorization
updateTime: '2022-01-14T13:35:01.571086137Z'

Autorização de DNS PER_PROJECT_RECORD

Para criar uma PER_PROJECT_RECORDautorização de DNS, use o seguinte gcloud certificate-manager dns-authorizations createcomando:

gcloud certificate-manager dns-authorizations create AUTHORIZATION_NAME \
    --domain="DOMAIN_NAME" \
    --type=PER_PROJECT_RECORD \
    [--location="LOCATION"]

Substitua o seguinte:

  • AUTHORIZATION_NAME: o nome da autorização de DNS.
  • DOMAIN_NAME: o nome do domínio de destino para o qual está a criar esta autorização de DNS. O nome do domínio tem de ser um nome do domínio totalmente qualificado, como myorg.example.com.
  • LOCATION: a localização Google Cloud de destino onde cria a autorização de DNS.

Depois de criar a autorização de DNS PER_PROJECT_RECORD, valide-a com o comando gcloud certificate-manager dns-authorizations describe:

gcloud certificate-manager dns-authorizations describe AUTHORIZATION_NAME

O resultado é semelhante ao seguinte. No resultado, encontre a secção dnsResourceRecord. Localize o registo CNAME e adicione os detalhes do registo (data, name e type) à sua configuração de DNS.

createTime: '2022-01-14T13:35:00.258409106Z'
dnsResourceRecord:
  data: 0e40fc77-a37d-4eb8-8fe1-eea2e18d12d9.4.authorize.certificatemanager.goog.
  name: _acme-challenge_ujmmovf2vn55tgye.myorg.example.com
  type: CNAME
domain: myorg.example.com
name: projects/myProject/locations/global/dnsAuthorizations/myAuthorization
updateTime: '2022-01-14T13:35:01.571086137Z'

Terraform

Para criar uma autorização de DNS, pode usar um recurso google_certificate_manager_dns_authorization.

resource "google_certificate_manager_dns_authorization" "default" {
  name        = "${local.name}-dnsauth-${random_id.tf_prefix.hex}"
  description = "The default dns auth"
  domain      = local.domain
  labels = {
    "terraform" : true
  }
}

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

API

Para criar uma autorização de DNS, faça um pedido POST ao método dnsAuthorizations.create:

POST /v1/projects/PROJECT_ID/locations/LOCATION/dnsAuthorizations?dns_authorization_id=AUTHORIZATION_NAME"
{
  "domain": "DOMAIN_NAME",
  "type": "PER_PROJECT_RECORD" //optional
}

Substitua o seguinte:

  • PROJECT_ID: o ID do Google Cloud projeto.
  • LOCATION: a localização Google Cloud de destino onde cria a autorização de DNS. Para a localização global, use global.
  • AUTHORIZATION_NAME: o nome da autorização de DNS.
  • DOMAIN_NAME: o nome do domínio de destino para o qual está a criar esta autorização de DNS. O nome do domínio tem de ser um nome do domínio totalmente qualificado, como myorg.example.com.

Adicione o registo CNAME à configuração do DNS

Se estiver a usar uma solução DNS de terceiros para gerir o seu DNS, consulte a respetiva documentação para adicionar o registo CNAME à configuração do DNS. Se estiver a usar o Google Cloud para gerir o seu DNS, conclua os passos nesta secção.

Consola

Para criar um conjunto de registos, siga estes passos:

  1. Na Google Cloud consola, aceda à página Zonas de DNS.

    Aceda às zonas do Cloud DNS

  2. Clique no nome da zona DNS onde quer adicionar o registo.

  3. Na página Detalhes da zona, clique em Adicionar padrão.

  4. Na página Create record set, no campo DNS name, introduza o subdomínio da zona DNS.

    Quando introduzir o nome do subdomínio, certifique-se de que o nome do subdomínio, incluindo o texto esbatido apresentado no campo Nome DNS, corresponde ao valor completo do campo dnsResourceRecord.name, conforme apresentado no resultado do comando gcloud certificate-manager dns-authorizations describe.

    Veja os exemplos seguintes:

    • Se o valor do campo dnsResourceRecord.name for _acme-challenge.myorg.example.com. e o texto esbatido no campo Nome de DNS for .example.com., introduza _acme-challenge.myorg.

    • Se o valor do campo dnsResourceRecord.name for _acme-challenge.myorg.example.com. e o texto esbatido no campo Nome de DNS for .myorg.example.com., introduza _acme-challenge.