Sederhanakan manajemen sertifikat pribadi dengan menggunakan AWS Private CA dan AWS RAM - AWS Prescriptive Guidance

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

Sederhanakan manajemen sertifikat pribadi dengan menggunakan AWS Private CA dan AWS RAM

Everett Hinckley dan Vivek Goyal, Amazon Web Services

Ringkasan

Anda dapat menggunakan AWS Private Certificate Authority (AWS Private CA) untuk menerbitkan sertifikat pribadi untuk mengautentikasi sumber daya internal dan menandatangani kode komputer. Pola ini menyediakan CloudFormation template AWS untuk penerapan cepat hirarki CA multi-level dan pengalaman penyediaan yang konsisten. Secara opsional, Anda dapat menggunakan AWS Resource Access Manager (AWS RAM) untuk berbagi CA secara aman dalam organisasi atau unit organisasi (OUs) Anda di AWS Organizations, dan memusatkan CA saat menggunakan AWS RAM untuk mengelola izin. Tidak perlu CA pribadi di setiap akun, jadi pendekatan ini menghemat uang Anda. Selain itu, Anda dapat menggunakan Amazon Simple Storage Service (Amazon S3) untuk menyimpan daftar pencabutan sertifikat (CRL) dan mengakses log.

Implementasi ini menyediakan fitur dan manfaat berikut:

  • Memusatkan dan menyederhanakan pengelolaan hierarki CA pribadi dengan menggunakan AWS Private CA.

  • Mengekspor sertifikat dan kunci ke perangkat yang dikelola pelanggan di AWS dan di lokasi.

  • Menggunakan CloudFormation template AWS untuk penerapan yang cepat dan pengalaman penyediaan yang konsisten.

  • Membuat CA root pribadi bersama dengan hierarki CA bawahan 1, 2, 3, atau 4.

  • Secara opsional, menggunakan AWS RAM untuk berbagi CA bawahan entitas akhir dengan akun lain di tingkat organisasi atau OU.

  • Menghemat uang dengan menghilangkan kebutuhan akan CA pribadi di setiap akun dengan menggunakan AWS RAM.

  • Membuat bucket S3 opsional untuk CRL.

  • Membuat bucket S3 opsional untuk log akses CRL.

Prasyarat dan batasan

Prasyarat

Jika Anda ingin membagikan CA dalam struktur AWS Organizations, identifikasi atau siapkan hal berikut:

Batasan

  • CAs adalah sumber daya regional. Semua CAs berada dalam satu akun AWS dan dalam satu Wilayah AWS.

  • Sertifikat dan kunci yang dibuat pengguna tidak didukung. Untuk kasus penggunaan ini, kami menyarankan Anda menyesuaikan solusi ini untuk menggunakan CA root eksternal. 

  • Bucket CRL publik tidak didukung. Kami menyarankan Anda menjaga kerahasiaan CRL. Jika akses internet ke CRL diperlukan, lihat bagian tentang menggunakan Amazon CloudFront untuk melayani CRLs dalam Mengaktifkan fitur S3 Block Public Access (BPA) dalam dokumentasi AWS Private CA.

  • Pola ini menerapkan pendekatan Single-region. Jika Anda memerlukan otoritas sertifikat Multi-wilayah, Anda dapat menerapkan bawahan di Wilayah AWS kedua atau di lokasi. Kompleksitas itu berada di luar cakupan pola ini, karena implementasinya bergantung pada kasus penggunaan spesifik Anda, volume beban kerja, dependensi, dan persyaratan.

Arsitektur

Tumpukan teknologi target

  • AWS Private CA

  • RAM AWS

  • Amazon S3

  • AWS Organizations

  • AWS CloudFormation

Arsitektur target

Pola ini menyediakan dua opsi untuk berbagi ke AWS Organizations:

Opsi 1 ─ Buat bagian di tingkat organisasi. Semua akun dalam organisasi dapat menerbitkan sertifikat pribadi dengan menggunakan CA bersama, seperti yang ditunjukkan pada diagram berikut.

Bagikan CA di tingkat organisasi

Opsi 2 ─ Buat bagian di tingkat unit organisasi (OU). Hanya akun di OU yang ditentukan yang dapat mengeluarkan sertifikat pribadi dengan menggunakan CA bersama. Misalnya, dalam diagram berikut, jika pembagian dibuat pada tingkat Sandbox OU, Pengembang 1 dan Pengembang 2 dapat menerbitkan sertifikat pribadi dengan menggunakan CA bersama.

Bagikan CA di tingkat OU

Alat

