Praktik terbaik - AWS Certificate Manager

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

Praktik terbaik

Praktik terbaik adalah rekomendasi yang dapat membantu Anda menggunakan AWS Certificate Manager (AWS Certificate Manager) lebih efektif. Praktik terbaik berikut didasarkan pada pengalaman dunia nyata dari ACM pelanggan saat ini.

Pemisahan tingkat akun

Gunakan pemisahan tingkat akun dalam kebijakan Anda untuk mengontrol siapa yang dapat mengakses sertifikat di tingkat akun. Simpan sertifikat produksi Anda di akun terpisah dari sertifikat pengujian dan pengembangan Anda. Jika Anda tidak dapat menggunakan pemisahan tingkat akun, Anda dapat membatasi akses ke peran tertentu dengan menolak kms:CreateGrant tindakan dalam kebijakan Anda. Ini membatasi peran mana dalam akun yang dapat menandatangani sertifikat pada tingkat tinggi. Untuk informasi tentang hibah, termasuk terminologi hibah, lihat Hibah di AWS KMSdi AWS Key Management Service Panduan Pengembang.

Jika Anda menginginkan kontrol yang lebih terperinci daripada membatasi penggunaan kms:CreateGrant berdasarkan akun, Anda dapat membatasi sertifikat tertentu kms:CreateGrant menggunakan kms: EncryptionContext tombol kondisi. Tentukan arn:aws:acm sebagai kunci, dan nilai ARN untuk membatasi. Contoh kebijakan berikut mencegah penggunaan sertifikat tertentu, tetapi mengizinkan orang lain.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Deny", "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:aws:acm:arn": "arn:aws:acm:us-east-1:111122223333:certificate/b26def74-1234-4321-9876-951d4c07b197" } } } ] }

AWS CloudFormation

Dengan AWS CloudFormation Anda dapat membuat template yang menggambarkan AWS sumber daya yang ingin Anda gunakan. AWS CloudFormation kemudian menyediakan dan mengonfigurasi sumber daya tersebut untuk Anda. AWS CloudFormation dapat menyediakan sumber daya yang didukung oleh ACM seperti Elastic Load Balancing, Amazon CloudFront, dan Amazon Gateway. API Untuk informasi selengkapnya, lihat Layanan terintegrasi dengan ACM.

Jika Anda menggunakan AWS CloudFormation untuk membuat dan menghapus beberapa lingkungan pengujian dengan cepat, kami menyarankan Anda untuk tidak membuat ACM sertifikat terpisah untuk setiap lingkungan. Melakukannya akan dengan cepat menghabiskan kuota sertifikat Anda. Untuk informasi selengkapnya, lihat Kuota. Sebagai gantinya, buat sertifikat wildcard yang mencakup semua nama domain yang Anda gunakan untuk pengujian. Misalnya, jika Anda berulang kali membuat ACM sertifikat untuk nama domain yang bervariasi hanya berdasarkan nomor versi, seperti <version>.service.example.com, buat sertifikat wildcard tunggal untuk <*>.service.example.com. Sertakan sertifikat wildcard dalam template yang AWS CloudFormation digunakan untuk membuat lingkungan pengujian Anda.

Penyematan sertifikat

Certificate pinning, kadang-kadang dikenal sebagai SSL pinning, adalah proses yang dapat Anda gunakan dalam aplikasi Anda untuk memvalidasi host jarak jauh dengan mengaitkan host tersebut secara langsung dengan sertifikat X.509 atau kunci publik alih-alih dengan hierarki sertifikat. Oleh karena itu aplikasi menggunakan pin untuk mem-bypass SSL /validasi rantai TLS sertifikat. Proses SSL validasi tipikal memeriksa tanda tangan di seluruh rantai sertifikat dari sertifikat root certificate authority (CA) melalui sertifikat CA bawahan, jika ada. Ini juga memeriksa sertifikat untuk host jarak jauh di bagian bawah hierarki. Aplikasi Anda dapat menyematkan ke sertifikat untuk host jarak jauh untuk mengatakan bahwa hanya sertifikat itu dan bukan sertifikat root atau lainnya dalam rantai yang dipercaya. Anda dapat menambahkan sertifikat host jarak jauh atau kunci publik ke aplikasi Anda selama pengembangan. Atau, aplikasi dapat menambahkan sertifikat atau kunci saat pertama kali terhubung ke host.

