Nachdem Sie Media CDN-Dienst(e) erstellt haben, können Sie SSL-Zertifikate (TLS) ausstellen und anhängen, um eine sichere Verbindung in Browsern und mobilen Anwendungen zu ermöglichen.
Verwaltetes Zertifikat ausstellen
So erstellen Sie ein verwaltetes Zertifikat und hängen es an Ihr Media CDN an: müssen Sie Folgendes tun:
- Demonstrieren Sie die Inhaberschaft („Autorisierung“) der Domains, für die Sie Zertifikate ausstellen möchten, indem Sie ein Challenge-Token erstellen und einen DNS-Eintrag hinzufügen.
- Erstellen Sie ein Zertifikat vom Typ
EDGE_CACHE
mit einem oder mehreren Domainnamen. zu dieser Autorisierung erhalten. - Hängen Sie dieses Zertifikat an einen oder mehrere Edge-Cache-Dienste an.
Sie benötigen die folgenden Berechtigungen für Identity and Access Management zum Autorisieren, Erstellen und Zertifikate an einen Edge-Cache-Dienst anhängen:
certificatemanager.certs.create
certificatemanager.certs.get
certificatemanager.certs.list
certificatemanager.certs.use
certificatemanager.dnsauthorizations.create
certificatemanager.dnsauthorizations.get
certificatemanager.dnsauthorizations.list
certificatemanager.dnsauthorizations.use
Nutzer, die ein vorhandenes Zertifikat an ein
Media CDN
Dienst erfordert die certificatemanager.certs.get
,
certificatemanager.certs.list
und certificatemanager.certs.use
IAM-Berechtigungen
Hinweise
- Sie benötigen einen registrierten Domainnamen, für den Sie öffentliche DNS-Einträge aktualisieren können aktiviert.
- Übersicht über SSL-Zertifikate.
DNS-Autorisierung erstellen
Zuerst müssen Sie eine DNS-Autorisierung erstellen, um die Inhaberschaft für bevor Sie Zertifikate für die Domain ausstellen können. Die DNS-Autorisierung verwendet der DNS-01 ACME Damit können Sie ein Zertifikat ausstellen, bevor Sie nutzerseitigen Traffic mit Ihrem Edge-Cache-Dienst verknüpfen.
Legen Sie den Wert von domain
auf den Domainnamen fest, für den Sie ein Zertifikat erstellen möchten:
gcloud
Führen Sie den Befehl gcloud certificate-manager dns-authorizations
aus:
gcloud certificate-manager dns-authorizations create DOMAIN_NAME_AUTH \ --domain="DOMAIN_NAME" gcloud certificate-manager dns-authorizations describe DOMAIN_NAME_AUTH
Die gcloud CLI gibt eine Antwort mit den Details des DNS-Eintrags zurück, den Sie hinzufügen müssen.
createTime: '2022-01-14T13:35:00.258409106Z' dnsResourceRecord: data: 0e40fc77-a37d-4eb8-8fe1-eea2e18d12d9.4.authorize.certificatemanager.goog. name: _acme-challenge.example.com. type: CNAME domain: example.com name: projects/myProject/locations/global/dnsAuthorizations/myAuthorization updateTime: '2022-01-14T13:35:01.571086137Z'
Terraform
Wenn Sie Cloud DNS für Ihre Domain verwenden, lesen Sie den Abschnitt die Schritte zum Hinzufügen eines neuen Eintrags mit Ihrer gehosteten Domain verknüpfen. Wenn Sie einen anderen DNS-Anbieter verwenden, wenden Sie sich an dessen Dokumentation zum Hinzufügen eines CNAME-Eintrags.
- Sie können diesen Schritt für jede Domain wiederholen, die Sie benötigen, um ein Zertifikat erhalten.
- Zertifikate können mehrere Domains enthalten oder Sie können eine Zertifikat pro Domain. Nachdem Sie eine Autorisierung für eine können Sie damit Zertifikate ausstellen.
- Wir empfehlen, insgesamt weniger Zertifikate zu erstellen, die jeweils alle Domainnamen, die für Ihren Dienst verwendet werden. Dies verbessert die Kundenleistung, wenn mehrere Domains verwenden, da Clients von der TLS-Wiederaufnahme mehr profitieren können oft.
- Jeder Edge-Cache-Dienst kann auf bis zu fünf Zertifikate. Indem Sie weniger Zertifikate ausstellen, können Sie diesen Zeitraum einhalten Limit
Wenn Sie die DNS-Eintragswerte zu einem späteren Zeitpunkt abrufen möchten, stellen Sie eine Anfrage
für die authorizationName
, die Sie beim Erstellen des DNS angegeben haben
Autorisierung:
Zertifikat erstellen
Nachdem Sie den DNS-Eintrag hinzugefügt haben, der die Inhaberschaft der von Ihnen für das Sie ein Zertifikat erstellen möchten, können Sie eine Anfrage zur Zertifikatserstellung ausstellen.
Die Liste der dnsAuthorizations
muss mit den Namen vorhandener Elemente übereinstimmen.
Autorisierungen, die Sie zuvor erstellt haben. Wenn Sie mehrere
Domains mit demselben Zertifikat: Liste mit domains[]
und übereinstimmenden
dnsAuthorizations[]
fest.
Zum Erstellen eines Zertifikats mit einer Autorisierung für test.example.com
namens
test-example-com
:
gcloud
Führen Sie den Befehl gcloud certificate-manager certificates
aus:
gcloud certificate-manager certificates create CERTIFICATE_NAME \ --domains="DOMAIN_NAME" \ --dns-authorizations="DOMAIN_NAME_AUTH" \ --scope=EDGE_CACHE
Dadurch wird mit jeder DNS-Autorisierung im AUTHORIZING
ein Zertifikat erstellt.
und das Zertifikat mit dem Status PROVISIONING
:
Create request issued for: [DOMAIN_NAME] Waiting for operation [projects/my-project/locations/global/operations/operatio n-1613425627385-5bb66ed644e91-3e2a2f1f-71979cf8] to complete...done. Created certificate [CERTIFICATE_NAME].
Terraform
Es kann einige Minuten (bis zu einer Stunde) dauern, bis das Zertifikat erstellt wird abgeschlossen sein, abhängig von Folgendem:
- Die Geschwindigkeit, mit der Ihr DNS-Anbieter Konfigurationsänderungen überträgt.
- Die Anzahl der Domains, für die Sie Zertifikate validieren und erstellen möchten.
Im Feld state
wird der aktuelle Status des Zertifikats angezeigt:
- BEREITSTELLUNG – Das Zertifikat wird noch bereitgestellt. Dieses liegt wahrscheinlich daran, dass die Anfrage zur Zertifikatserstellung erst vor Kurzem gestellt wurde.
- FEHLGESCHLAGEN: wird zurückgegeben, wenn die Domain validiert oder das Zertifikat ausgestellt wurde. Weitere Informationen finden Sie in den
provisioning_issue
,authorization_attempt_info
- undfailure_reason
-Felder. - AKTIV – die Domain wurde erfolgreich validiert und das Zertifikat wurde bereitgestellt.
So prüfen Sie den Status des Zertifikats:
gcloud
Führen Sie den Befehl gcloud certificate-manager certificates
aus:
gcloud certificate-manager certificates describe CERTIFICATE_NAME
In diesem Beispiel lautet die DNS-Autorisierung AUTHORIZED
und das Zertifikat
ist ACTIVE
:
createTime: '2021-02-07T20:03:39.867762684Z' expireTime: '2021-03-09T19:20:41Z' managed: authorizationAttemptInfo: - domain: DOMAIN_NAME state: AUTHORIZED dnsAuthorizations: - projects/111111111111/locations/global/dnsAuthorizations/test-example-com domains: - DOMAIN_NAME state: ACTIVE name: projects/my-project/locations/global/certificates/test-example-com scope: EDGE_CACHE subjectAlternativeNames: - DOMAIN_NAME updateTime: '2021-02-07T20:03:40.297242738Z'
Sobald das Zertifikat den Status ACTIVE
hat, können Sie es an ein
Edge-Cache-Dienst
Zertifikat an einen Dienst anhängen
Nachdem Sie ein verwaltetes Zertifikat erstellt haben, können Sie
und ihn mit einem oder mehreren Ihrer Edge-Cache-Dienste verknüpfen.
Zertifikate können sowohl an vorhandene als auch an neue Dienste angehängt werden. Aktualisieren Sie dazu die
Liste von edgeSslCertificates
im Dienst.
Zum Anhängen benötigen Sie die folgenden IAM-Berechtigungen Zertifikate an einen Edge-Cache-Dienst senden:
certificatemanager.certs.get
certificatemanager.certs.list
certificatemanager.certs.use
networkservices.edgeCacheServices.get
networkservices.edgeCacheServices.list
networkservices.edgeCacheServices.update
Führen Sie die folgenden Schritte aus, um ein Zertifikat an einen Dienst anzuhängen.
gcloud
Führen Sie den Befehl gcloud edge-cache services export
aus, um die
YAML-Datei:
gcloud edge-cache services export MY_SERVICE \ --destination=my-service.yaml
Bearbeiten Sie die exportierte YAML-Datei, um Ihr Zertifikat hinzuzufügen:
name: MY_SERVICE edgeSslCertificates: - projects/PROJECT_ID/locations/global/certificates/CERTIFICATE_NAME
Führen Sie den Befehl gcloud edge-cache services import
aus:
gcloud edge-cache services import MY_SERVICE \ --source=my-service.yaml
Ausgabe:
Request issued for: [MY_SERVICE] Updated service [MY_SERVICE]
Der Befehl gibt eine Beschreibung Ihres Dienstes zurück, einschließlich der
Liste mit edgeSslCertificates
jetzt angehängt:
name: MY_SERVICE edgeSslCertificates: - projects/PROJECT_ID/locations/global/certificates/CERTIFICATE_NAME
Nachdem Sie die Konfiguration aktualisiert haben, wird das Zertifikat an alle Edge-Geräte weitergegeben in wenigen Minuten an. Um zu prüfen, ob das Zertifikat mit Ihrem Edge-Cache-Dienst, bevor Sie DNS-Änderungen vornehmen, können Sie eine Anfrage für die mit Ihrem Dienst verknüpfte IPv4- oder IPv6-Adresse.
Zertifikate ersetzen und entfernen
Sie können Zertifikate hinzufügen und entfernen, indem Sie die Liste der Zertifikate aktualisieren.
Bei Verwendung des Flags --edge-ssl-certificate
der gcloud CLI werden Zertifikate nur an die Liste der vorhandenen Zertifikate angehängt und nicht ersetzt. Dadurch wird verhindert, dass Sie versehentlich ein gültiges, aktives Zertifikat entfernen.
So entfernen Sie das Zertifikat test-example-com
aus unserem Dienst auf
können Sie Ihren Dienst mithilfe der
import- und export-befehle
name: my-service edgeSslCertificates: - projects/PROJECT_ID/locations/global/certificates/test-example-com - projects/PROJECT_ID/locations/global/certificates/CERTIFICATE_NAME
Die folgenden Befehle zeigen, wie Sie den Dienst exportieren und das Zertifikat entfernen. und importieren Sie den aktualisierten Dienst.
gcloud
Führen Sie den Befehl gcloud edge-cache services
aus:
gcloud edge-cache services export MY_SERVICE --destination=my-service.yaml
Exported [projects/my-project/locations/global/edgeCacheServices/MY_SERVICE] to 'my-service.yaml'.
Entfernen Sie mit Ihrem bevorzugten Texteditor die Zertifikate, die der Dienst nicht mehr verwenden soll:
name: MY_SERVICE edgeSslCertificates: - projects/PROJECT_ID/locations/global/certificates/CERTIFICATE_NAME
Speichern Sie die geänderte Datei und importieren Sie dann den aktualisierten Dienst:
gcloud
Führen Sie den Befehl gcloud edge-cache services
aus:
gcloud edge-cache services import MY_SERVICE --source=my-service.yaml
Request issued for: [MY_SERVICE] Updated service [MY_SERVICE].
Die Anzahl der Dienste, die einem Zertifikat zugeordnet werden können, ist nicht begrenzt Jeder Edge-Cache-Dienst kann auf bis zu fünf Zertifikate verweisen.
Selbstverwaltete Zertifikate
Sie können Ihre eigenen Zertifikate in Media CDN hochladen, wenn Sie für bestimmte Anwendungsfälle.
So laden Sie ein Zertifikat und den zugehörigen Schlüssel in den Zertifikatmanager hoch:
gcloud
Führen Sie den Befehl gcloud certificate-manager certificates
aus. Achten Sie darauf,
geben Sie --scope=EDGE_CACHE
für Zertifikate an, die mit
Media CDN.
gcloud certificate-manager certificates create stream-example-com \ --certificate-file=CERT.pem \ --private-key-file=PRIVATE_KEY.pem \ --scope=EDGE_CACHE
Create request issued for: [stream-example-com] Created certificate [stream-example-com].
Nach dem Hochladen des Zertifikats können Sie an einen EdgeCacheService anhängen wie ein verwaltetes Zertifikat.
Fehlerbehebung bei der Ausstellung von Zertifikaten
Weitere Informationen finden Sie in der Anleitung zur Fehlerbehebung. wie Sie häufige Fehler bei der Autorisierung und Ausstellung von Zertifikaten beheben.
Nächste Schritte
- Alle HTTP-Anfragen zu HTTPS weiterleiten um die Kommunikation standardmäßig zu verschlüsseln.
- Anfragelogs ansehen mit Logging
- Signierte Anfragen konfigurieren zum Schutz Ihrer Inhalte
- Cache-Schlüssel und TTLs optimieren, um die Cache-Trefferquoten zu verbessern
- Den erweiterten Routenabgleich konfigurieren und zusätzliche Ursprünge hinzufügen