Layanan AWS

  • AWS Private CA — AWS Private Certificate Authority (AWS Private CA) adalah layanan CA pribadi yang dihosting untuk menerbitkan dan mencabut sertifikat digital pribadi. Ini membantu Anda membuat hierarki CA pribadi, termasuk root dan bawahan CAs, tanpa biaya investasi dan pemeliharaan pengoperasian CA lokal.

  • AWS RAM — AWS Resource Access Manager (AWS RAM) membantu Anda berbagi sumber daya dengan aman di seluruh akun AWS dan di dalam organisasi Anda atau OUs di AWS Organizations. Untuk mengurangi overhead operasional di lingkungan multi-akun, Anda dapat membuat sumber daya dan menggunakan AWS RAM untuk membagikan sumber daya tersebut ke seluruh akun.

  • AWS Organizations — AWS Organizations adalah layanan manajemen akun yang memungkinkan Anda mengkonsolidasikan beberapa akun AWS ke dalam organisasi yang Anda buat dan kelola secara terpusat.

  • Amazon S3 - Amazon Simple Storage Service (Amazon S3) Simple Storage Service adalah layanan penyimpanan objek. Anda dapat menggunakan Amazon S3 untuk menyimpan dan mengambil data sebanyak apa pun kapan pun, dari mana pun di web. Pola ini menggunakan Amazon S3 untuk menyimpan daftar pencabutan sertifikat (CRL) dan log akses.

  • AWS CloudFormation — AWS CloudFormation membantu Anda memodelkan dan menyiapkan sumber daya AWS Anda, menyediakannya dengan cepat dan konsisten, serta mengelolanya sepanjang siklus hidupnya. Anda dapat menggunakan template untuk mendeskripsikan sumber daya Anda dan dependensinya, dan meluncurkan dan mengonfigurasinya bersama-sama sebagai tumpukan, alih-alih mengelola sumber daya secara individual. Pola ini menggunakan AWS CloudFormation untuk secara otomatis menerapkan hierarki CA multi-level.

Kode

Kode sumber untuk pola ini tersedia di GitHub, di repositori hierarki AWS Private CA. Repositori meliputi:

  • CloudFormation Template AWSACMPCA-RootCASubCA.yaml. Anda dapat menggunakan template ini untuk menerapkan hierarki CA untuk implementasi ini. 

  • Uji file untuk kasus penggunaan seperti meminta, mengekspor, mendeskripsikan, dan menghapus sertifikat.

Untuk menggunakan file-file ini, ikuti instruksi di bagian Epics.

Epik

TugasDeskripsiKeterampilan yang dibutuhkan

Kumpulkan informasi subjek sertifikat.

Kumpulkan informasi subjek sertifikat tentang pemilik sertifikat: nama organisasi, unit organisasi, negara, negara bagian, lokalitas, dan nama umum.

Arsitek cloud, Arsitek keamanan, insinyur PKI

Kumpulkan informasi opsional tentang AWS Organizations.

Jika CA akan menjadi bagian dari struktur AWS Organizations dan Anda ingin membagikan hierarki CA di dalam struktur tersebut, kumpulkan nomor akun manajemen, ID organisasi, dan secara opsional ID OU (jika Anda ingin berbagi hierarki CA hanya dengan OU tertentu). Juga, tentukan akun AWS Organizations atau OUs, jika ada, yang ingin Anda bagikan CA.

Arsitek cloud, Arsitek keamanan, insinyur PKI

Rancang hierarki CA.

Tentukan akun mana yang akan menampung root dan bawahan. CAs Tentukan berapa banyak level bawahan yang dibutuhkan hierarki antara root dan sertifikat entitas akhir. Untuk informasi selengkapnya, lihat Merancang hierarki CA dalam dokumentasi AWS Private CA.

Arsitek cloud, Arsitek keamanan, insinyur PKI

Tentukan konvensi penamaan dan penandaan untuk hierarki CA.

Tentukan nama untuk sumber daya AWS: root CA dan setiap CA bawahan. Tentukan tag mana yang harus ditetapkan untuk setiap CA.

Arsitek cloud, Arsitek keamanan, insinyur PKI

Tentukan enkripsi dan algoritma penandatanganan yang diperlukan.

Tentukan yang berikut ini:

  • Persyaratan algoritme enkripsi organisasi Anda untuk kunci publik yang digunakan CA Anda saat mengeluarkan sertifikat. Defaultnya adalah RSA_2048. 

  • Algoritma kunci yang digunakan CA Anda untuk penandatanganan sertifikat. Defaultnya adalah SHA256 WITHRSA.

Arsitek cloud, Arsitek keamanan, insinyur PKI

Tentukan persyaratan pencabutan sertifikat untuk hierarki CA.

Jika kemampuan pencabutan sertifikat diperlukan, buat konvensi penamaan untuk bucket S3 yang berisi daftar pencabutan sertifikat (CRL).

Arsitek cloud, Arsitek keamanan, insinyur PKI

Tentukan persyaratan logging untuk hierarki CA.

Jika kemampuan pencatatan akses diperlukan, buat konvensi penamaan untuk bucket S3 yang berisi log akses.

Arsitek cloud, Arsitek keamanan, insinyur PKI

Tentukan periode kedaluwarsa sertifikat.

Tentukan tanggal kedaluwarsa untuk sertifikat root (defaultnya adalah 10 tahun), sertifikat entitas akhir (defaultnya adalah 13 bulan), dan sertifikat CA bawahan (defaultnya adalah 3 tahun). Sertifikat CA bawahan harus kedaluwarsa lebih awal dari sertifikat CA pada tingkat yang lebih tinggi dalam hierarki. Untuk informasi selengkapnya, lihat Mengelola siklus hidup CA pribadi dalam dokumentasi AWS Private CA.

