View a markdown version of this page

Utilizzo CloudFront delle funzioni con Origin Mutual TLS - Amazon CloudFront

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo CloudFront delle funzioni con Origin Mutual TLS

CloudFront Functions fornisce un'elaborazione leggera e senza server all'edge per personalizzare la distribuzione dei contenuti. Quando si utilizza Origin Mutual TLS con CloudFront Functions, ci sono comportamenti e limitazioni specifici di cui tenere conto per quanto riguarda la selezione e la manipolazione dell'origine.

Funzioni supportate CloudFront e operazioni

CloudFront Le funzioni possono interagire con m TLS-enabled origins nei seguenti modi:

update RequestOrigin ()

La funzione update RequestOrigin () supporta modifiche limitate quando si lavora con m TLS-enabled origins:

  • Passaggio da un'origine MTL di origine all'altra: è possibile aggiornare la richiesta per indirizzarla a un'origine diversa che utilizza gli MTL di origine, a condizione che entrambe le origini utilizzino lo stesso certificato client. Ciò consente di implementare una logica di routing personalizzata mantenendo l'autenticazione TLS reciproca. Il passaggio da un'origine all'altra che utilizzano certificati diversi è supportato tramite le API selectRequestOriginById() andcreateRequestOriginGroup().

  • Disabilitazione degli MTL di origine: è possibile passare da un'TLS-enabled origine m a un'origine non MTLS impostando la funzione. mTLSConfig: 'off' Ciò offre la flessibilità necessaria per disabilitare condizionatamente l'autenticazione reciproca TLS in base alle caratteristiche della richiesta.

Esempio: passaggio da un'origine MTL di origine all'altra con lo stesso certificato

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

Esempio: disabilitazione condizionale degli MTL di origine

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

seleziona () RequestOriginById

La selectRequestOriginById() funzione supporta la selezione di origini con TLS (origine) reciproco abilitato. Puoi usare questa funzione per indirizzare dinamicamente le richieste a m TLS-enabled origin configurate nella tua distribuzione. Quando si seleziona un'origine reciproca abilitata per TLS (origine) per ID, CloudFront utilizza il certificato client configurato per tale origine nelle impostazioni di distribuzione.

Esempio: selezione di un'origine reciproca abilitata per TLS (origine) tramite 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; }

create RequestOriginGroup ()

La createRequestOriginGroup() funzione supporta la creazione di gruppi di origine che includono origini reciproche abilitate per TLS (origin). È possibile creare dinamicamente gruppi di origine con m TLS-enabled origini per scenari di failover all'interno di Functions. CloudFront

Esempio: creazione di un gruppo di origine con origini reciproche abilitate per TLS (origin)

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