

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Otentikasi TLS timbal balik dengan CloudFront (Viewer mTLS)
<a name="mtls-authentication"></a>

Mutual TLS Authentication (Mutual Transport Layer Security Authentication — mTLS) adalah protokol keamanan yang memperluas otentikasi TLS standar dengan memerlukan otentikasi berbasis sertifikat dua arah, di mana klien dan server harus membuktikan identitas mereka sebelum membuat koneksi yang aman. Menggunakan TLS timbal balik, Anda dapat memastikan bahwa hanya klien yang menyajikan sertifikat TLS tepercaya yang mendapatkan akses ke distribusi Anda. CloudFront 

## Cara kerjanya
<a name="how-mtls-works"></a>

Dalam jabat tangan TLS standar, hanya server yang menyajikan sertifikat untuk membuktikan identitasnya kepada klien. Dengan TLS timbal balik, proses otentikasi menjadi dua arah. Ketika klien mencoba untuk terhubung ke CloudFront distribusi Anda, CloudFront meminta sertifikat klien selama jabat tangan TLS. Klien harus menunjukkan X.509 sertifikat yang valid yang CloudFront memvalidasi terhadap toko kepercayaan Anda yang dikonfigurasi sebelum membuat koneksi aman.

CloudFront melakukan validasi sertifikat ini di lokasi AWS tepi, menurunkan kompleksitas otentikasi dari server asal Anda sambil mempertahankan CloudFront manfaat kinerja global. Anda dapat mengonfigurasi mTL dalam tiga mode:
+ **Mode wajib** (default) - CloudFront memvalidasi sertifikat klien terhadap toko kepercayaan. Jika validasi gagal atau tidak ada sertifikat yang disajikan, CloudFront tolak koneksi. Gunakan mode wajib ketika setiap klien harus mengautentikasi dengan sertifikat yang valid.
+ **Mode opsional** — CloudFront memvalidasi sertifikat klien jika disajikan, tetapi memungkinkan koneksi tanpa sertifikat. Metadata sertifikat tersedia di Fungsi Koneksi dan header HTTP untuk asal Anda untuk membuat keputusan otorisasi. Gunakan mode opsional saat Anda mendukung klien yang diautentikasi dan tidak diautentikasi.
+ **Mode passthrough** - CloudFront tidak memvalidasi sertifikat klien terhadap toko kepercayaan. CloudFront hanya memvalidasi bahwa klien memiliki kunci pribadi yang sesuai. Ini meneruskan sertifikat ke asal Anda sebagai header HTTP untuk asal Anda untuk melakukan validasi. Tidak diperlukan toko kepercayaan dan tidak ada caching yang terjadi. Gunakan mode passthrough saat Anda memiliki implementasi mTLS yang ada di asal Anda.

## Kasus penggunaan
<a name="mtls-use-cases"></a>

Otentikasi TLS timbal balik dengan CloudFront membahas beberapa skenario keamanan kritis di mana metode otentikasi tradisional tidak mencukupi:
+ **Otentikasi perangkat dengan caching konten** - Anda dapat mengautentikasi konsol game, perangkat IoT, atau perangkat keras perusahaan sebelum mengizinkan akses ke pembaruan firmware, unduhan game, atau sumber daya internal. Setiap perangkat berisi sertifikat unik yang membuktikan keasliannya sambil memanfaatkan kemampuan caching CloudFront.
+ **API-to-API otentikasi** - Anda dapat mengamankan komunikasi mesin-ke-mesin antara mitra bisnis tepercaya, sistem pembayaran, atau layanan mikro. Certificate-based otentikasi menghilangkan kebutuhan akan rahasia bersama atau kunci API sambil memberikan verifikasi identitas yang kuat untuk pertukaran data otomatis.

**Topics**
+ [Cara kerjanya](#how-mtls-works)
+ [Kasus penggunaan](#mtls-use-cases)
+ [Toko kepercayaan dan manajemen sertifikat](trust-stores-certificate-management.md)
+ [Aktifkan TLS timbal balik untuk distribusi CloudFront](enable-mtls-distributions.md)
+ [Kaitkan Fungsi CloudFront Koneksi](connection-functions.md)
+ [Mengkonfigurasi pengaturan tambahan](configuring-additional-settings.md)
+ [Header mTLS penampil untuk kebijakan cache dan diteruskan ke asal](viewer-mtls-headers.md)
+ [Pencabutan sertifikat](certificate-revocation.md)
+ [Metode pembantu untuk TLS timbal balik](mtls-helper-methods-link.md)
+ [Mode validasi tambahan](mtls-validation-modes.md)
+ [Observabilitas menggunakan log koneksi](connection-logs.md)