Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan CloudFront Fungsi dengan TLS timbal balik asal
CloudFront Functions menyediakan komputasi tanpa server yang ringan di tepi untuk menyesuaikan pengiriman konten. Saat menggunakan TLS timbal balik asal dengan CloudFront Fungsi, ada perilaku dan batasan khusus yang harus diperhatikan mengenai pemilihan dan manipulasi asal.
Operasi CloudFront Fungsi yang Didukung
CloudFront Fungsi dapat berinteraksi dengan m TLS-enabled origin dengan cara berikut:
memperbarui RequestOrigin ()
Fungsi update RequestOrigin () mendukung modifikasi terbatas saat bekerja dengan m TLS-enabled origin:
-
Beralih antara asal MTL asal: Anda dapat memperbarui permintaan untuk merutekan ke asal berbeda yang menggunakan MTL asal, asalkan kedua asal menggunakan sertifikat klien yang sama. Ini memungkinkan Anda untuk menerapkan logika routing kustom sambil mempertahankan otentikasi TLS bersama. Beralih antara asal yang menggunakan sertifikat berbeda didukung melalui
createRequestOriginGroup()APIselectRequestOriginById()dan. -
Menonaktifkan MTL asal: Anda dapat beralih dari TLS-enabled asal m ke asal non-MTLS dengan menyetel fungsi
mTLSConfig: 'off'. Ini memberikan fleksibilitas untuk menonaktifkan otentikasi TLS bersama secara kondisional berdasarkan karakteristik permintaan.
Contoh: Beralih antara asal MTL asal dengan sertifikat yang sama
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; }
Contoh: Menonaktifkan MTL asal secara kondisional
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; }
pilih RequestOriginById ()
selectRequestOriginById()Fungsi ini mendukung pemilihan asal yang mengaktifkan bersama TLS (asal). Anda dapat menggunakan fungsi ini untuk merutekan permintaan secara dinamis ke m TLS-enabled asal yang dikonfigurasi dalam distribusi Anda. Saat memilih asal bersama yang diaktifkan TLS (asal) berdasarkan ID, CloudFront menggunakan sertifikat klien yang dikonfigurasi untuk asal tersebut dalam pengaturan distribusi.
Contoh: Memilih asal bersama yang diaktifkan TLS (asal) berdasarkan 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; }
membuat RequestOriginGroup ()
createRequestOriginGroup()Fungsi ini mendukung pembuatan grup asal yang menyertakan asal yang diaktifkan bersama TLS (asal). Anda dapat secara dinamis membuat grup asal dengan m TLS-enabled asal untuk skenario failover dalam CloudFront Functions.
Contoh: Membuat grup asal dengan asal yang diaktifkan bersama TLS (asal)
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; }