Arsitek cloud, Arsitek keamanan, insinyur PKI
TugasDeskripsiKeterampilan yang dibutuhkan

Prasyarat lengkap.

Selesaikan langkah-langkah di bagian Prasyarat dari pola ini.

Administrator cloud, insinyur keamanan, insinyur PKI

Buat peran CA untuk berbagai persona.

  1. Tentukan jenis peran AWS Identity and Access Management (IAM) atau pengguna di AWS IAM Identity Center (penerus AWS Single Sign-On) yang diperlukan untuk mengelola berbagai tingkatan hierarki CA, seperti Root, Subordinate, dan. CAAdmin CAAdmin CertificateConsumer 

  2. Tentukan perincian kebijakan yang diperlukan untuk memisahkan tugas. 

  3. Buat peran IAM atau pengguna yang diperlukan di Pusat Identitas IAM di akun tempat hierarki CA berada.

Administrator cloud, insinyur keamanan, insinyur PKI

Menyebarkan CloudFormation tumpukan.

  1. Dari GitHub repositori untuk pola ini, unduh AWSPCA-RootCASubCA template.yaml. 

  2. Menerapkan template dari CloudFormation konsol AWS atau dari AWS Command Line Interface (AWS CLI). Untuk informasi selengkapnya, lihat Bekerja dengan tumpukan dalam CloudFormation dokumentasi.

  3. Lengkapi parameter dalam template, termasuk nama organisasi, nama OU, algoritma kunci, algoritma penandatanganan, dan opsi lainnya.

Administrator cloud, insinyur keamanan, insinyur PKI

Arsitek solusi untuk memperbarui sertifikat yang digunakan oleh sumber daya yang dikelola pengguna.

Sumber daya layanan AWS terintegrasi, seperti Elastic Load Balancing, memperbarui sertifikat secara otomatis sebelum kedaluwarsa. Namun, sumber daya yang dikelola pengguna, seperti server web yang berjalan di instans Amazon Elastic Compute Cloud (Amazon EC2), memerlukan mekanisme lain. 

  1. Tentukan sumber daya yang dikelola pengguna mana yang memerlukan sertifikat entitas akhir dari CA pribadi. 

  2. Rencanakan proses untuk diberi tahu tentang berakhirnya sumber daya dan sertifikat yang dikelola pengguna. Untuk contoh , lihat yang berikut ini:

  3. Tulis skrip khusus untuk memperbarui sertifikat pada sumber daya yang dikelola pengguna dan mengintegrasikannya dengan layanan AWS untuk mengotomatiskan pembaruan. Untuk informasi selengkapnya tentang AWS Services terintegrasi, lihat Layanan yang terintegrasi dengan AWS Certificate Manager dalam dokumentasi ACM.

Administrator cloud, insinyur keamanan, insinyur PKI
TugasDeskripsiKeterampilan yang dibutuhkan

Validasi berbagi AWS RAM opsional.

Jika hierarki CA dibagikan dengan akun lain di AWS Organizations, masuk ke salah satu akun tersebut dari AWS Management Console, navigasikan ke konsol AWS Private CA, dan konfirmasikan bahwa CA yang baru dibuat dibagikan ke akun ini. Hanya CA tingkat terendah dalam hierarki yang akan terlihat, karena itu adalah CA yang menghasilkan sertifikat entitas akhir. Ulangi untuk pengambilan sampel akun yang dibagikan CA.

Administrator cloud, insinyur keamanan, insinyur PKI

Validasi hierarki CA dengan pengujian siklus hidup sertifikat.

Dalam GitHub repositori untuk pola ini, cari tes siklus hidup. Jalankan pengujian dari AWS CLI untuk meminta sertifikat, mengekspor sertifikat, menjelaskan sertifikat, dan menghapus sertifikat.

Administrator cloud, insinyur keamanan, insinyur PKI

Impor rantai sertifikat ke toko kepercayaan.

Agar browser dan aplikasi lain mempercayai sertifikat, penerbit sertifikat harus dimasukkan dalam toko kepercayaan browser, yang merupakan daftar tepercaya CAs. Tambahkan rantai sertifikat untuk hierarki CA baru ke toko kepercayaan browser dan aplikasi Anda. Konfirmasikan bahwa sertifikat entitas akhir dipercaya.

Administrator cloud, insinyur keamanan, insinyur PKI

Buat runbook untuk mendokumentasikan hierarki CA.

Buat dokumen runbook untuk menjelaskan arsitektur hierarki CA, struktur akun yang dapat meminta sertifikat entitas akhir, proses pembuatan, dan tugas manajemen dasar seperti menerbitkan sertifikat entitas akhir (kecuali jika Anda ingin mengizinkan layanan mandiri menurut akun anak), penggunaan, dan pelacakan.

Administrator cloud, insinyur keamanan, insinyur PKI

Sumber daya terkait

Informasi tambahan

Saat Anda mengekspor sertifikat, gunakan frasa sandi yang kuat secara kriptografis dan selaras dengan strategi pencegahan kehilangan data organisasi Anda.