Mit DNS-Autorisierungen können Sie die Inhaberschaft von Domains für von Google verwaltete Zertifikate nachweisen. Beim Erstellen eines von Google verwalteten Zertifikats können eine oder mehrere DNS-Autorisierungen für die Bereitstellung und Verlängerung angegeben werden.
Auf dieser Seite wird beschrieben, wie Sie DNS-Autorisierungen für die Verwendung mit von Google verwalteten Zertifikaten erstellen und verwalten.
Weitere Informationen finden Sie unter Domainautorisierungen.
DNS-Autorisierung erstellen
Eine DNS-Autorisierung deckt nur einen einzelnen Domainnamen ab. Sie müssen für jeden Domainnamen, den Sie mit dem Zielzertifikat verwenden möchten, eine separate DNS-Autorisierung erstellen.
Wenn Sie eine DNS-Autorisierung für ein Wildcard-Zertifikat wie *.myorg.example.com
erstellen, konfigurieren Sie die DNS-Autorisierung für die übergeordnete Domain, z. B. myorg.example.com
.
Wenn Sie Zertifikate unabhängig in mehreren Projekten verwalten möchten, können Sie die PER_PROJECT_RECORD
-DNS-Autorisierung verwenden.
Certificate Manager kann Zertifikate für jedes Projekt unabhängig in Google Cloudausstellen und verwalten. DNS-Autorisierungen und ‑Zertifikate, die Sie in einem Projekt verwenden, sind unabhängig und interagieren nicht mit denen in anderen Projekten.
Console
Sie können beim Erstellen eines Zertifikats eine DNS-Autorisierung erstellen oder eine vorhandene DNS-Autorisierung anhängen. Weitere Informationen finden Sie unter Ein von Google verwaltetes Zertifikat erstellen, das auf die DNS-Autorisierung verweist.
gcloud
Verwenden Sie den Befehl certificate-manager
dns-authorizations create
, um eine DNS-Autorisierung zu erstellen:
gcloud certificate-manager dns-authorizations create AUTHORIZATION_NAME \ --domain="DOMAIN_NAME" \ [--type=TYPE] \ [–-location="LOCATION"]
Ersetzen Sie Folgendes:
AUTHORIZATION_NAME
: der Name der DNS-Autorisierung.DOMAIN_NAME
: der Name der Zieldomain, für die Sie diese DNS-Autorisierung erstellen. Der Domainname muss ein voll qualifizierter Domainname sein, z. B.myorg.example.com
.TYPE
: die Art der DNS-Autorisierung. Sie könnenFIXED_RECORD
oderPER_PROJECT_RECORD
angeben. Weitere Informationen finden Sie unter DNS-Autorisierung.LOCATION
: der Ziel Google Cloud speicherort, an dem Sie die DNS-Autorisierung erstellen.
Prüfen Sie die DNS-Autorisierung mit dem Befehl certificate-manager dns-authorizations describe
:
gcloud certificate-manager dns-authorizations describe AUTHORIZATION_NAME
Die entsprechende Ausgabe sieht etwa so aus: Suchen Sie in der Ausgabe nach der Zeile dnsResourceRecord
und rufen Sie den CNAME
-Eintrag (data
, name
und type
) ab, um ihn Ihrer DNS-Konfiguration hinzuzufügen.
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
Zum Erstellen einer DNS-Autorisierung können Sie eine google_certificate_manager_dns_authorization
-Ressource verwenden.
Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.
API
Senden Sie zum Erstellen einer DNS-Autorisierung eine POST
-Anfrage an die Methode dnsAuthorizations.create
:
POST /v1/projects/PROJECT_ID/locations/LOCATION/dnsAuthorizations?dns_authorization_id=AUTHORIZATION_NAME" { "domain": "DOMAIN_NAME", "type": "PER_PROJECT_RECORD" //optional }
Ersetzen Sie Folgendes:
PROJECT_ID
: ID des Google Cloud-Projekts.LOCATION
: der Ziel Google Cloud speicherort, an dem Sie die DNS-Autorisierung erstellen. Verwenden Sie für den globalen Standortglobal
.AUTHORIZATION_NAME
: der Name der DNS-Autorisierung.DOMAIN_NAME
: der Name der Zieldomain, für die Sie diese DNS-Autorisierung erstellen. Der Domainname muss ein voll qualifizierter Domainname sein, z. B.myorg.example.com
.
CNAME-Eintrag zu DNS-Konfiguration hinzufügen
Wenn Sie eine DNS-Lösung eines Drittanbieters zur Verwaltung Ihres DNS verwenden, lesen Sie die zugehörige Dokumentation, um den CNAME-Eintrag der DNS-Konfiguration hinzuzufügen. Wenn SieGoogle Cloud zum Verwalten Ihres DNS verwenden, führen Sie die Schritte in diesem Abschnitt aus.
Console
So erstellen Sie einen Datensatz:
Rufen Sie in der Google Cloud Console die Seite DNS-Zonen auf.
Klicken Sie auf den Namen der DNS-Zone, der Sie den Eintrag hinzufügen möchten.
Klicken Sie auf der Seite Zonendetails auf Standard hinzufügen.
Geben Sie auf der Seite Eintrag erstellen im Feld DNS-Name die Subdomain der DNS-Zone ein.
Achten Sie beim Eingeben des Subdomain-Namens darauf, dass der Subdomain-Name, einschließlich des ausgegrauten Texts im Feld DNS-Name, mit dem vollständigen Wert des Felds
dnsResourceRecord.name
übereinstimmt, wie er in der Ausgabe des Befehlsgcloud certificate-manager dns-authorizations describe
angezeigt wird.Betrachten Sie die folgenden Beispiele:
Wenn der Wert des Felds
dnsResourceRecord.name
_acme-challenge.myorg.example.com.
ist und der ausgegraute Text im Feld DNS-Name.example.com.
lautet, geben Sie_acme-challenge.myorg
ein.Wenn der Wert des Felds
dnsResourceRecord.name
_acme-challenge.myorg.example.com.
ist und der ausgegraute Text im Feld DNS-Name.myorg.example.com.
lautet, geben Sie_acme-challenge
ein.Wenn der Wert des Felds
dnsResourceRecord.name
_acme-challenge_ujmmovf2vn55tgye.myorg.example.com.
ist und der ausgegraute Text im Feld DNS-Name.myorg.example.com.
lautet, geben Sie_acme-challenge_ujmmovf2vn55tgye
ein.
Wählen Sie im Feld Ressourceneintragstyp die Option CNAME aus.
Geben Sie im Feld TTL einen positiven numerischen Wert für die Gültigkeitsdauer des Ressourceneintrags ein, also den Zeitraum, den er im Cache gespeichert werden kann.
Wählen Sie in der Liste TTL-Einheit die Zeiteinheit aus, z. B.
30 minutes
.Geben Sie in das Feld Kanonischer Name den vollständigen Wert des Felds
dnsResourceRecord.data
ein, wie er in der Ausgabe des Befehlsgcloud certificate-manager dns-authorizations describe
angezeigt wird.Wenn Sie zusätzliche Informationen eingeben möchten, klicken Sie auf Element hinzufügen.
Klicken Sie auf Erstellen.
gcloud
Wenn Sie eine DNS-Autorisierung erstellen, gibt der gcloud-Befehl den entsprechenden CNAME-Eintrag zurück. So fügen Sie den CNAME-Eintrag Ihrer DNS-Konfiguration in der DNS-Zone der Zieldomain hinzu:
Starten Sie die Transaktion des DNS-Eintrags:
gcloud dns record-sets transaction start --zone="DNS_ZONE_NAME"
Ersetzen Sie
DNS_ZONE_NAME
durch den Namen der Ziel-DNS-Zone.Fügen Sie den CNAME-Eintrag zur Ziel-DNS-Zone hinzu:
gcloud dns record-sets transaction add CNAME_RECORD \ --name="VALIDATION_SUBDOMAIN_NAME.DOMAIN_NAME." \ --ttl="30" \ --type="CNAME" \ --zone="DNS_ZONE_NAME"
Ersetzen Sie Folgendes:
CNAME_RECORD
: Der vollständige Datenwert des CNAME-Eintrags, der vom Google Cloud CLI-Befehl zurückgegeben wurde, mit dem die entsprechende DNS-Autorisierung erstellt wurde.VALIDATION_SUBDOMAIN_NAME
: die Präfix-Subdomain der DNS-Zone, z. B._acme-challenge
. Sie können den Namen aus demgcloud certificate-manager dns-authorizations describe
-Befehlsprotokoll kopieren, wie unter DNS-Autorisierung erstellen beschrieben.DOMAIN_NAME
: Der Name der Zieldomain. Der Domainname muss ein voll qualifizierter Domainname sein, z. B.myorg.example.com
. Sie dürfen den Punkt am Ende nach dem Zieldomainnamen nicht weglassen.DNS_ZONE_NAME
: der Name der Ziel-DNS-Zone.
Sehen Sie sich folgendes Beispiel an:
gcloud dns record-sets transaction add 0e40fc77-a37d-4eb8-8fe1-eea2e18d12d9.4.authorize.certificatemanager.goog. \ --name="_acme-challenge.myorg.example.com." \ --ttl="30" \ --type="CNAME" \ --zone="myorg-example-com"
Führen Sie die Transaktion des DNS-Eintrags aus, um die Änderungen zu speichern:
gcloud dns record-sets transaction execute --zone="DNS_ZONE_NAME"
Ersetzen Sie
DNS_ZONE_NAME
durch den Namen der Ziel-DNS-Zone.
Terraform
Sie können eine google_dns_record_set
-Ressource verwenden, um den CNAME-Eintrag Ihrer DNS-Konfiguration hinzuzufügen.
DNS-Autorisierung aktualisieren
Wenn Sie eine DNS-Autorisierung aktualisieren, haben Sie folgende Möglichkeiten:
- Neue Labels angeben
- Geben Sie eine neue Beschreibung an.
gcloud
Verwenden Sie den Befehl certificate-manager dns-authorizations
update
, um eine DNS-Autorisierung zu aktualisieren:
gcloud certificate-manager dns-authorizations update AUTHORIZATION_NAME \ [--update-labels="LABELS"] \ [--description="DESCRIPTION"] \ [--location="LOCATION"]
Ersetzen Sie Folgendes:
AUTHORIZATION_NAME
: der Name der DNS-Autorisierung.LABELS
: Labels für diese DNS-Autorisierung. Dieses Flag ist optional.DESCRIPTION
: Beschreibung dieser DNS-Autorisierung. Dieses Flag ist optional.LOCATION
: den Ziel Google Cloud standort. Der Standardspeicherort istglobal
.
API
Aktualisieren Sie eine DNS-Autorisierung, indem Sie eine PATCH
-Anfrage an die Methode dnsAuthorizations.patch
stellen:
PATCH /v1/projects/PROJECT_ID/locations/LOCATION/dnsAuthorizations/AUTHORIZATION_NAME?updateMask=labels,description" { description: "DESCRIPTION", labels: { "LABEL_KEY": "LABEL_VALUE" } }
Ersetzen Sie Folgendes:
PROJECT_ID
: ID des Google Cloud-Projekts.LOCATION
: den Ziel Google Cloud standort. Der Standardspeicherort istglobal
.AUTHORIZATION_NAME
: der Name der DNS-Autorisierung.DESCRIPTION
: Ein optionales Feld, das die Beschreibung für diese DNS-Autorisierung angibt.LABEL_KEY
: Ein Labelschlüssel, der auf diese DNS-Autorisierung angewendet wird.LABEL_VALUE
: ein Labelwert, der auf diese DNS-Autorisierung angewendet wird.
DNS-Autorisierungen auflisten
Sie sehen alle DNS-Autorisierungen Ihres Projekts und die zugehörigen Details.
gcloud
Verwenden Sie den Befehl certificate-manager dns-authorizations
list
, um DNS-Autorisierungen aufzulisten:
gcloud certificate-manager dns-authorizations list \ --filter="FILTER" \ --page-size="PAGE_SIZE" \ --limit="LIMIT" \ --sort-by="SORT_BY" \ [--location="LOCATION"]
Ersetzen Sie Folgendes:
FILTER
: Ein Ausdruck, der die zurückgegebenen Ergebnisse auf bestimmte Werte beschränkt.Sie können Ergebnisse beispielsweise nach folgenden Kriterien filtern:
- Domain:
--filter='domain=myorg.example.com'
- Labels und Erstellungszeit:
--filter='labels.key:value AND create_time > "2021-09-01T00:00:00Z"'
Weitere Beispiele für Filter, die Sie mit Certificate Manager verwenden können, finden Sie in der Cloud Key Management Service-Dokumentation unter Listenergebnisse sortieren und filtern.
- Domain:
PAGE_SIZE
: Die Anzahl der pro Seite zurückzugebenden Ergebnisse.LIMIT
: Die maximale Anzahl der zurückzugebenden Ergebnisse.SORT_BY
: eine durch Kommas getrennte Liste vonname
-Feldern, nach denen die zurückgegebenen Ergebnisse sortiert werden. Die Standardsortierreihenfolge ist aufsteigend. Um in absteigender Reihenfolge zu sortieren, müssen Sie dem Feld eine Tilde (~
) voranstellen.LOCATION
: den Ziel Google Cloud standort. Der Standardspeicherort istglobal
.
API
So rufen Sie eine Liste aller konfigurierten DNS-Autorisierungen ab:GET
dnsAuthorizations.list
GET /v1/projects/PROJECT_ID/locations/LOCATION/dnsAuthorizations?filter=FILTER&pageSize=PAGE_SIZE&sortBy=SORT_BY
Ersetzen Sie Folgendes:
PROJECT_ID
: ID des Google Cloud-Projekts.LOCATION
: den Ziel Google Cloud standort. Der Standardspeicherort istglobal
.FILTER
: Ein Ausdruck, der die zurückgegebenen Ergebnisse auf bestimmte Werte beschränkt.Sie können Ergebnisse beispielsweise nach folgenden Kriterien filtern:
- Domain:
--filter='domain=myorg.example.com'
- Labels und Erstellungszeit:
--filter='labels.key:value AND create_time > "2021-09-01T00:00:00Z"'
- Domain:
PAGE_SIZE
: Die Anzahl der pro Seite zurückzugebenden Ergebnisse.SORT_BY
: Eine durch Kommas getrennte Liste vonname
-Feldern, nach denen die zurückgegebenen Ergebnisse sortiert werden. Die Standardsortierreihenfolge ist aufsteigend. Um in absteigender Reihenfolge zu sortieren, müssen Sie dem Feld eine Tilde (~
) voranstellen.
DNS-Autorisierung löschen
Wenn Sie eine DNS-Autorisierung löschen möchten, die von Google verwalteten Zertifikaten zugewiesen ist, löschen Sie zuerst die Zertifikate.
gcloud
Verwenden Sie den Befehl certificate-manager dns-authorizations
delete
, um eine DNS-Autorisierung zu löschen:
gcloud certificate-manager dns-authorizations delete AUTHORIZATION_NAME \ [--location="LOCATION"]
Ersetzen Sie Folgendes:
AUTHORIZATION_NAME
: der Name der DNS-Autorisierung.LOCATION
: den Ziel Google Cloud standort. Der Standardspeicherort istglobal
.
API
So löschen Sie eine DNS-Autorisierung: Senden Sie eine DELETE
-Anfrage an die Methode dnsAuthorizations.delete
:
DELETE /v1/projects/PROJECT_ID/locations/LOCATION>/dnsAuthorizations/AUTHORIZATION_NAME
Ersetzen Sie Folgendes:
PROJECT_ID
: ID des Google Cloud-Projekts.LOCATION
: den Ziel Google Cloud standort. Der Standardspeicherort istglobal
.AUTHORIZATION_NAME
: der Name der DNS-Autorisierung.
Nächste Schritte
- Zertifikate verwalten
- Zertifikatzuordnungen verwalten
- Zertifikatzuordnungseinträge verwalten
- Ressourcen für die Konfiguration der Zertifikatausstellung verwalten