Administrar las autorizaciones de DNS

En esta sección, se describe cómo crear y administrar autorizaciones de DNS para su uso. con certificados administrados por Google.

Para obtener más información sobre las autorizaciones de DNS, consulta Cómo funciona el Administrador de certificados.

Para aprender a implementar un certificado con el Administrador de certificados, consulta Descripción general de la implementación.

Para obtener más información sobre los comandos de gcloud CLI que se usan en esta página, consulta la API de Certificate Manager.

Crea una autorización de DNS

Para crear una autorización de DNS, completa los pasos de esta sección. Debido a que cada La autorización de DNS cubre solo un nombre de dominio, debes crear un autorización para cada nombre de dominio que quieras usar con el destino certificado.

Para administrar de forma independiente los certificados en varios proyectos, puedes usar autorización de DNS por proyecto. El Administrador de certificados puede manejar la emisión y la administración de certificados para cada proyecto de forma independiente dentro de Google Cloud. las autorizaciones de DNS y los certificados que usas en un proyecto son independientes y no interactúan con los de otros proyectos.

Para completar esta tarea, debes tener uno de los siguientes roles en el destino Proyecto de Google Cloud:

  • Editor del Administrador de certificados
  • Propietario del Administrador de certificados

Para obtener más información, consulta Funciones y permisos.

gcloud

 gcloud certificate-manager dns-authorizations create AUTHORIZATION_NAME \
     --domain="DOMAIN_NAME" \
 gcloud certificate-manager dns-authorizations describe AUTHORIZATION_NAME

Para usar la autorización de DNS por proyecto (vista previa), sigue estos pasos: Ejecuta el siguiente comando:

gcloud certificate-manager dns-authorizations create AUTHORIZATION_NAME \
    --domain="DOMAIN_NAME" \
    --type="PER_PROJECT_RECORD" \
gcloud certificate-manager dns-authorizations describe AUTHORIZATION_NAME

Reemplaza lo siguiente:

  • AUTHORIZATION_NAME: Es un nombre único que describe esto. Autorización de DNS.
  • DOMAIN_NAME: Es el nombre del dominio para el que realizas la búsqueda. creando esta autorización de DNS. El nombre de dominio debe ser un nombre de usuario nombre de dominio, como myorg.example.com.

Este comando muestra el registro CNAME que debes agregar a tu configuración de DNS. Por ejemplo:

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'

Terraform

Para crear una autorización de DNS, puedes usar un google_certificate_manager_dns_authorization recurso.

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
  }
}

Si deseas obtener más información para aplicar o quitar una configuración de Terraform, consulta los comandos básicos de Terraform.

API

Realiza una solicitud POST al dnsAuthorizations.create para crear una autorización de DNS. de la siguiente manera:

POST /v1/projects/PROJECT_ID/locations/global/dnsAuthorizations?dns_authorization_id=AUTHORIZATION_NAME"
{
  "domain": "DOMAIN_NAME",
}

Reemplaza lo siguiente:

  • PROJECT_ID: Es el ID del proyecto de Google Cloud de destino.
  • AUTHORIZATION_NAME: Es un nombre único que describe esto. Autorización de DNS.
  • DOMAIN_NAME: Es el nombre del dominio para el que realizas la búsqueda. creando esta autorización de DNS. El nombre de dominio debe ser un nombre de usuario nombre de dominio, como myorg.example.com.

Agrega el registro CNAME a tu configuración de DNS

Cuando creas una autorización de DNS, Google Cloud muestra el registro CNAME correspondiente para el subdominio de validación. Debes agregar esto registro CNAME en tu configuración de DNS en la zona de DNS del dominio de destino. Si usas Google Cloud para administrar tu DNS, completa los pasos que se indican en esta sección. De lo contrario, consulta la documentación de tu DNS de terceros. de Google Cloud.

Para obtener más información sobre cómo el Administrador de certificados usa esto registro CNAME para verificar la propiedad del dominio, consulte Autorizaciones de dominio para certificados administrados por Google.

gcloud

  1. Inicia la transacción del registro DNS:

    gcloud dns record-sets transaction start --zone="DNS_ZONE_NAME"
    

    Reemplaza lo siguiente:

    • DNS_ZONE_NAME: Es el nombre de la zona del DNS de destino.
  2. Agrega el registro CNAME a la zona del DNS de destino:

    gcloud dns record-sets transaction add CNAME_RECORD \
       --name="_acme-challenge.DOMAIN_NAME." \
       --ttl="30" \
       --type="CNAME" \
       --zone="DNS_ZONE_NAME"
    

    Reemplaza lo siguiente:

    • CNAME_RECORD: Es el valor completo del registro CNAME. que devuelve el comando gcloud que creó el DNS correspondiente autorización.
    • DOMAIN_NAME: Es el nombre del dominio de destino. El nombre de dominio debe ser un nombre de dominio completamente calificado, como myorg.example.com También debes incluir el punto final después de el nombre de dominio de destino.
    • DNS_ZONE_NAME: Es el nombre de la zona del DNS de destino.
  3. Ejecuta la transacción del registro DNS para guardar los cambios:

    gcloud dns record-sets transaction execute --zone="DNS_ZONE_NAME"
    

    Reemplaza lo siguiente:

    • DNS_ZONE_NAME: Es el nombre de la zona del DNS de destino.