Awas

Kami menyarankan agar aplikasi Anda tidak menyematkan ACM sertifikat. ACMmelakukan Perpanjangan sertifikat terkelola di AWS Certificate Manager untuk secara otomatis memperbarui TLS sertifikat yang dikeluarkan Amazon Anda sebelum SSL kedaluwarsa. Untuk memperbarui sertifikat, buat key ACM pair public-private baru. Jika aplikasi Anda menyematkan ACM sertifikat dan sertifikat berhasil diperbarui dengan kunci publik baru, aplikasi mungkin tidak dapat terhubung ke domain Anda.

Jika Anda memutuskan untuk menyematkan sertifikat, opsi berikut tidak akan menghalangi aplikasi Anda untuk terhubung ke domain Anda:

  • Impor sertifikat Anda sendiri ke dalam ACM dan kemudian pin aplikasi Anda ke sertifikat yang diimpor. ACMtidak mencoba memperbarui sertifikat yang diimpor secara otomatis.

  • Jika Anda menggunakan sertifikat publik, sematkan aplikasi Anda ke semua sertifikat root Amazon yang tersedia. Jika Anda menggunakan sertifikat pribadi, sematkan aplikasi Anda ke sertifikat root CA.

Validasi domain

Sebelum otoritas sertifikat Amazon (CA) dapat mengeluarkan sertifikat untuk situs Anda, AWS Certificate Manager (ACM) harus memverifikasi bahwa Anda memiliki atau mengontrol semua domain yang Anda tentukan dalam permintaan Anda. Anda dapat melakukan verifikasi menggunakan email atauDNS. Untuk informasi selengkapnya, silakan lihat AWS Certificate Manager DNSvalidasi dan AWS Certificate Manager validasi email.

Menambahkan atau menghapus nama domain

Anda tidak dapat menambah atau menghapus nama domain dari ACM sertifikat yang ada. Sebagai gantinya, Anda harus meminta sertifikat baru dengan daftar nama domain yang direvisi. Misalnya, jika sertifikat Anda memiliki lima nama domain dan Anda ingin menambahkan empat lagi, Anda harus meminta sertifikat baru dengan sembilan nama domain. Seperti halnya sertifikat baru, Anda harus memvalidasi kepemilikan semua nama domain dalam permintaan, termasuk nama yang sebelumnya Anda validasi untuk sertifikat asli.

Jika Anda menggunakan validasi email, Anda menerima hingga 8 pesan email validasi untuk setiap domain, setidaknya 1 di antaranya harus ditindaklanjuti dalam waktu 72 jam. Misalnya, ketika Anda meminta sertifikat dengan lima nama domain, Anda menerima hingga 40 pesan validasi, setidaknya 5 di antaranya harus ditindaklanjuti dalam waktu 72 jam. Karena jumlah nama domain dalam permintaan sertifikat meningkat, demikian juga pekerjaan yang diperlukan untuk menggunakan email untuk memvalidasi kepemilikan domain.

Jika Anda menggunakan DNS validasi sebagai gantinya, Anda harus menulis satu DNS catatan baru ke database untuk yang ingin FQDN Anda validasi. ACMmengirimi Anda catatan untuk membuat dan kemudian menanyakan database untuk menentukan apakah catatan telah ditambahkan. Menambahkan catatan menegaskan bahwa Anda memiliki atau mengontrol domain. Dalam contoh sebelumnya, jika Anda meminta sertifikat dengan lima nama domain, Anda harus membuat lima DNS catatan. Kami menyarankan Anda menggunakan DNS validasi jika memungkinkan.

Memilih keluar dari pencatatan transparansi sertifikat

penting

Terlepas dari tindakan yang Anda ambil untuk memilih keluar dari pencatatan transparansi sertifikat, sertifikat Anda mungkin masih dicatat oleh klien atau individu mana pun yang memiliki akses ke titik akhir publik atau pribadi tempat Anda mengikat sertifikat. Namun, sertifikat tidak akan berisi cap waktu sertifikat yang ditandatangani (SCT). Hanya CA penerbit yang dapat menanamkan SCT sertifikat.

