View a markdown version of this page

Verwenden von CloudFront Funktionen mit Origin Mutual TLS - Amazon CloudFront

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verwenden von CloudFront Funktionen mit Origin Mutual TLS

CloudFront Functions bietet einfache, serverlose Rechenleistung an der Peripherie, um die Bereitstellung von Inhalten individuell anzupassen. Bei der Verwendung von Origin Mutual TLS mit CloudFront Functions sind bestimmte Verhaltensweisen und Einschränkungen bei der Auswahl und Manipulation des Ursprungs zu beachten.

Unterstützte CloudFront Funktionsoperationen

CloudFront Funktionen können auf folgende Weise mit m TLS-enabled Origins interagieren:

aktualisieren RequestOrigin ()

Die Funktion update RequestOrigin () unterstützt begrenzte Änderungen bei der Arbeit mit m TLS-enabled Origins:

  • Zwischen den ursprünglichen mTLS-Ursprüngen wechseln: Sie können die Anfrage so aktualisieren, dass sie zu einem anderen Ursprung weitergeleitet wird, der Ursprungs-MTLS verwendet, vorausgesetzt, beide Ursprünge verwenden dasselbe Client-Zertifikat. Auf diese Weise können Sie eine benutzerdefinierte Routing-Logik implementieren und gleichzeitig die gegenseitige TLS-Authentifizierung beibehalten. Das Umschalten zwischen Ursprüngen, die unterschiedliche Zertifikate verwenden, wird über die createRequestOriginGroup() APIs selectRequestOriginById() und unterstützt.

  • Deaktivierung von Ursprungs-MTLs: Sie können von einem TLS-enabled M-Ursprung zu einem Nicht-MTLS-Ursprung wechseln, indem Sie die Funktion entsprechend einstellenmTLSConfig: 'off'. Dies bietet Flexibilität, um die gegenseitige TLS-Authentifizierung auf der Grundlage von Anforderungsmerkmalen bedingt zu deaktivieren.

Beispiel: Wechsel zwischen mTLS-Ursprüngen mit demselben Zertifikat

import cf from 'cloudfront'; function handler(event) { var request = event.request; // Route to different origin based on request path if (request.uri.startsWith('/api/v2')) { cf.updateRequestOrigin({ "domainName": "api-v2.example.com", "mTLSConfig": "inherit", // If no value is provided for mTLSConfig, it defaults to inherit // Both origins must use the same certificate }); } return request; }

Beispiel: Bedingtes Deaktivieren von Ursprungs-MTLs

import cf from 'cloudfront'; function handler(event) { var request = event.request; // Disable mTLS for specific paths if (request.uri.startsWith('/public')) { cf.updateRequestOrigin({ "domainName": "public-origin.example.com", "mTLSConfig": "off" }); } return request; }

wählen Sie () RequestOriginById

Die selectRequestOriginById() Funktion unterstützt die Auswahl von Ursprüngen, für die Mutual TLS (Origin) aktiviert ist. Sie können diese Funktion verwenden, um Anfragen dynamisch an m TLS-enabled Origins weiterzuleiten, die in Ihrer Distribution konfiguriert sind. Wenn Sie einen für Mutual TLS (Origin) aktivierten Ursprung anhand der ID auswählen, wird das Client-Zertifikat CloudFront verwendet, das für diesen Ursprung in den Verteilungseinstellungen konfiguriert wurde.

Beispiel: Auswahl eines für Mutual TLS (Origin) aktivierten Ursprungs anhand der ID

import cf from 'cloudfront'; function handler(event) { var request = event.request; // Select mTLS-enabled origin based on request characteristics if (request.uri.startsWith('/secure-api')) { cf.selectRequestOriginById("mtls-origin-1"); } return request; }

erstellen RequestOriginGroup ()

Die createRequestOriginGroup() Funktion unterstützt das Erstellen von Ursprungsgruppen, die gemeinsame TLS-fähige (Origin) -fähige Ursprünge enthalten. Sie können innerhalb von CloudFront Functions dynamisch Ursprungsgruppen mit m TLS-enabled Ursprüngen für Failover-Szenarien erstellen.

Beispiel: Erstellen einer Ursprungsgruppe mit für Mutual TLS (Origin) aktivierten Ursprüngen

import cf from 'cloudfront'; function handler(event) { // Create origin group with mTLS-enabled primary and failover origins cf.createRequestOriginGroup({ "originIds": ["mtls-origin-primary", "mtls-origin-failover"], "failoverCriteria": { "statusCodes": [500, 502, 503, 504] } }); return event.request; }