Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Manajemen sertifikat dengan AWS Certificate Manager
AWS Certificate Manager (ACM)
Dukungan Otoritas Sertifikat
CloudFront Mutual TLS (asal) memerlukan sertifikat klien dengan Extended Key Usage (EKU) untuk Otentikasi Klien TLS. Karena persyaratan ini, Anda harus mengeluarkan sertifikat dari Otoritas Sertifikat Anda dan mengimpornya ke AWS Certificate Manager. Fitur penyediaan dan pembaruan sertifikat otomatis ACM tidak tersedia untuk sertifikat klien TLS (asal) bersama. CloudFront Mutual TLS (asal) mendukung sertifikat klien dari dua sumber:
-
AWS Otoritas Sertifikat Pribadi: Anda dapat menerbitkan sertifikat dari CA AWS Pribadi menggunakan templat sertifikat yang menyertakan Otentikasi Klien TLS di bidang Penggunaan Kunci yang Diperpanjang (seperti EndEntityClientAuthCertificate templat). Setelah mengeluarkan sertifikat dari AWS Private CA, Anda harus mengimpornya ke ACM di Wilayah AS Timur (Virginia N.) (us-east-1). Pendekatan ini memberikan manfaat keamanan dari AWS Private CA sekaligus memberi Anda kendali atas manajemen siklus hidup sertifikat.
-
Otoritas Sertifikat Pribadi Pihak Ketiga: Anda juga dapat menerbitkan sertifikat dari infrastruktur Otoritas Sertifikat pribadi Anda yang ada dan mengimpornya ke ACM. Ini memungkinkan Anda untuk mempertahankan proses manajemen sertifikat Anda saat ini sambil memanfaatkan kemampuan CloudFront TLS (asal) timbal balik. Sertifikat harus menyertakan Otentikasi Klien TLS di bidang Penggunaan Kunci Diperpanjang dan harus dalam format PEM dengan sertifikat, kunci pribadi, dan rantai sertifikat.
penting
Untuk CA AWS Pribadi dan pihak ketiga CAs, Anda bertanggung jawab untuk memantau tanggal kedaluwarsa sertifikat dan mengimpor sertifikat yang diperbarui ke ACM sebelum kedaluwarsa. Fitur perpanjangan otomatis ACM tidak berlaku untuk sertifikat impor yang digunakan untuk TLS bersama (asal).
Persyaratan dan spesifikasi sertifikat
Persyaratan sertifikat klien
-
Format: Format PEM (Privacy Enhanced Mail)
-
Komponen: Sertifikat, kunci pribadi, dan rantai sertifikat
-
Kedalaman rantai sertifikat maksimum: 3 (sertifikat daun+sertifikat perantara+sertifikat akar)
-
Ukuran rantai sertifikat maksimum: 64 KB
-
Ukuran sertifikat: Tidak boleh melebihi 96 KB
-
Ukuran kunci pribadi maksimum: 5 KB (pembatasan ACM)
-
Sertifikat mTLS asal unik maksimum ARNs yang dapat ditambahkan atau dimodifikasi per CloudFront distribusi membuat atau memperbarui panggilan API: 5
-
Wilayah: Sertifikat harus disimpan di ACM di Wilayah AS Timur (Virginia N.) (us-east-1)
Spesifikasi sertifikat yang didukung
-
Jenis sertifikat: X.509v3
-
Algoritma kunci publik:
RSA: 2048-bit
ECDSA: P-256
-
Algoritma tanda tangan:
SHA256, SHA384, SHA512 dengan RSA
SHA256, SHA384, SHA512 dengan ECDSA
SHA256, SHA384, SHA512 dengan RSASSA-PSS dengan MGF1
-
Penggunaan Kunci yang Diperpanjang (wajib): Sertifikat memerlukan ekstensi Extended Key Usage (EKU) yang disetel ke Otentikasi Klien TLS, memastikannya diizinkan untuk tujuan mTLS
Persyaratan sertifikat server
Server asal Anda harus menunjukkan sertifikat dari Otoritas Sertifikat yang dipercaya publik selama jabat tangan TLS bersama. Untuk detail lengkap tentang persyaratan sertifikat server asal, lihat Persyaratan untuk menggunakan SSL/TLS sertifikat dengan CloudFront.
Meminta atau mengimpor sertifikat
Sebelum mengaktifkan TLS bersama (asal), Anda harus memiliki sertifikat klien yang tersedia di ACM.
Meminta dan mengimpor sertifikat dari AWS Private CA
Prasyarat:
Otoritas Sertifikat AWS Pribadi yang dikonfigurasi di akun Anda
Izin untuk menerbitkan sertifikat dari AWS Private CA
Izin untuk mengimpor sertifikat ke ACM
Templat sertifikat ARN
Extended key usage:TLS web client authenticationyang sesuai dengan kasus penggunaan AndaInstal OpenSSL AWS , CLI, dan jq (untuk parsing JSON).
Untuk meminta sertifikat dari PCA dan impor ke ACM (CLI AWS )
-
Atur ARN CA Pribadi Anda dalam variabel agar lebih mudah digunakan kembali.
PCA_ARN="arn:aws:acm-pca:region:account:certificate-authority/12345678..." -
Gunakan OpenSSL untuk menghasilkan kunci pribadi ECDSA P-256 (kurva prime256v1) dan Certificate Signing Request (CSR), memastikan flag -nodes digunakan untuk menjaga kunci pribadi tidak terenkripsi seperti yang diperlukan untuk impor ACM.
openssl req -new -newkey ec -pkeyopt ec_paramgen_curve:prime256v1 -nodes \ -keyout private.key \ -out request.csr \ -subj "/CN=client.example.com" -
Kirimkan CSR ke CA AWS Pribadi Anda untuk menerbitkan sertifikat, yang mengembalikan ARN dari sertifikat yang baru diterbitkan.
CERT_ARN=$(aws acm-pca issue-certificate \ --certificate-authority-arn "$PCA_ARN" \ --csr fileb://request.csr \ --signing-algorithm "SHA256WITHECDSA" \ --validity Value=365,Type="DAYS" \ --template-arn arn:aws:acm-pca:::template/EndEntityCertificate/V1 \ --query 'CertificateArn' --output text) -
Ambil bundel sertifikat dari AWS PCA menggunakan perintah get-certificate, yang mengembalikan sertifikat daun dan rantai, lalu gunakan jq untuk memisahkannya menjadi file yang berbeda.
# Retrieve the full certificate bundle in JSON format aws acm-pca get-certificate \ --certificate-authority-arn "$PCA_ARN" \ --certificate-arn "$CERT_ARN" \ --output json > full_cert.json # Split into Leaf and Chain jq -r '.Certificate' full_cert.json > leaf_cert.pem jq -r '.CertificateChain' full_cert.json > cert_chain.pem -
Impor kunci pribadi yang tidak terenkripsi, sertifikat daun, dan rantai sertifikat ke AWS ACM, menggunakan protokol fileb://untuk menangani data file biner dengan benar di CLI.
aws acm import-certificate \ --certificate fileb://leaf_cert.pem \ --private-key fileb://private.key \ --certificate-chain fileb://cert_chain.pem \ --region us-east-1 \ --query 'CertificateArn' \ --output text
Impor sertifikat dari CA pihak ketiga
Prasyarat:
Sertifikat, kunci pribadi yang tidak terenkripsi, dan rantai sertifikat dari Otoritas Sertifikat Anda dalam format PEM
Sertifikat harus menyertakan Penggunaan Kunci yang Diperpanjang untuk Otentikasi Klien TLS
Izin untuk mengimpor sertifikat ke ACM
Untuk mengimpor sertifikat ke ACM (AWS CLI)
aws acm import-certificate \ --certificate fileb://certificate.pem \ --private-key fileb://private-key.pem \ --certificate-chain fileb://certificate-chain.pem \ --region us-east-1 \ --query 'CertificateArn' \ --output text
Langkah selanjutnya
Setelah memperoleh atau mengimpor sertifikat klien Anda di ACM, Anda dapat mengonfigurasi server asal Anda untuk meminta otentikasi TLS timbal balik dan mengaktifkan TLS bersama (asal) pada distribusi Anda. CloudFront Untuk petunjuk tentang mengaktifkan TLS timbal balik (asal) di CloudFront, lihat bagian selanjutnya “Aktifkan TLS bersama (asal) untuk CloudFront distribusi.”