Mulai 30 April 2018, Google Chrome tidak lagi mempercayai SSL TLS publik/sertifikat yang tidak dicatat dalam log transparansi sertifikat. Oleh karena itu, mulai 24 April 2018, Amazon CA mulai menerbitkan semua sertifikat dan pembaruan baru ke setidaknya dua log publik. Setelah sertifikat dicatat, sertifikat tidak dapat dihapus. Untuk informasi selengkapnya, lihat Pencatatan Transparansi Sertifikat.

Logging dilakukan secara otomatis ketika Anda meminta sertifikat atau ketika sertifikat diperbarui, tetapi Anda dapat memilih untuk memilih keluar. Alasan umum untuk melakukannya termasuk kekhawatiran tentang keamanan dan privasi. Misalnya, mencatat nama domain host internal memberikan informasi penyerang potensial tentang jaringan internal yang seharusnya tidak bersifat publik. Selain itu, logging dapat membocorkan nama-nama produk dan situs web baru atau yang belum dirilis.

Untuk memilih keluar dari pencatatan transparansi saat Anda meminta sertifikat, gunakan options parameter sertifikat permintaan AWS CLI perintah atau RequestCertificateAPIoperasi. Jika sertifikat Anda dikeluarkan sebelum 24 April 2018, dan Anda ingin memastikan bahwa sertifikat tersebut tidak dicatat selama perpanjangan, Anda dapat menggunakan update-certificate-optionsperintah atau UpdateCertificateOptionsAPIoperasi untuk memilih keluar.

Batasan
  • Anda tidak dapat menggunakan konsol untuk mengaktifkan atau menonaktifkan pencatatan transparansi.

  • Anda tidak dapat mengubah status pencatatan setelah sertifikat memasuki periode perpanjangan, biasanya 60 hari sebelum sertifikat kedaluwarsa. Tidak ada pesan kesalahan yang dihasilkan jika perubahan status gagal.

Setelah sertifikat dicatat, sertifikat tidak dapat dihapus dari log. Memilih keluar pada saat itu tidak akan berpengaruh. Jika Anda memilih keluar dari logging ketika Anda meminta sertifikat dan kemudian memilih nanti untuk memilih kembali, sertifikat Anda tidak akan dicatat sampai diperpanjang. Jika Anda ingin sertifikat segera dicatat, kami sarankan Anda mengeluarkan yang baru.

Contoh berikut menunjukkan cara menggunakan perintah request-certificate untuk menonaktifkan transparansi sertifikat saat Anda meminta sertifikat baru.

aws acm request-certificate \ --domain-name www.example.com \ --validation-method DNS \ --options CertificateTransparencyLoggingPreference=DISABLED \

Perintah sebelumnya menampilkan sertifikat baru Anda. ARN

{ "CertificateArn": "arn:aws:acm:region:account:certificate/certificate_ID" }

Jika Anda sudah memiliki sertifikat, dan Anda tidak ingin itu dicatat ketika diperbarui, gunakan update-certificate-optionsperintah. Perintah ini tidak mengembalikan nilai.

aws acm update-certificate-options \ --certificate-arn arn:aws:acm:region:account:\ certificate/certificate_ID \ --options CertificateTransparencyLoggingPreference=DISABLED

Nyalakan AWS CloudTrail

Aktifkan CloudTrail logging sebelum Anda mulai menggunakanACM. CloudTrail Memungkinkan Anda untuk memantau AWS penerapan dengan mengambil riwayat AWS APIpanggilan untuk akun Anda, termasuk API panggilan yang dilakukan melalui AWS Konsol Manajemen, AWS SDKs, AWS Command Line Interface, dan Amazon Web Services tingkat yang lebih tinggi. Anda juga dapat mengidentifikasi pengguna dan akun mana yang disebut ACMAPIs, alamat IP sumber tempat panggilan dibuat, dan kapan panggilan terjadi. Anda dapat mengintegrasikan CloudTrail ke dalam aplikasi menggunakanAPI, mengotomatiskan pembuatan jejak untuk organisasi Anda, memeriksa status jejak Anda, dan mengontrol cara administrator mengaktifkan dan menonaktifkan CloudTrail log. Untuk informasi lebih lanjut, lihat Membuat Jejak. Pergi ke Menggunakan CloudTrail dengan AWS Certificate Manager untuk melihat contoh jejak untuk ACM tindakan.