Terraform

Para agregar el registro CNAME a tu configuración de DNS, puedes usar un google_dns_record_set recurso.

resource "google_dns_record_set" "cname" {
  name         = google_certificate_manager_dns_authorization.default.dns_resource_record[0].name
  managed_zone = google_dns_managed_zone.default.name
  type         = google_certificate_manager_dns_authorization.default.dns_resource_record[0].type
  ttl          = 300
  rrdatas      = [google_certificate_manager_dns_authorization.default.dns_resource_record[0].data]
}

Para obtener más información sobre los registros DNS, consulte Administra registros.

Actualizar una autorización de DNS

Para actualizar una autorización de DNS, completa los pasos de esta sección. Puedes actualiza una autorización de DNS de la siguiente manera:

  • Especificar etiquetas nuevas
  • Especifica una descripción nueva

Para completar esta tarea, debes tener uno de los siguientes roles en el destino Proyecto de Google Cloud:

  • Editor del Administrador de certificados
  • Propietario del Administrador de certificados

Para obtener más información, consulta Funciones y permisos.

gcloud

 gcloud certificate-manager dns-authorizations update AUTHORIZATION_NAME \
     --update-labels="LABELS" \
     --description="DESCRIPTION"

Reemplaza lo siguiente:

  • AUTHORIZATION_NAME: Es el nombre de la autorización de DNS de destino.
  • LABELS: Es una marca opcional que especifica las etiquetas para esta autorización de DNS.
  • DESCRIPTION: Una marca opcional que especifica la descripción de esta autorización de DNS.

API

Actualiza una autorización de DNS mediante una solicitud PATCH al dnsAuthorizations.patch de la siguiente manera:

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

Reemplaza lo siguiente:

  • PROJECT_ID: Es el ID del proyecto de Google Cloud de destino.
  • AUTHORIZATION_NAME: Es el nombre de la autorización de DNS de destino.
  • DESCRIPTION: Es un campo opcional que especifica la descripción de esta autorización de DNS.
  • LABEL_KEY: Es una clave de etiqueta que se aplica a esta autorización de DNS.
  • LABEL_VALUE: Es un valor de etiqueta aplicado a esta autorización de DNS.

Enumerar autorizaciones de DNS

Para mostrar una lista de las autorizaciones de DNS configuradas, completa los pasos que se indican en este sección.

Para completar esta tarea, debes tener uno de los siguientes roles en el destino Proyecto de Google Cloud:

  • Visualizador del administrador de certificados
  • Editor del Administrador de certificados
  • Propietario del Administrador de certificados

Para obtener más información, consulta Funciones y permisos.

gcloud

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

Reemplaza lo siguiente:

  • FILTER: Es una expresión que restringe el valor que se muestra. resultados a valores específicos. Por ejemplo, puedes filtrar los resultados los siguientes criterios:

    • Dominio: --filter='domain=myorg.example.com'
    • Etiquetas y hora de creación: --filter='labels.key:value AND create_time > "2021-09-01T00:00:00Z"'

    Para obtener más ejemplos de filtrado que puedes usar con el Administrador de certificados, consulta Cómo ordenar y filtrar los resultados de la lista en la documentación de Cloud Key Management Service.

  • PAGE_SIZE: Es la cantidad de resultados que se mostrarán por página.

  • LIMIT: Es la cantidad máxima de resultados que se mostrarán.

  • SORT_BY: Es una lista delimitada por comas de campos name por los que se ordenan los resultados que se muestran. El orden predeterminado es ascendente. Para un orden descendente, prefija el campo con una virgulilla (~).

API

Para enumerar todas las autorizaciones de DNS configuradas, envía una solicitud GET al el método dnsAuthorizations.list de la siguiente manera:

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

Reemplaza lo siguiente:

  • PROJECT_ID: Es el ID del proyecto de Google Cloud de destino.
  • FILTER: Es una expresión que restringe el valor que se muestra. resultados a valores específicos.
  • PAGE_SIZE: Es la cantidad de resultados que se mostrarán por página.
  • SORT_BY: una lista delimitada por comas de nombres de campo por los que los resultados que se muestran están ordenados. El orden predeterminado es ascendente. Para un orden descendente, prefija el campo con una virgulilla (~).

Borra una autorización de DNS

Para borrar una autorización de DNS, completa los pasos de esta sección. Para borrar un Autorización de DNS asignada a uno o más administradores certificados, debes borrarlos antes de borrar la autorización de DNS.

Para completar esta tarea, debes tener el rol de propietario del Administrador de certificados en el proyecto de Google Cloud de destino. Para obtener más información, consulta Funciones y permisos.

gcloud

gcloud certificate-manager dns-authorizations delete AUTHORIZATION_NAME

Reemplaza lo siguiente:

  • AUTHORIZATION_NAME: Es el nombre del DNS de destino. autorización.

API

Borra una autorización de DNS mediante una solicitud DELETE al dnsAuthorizations.delete de la siguiente manera:

DELETE /v1/projects/PROJECT_ID/locations/global/dnsAuthorizations/AUTHORIZATION_NAME

Reemplaza lo siguiente:

  • PROJECT_ID: Es el ID del proyecto de Google Cloud de destino.
  • AUTHORIZATION_NAME: Es el nombre del DNS de destino. autorización.

¿Qué sigue?