This is not an officially supported Google product. This code creates PoC demo environment for CSA Certificate Authority Service demo. This demo code is not built for production workload.
Panduan arsitektur ini memungkinkan penerapan Certificate Authority Service (CAS) yang efisien dan aman. Ini menciptakan otoritas sertifikat akar bersama dengan dua otoritas sertifikat bawahan dan satu sertifikat daun. Otoritas sertifikat ini sangat tersedia, terukur, dan mudah dikelola, memungkinkan Anda membangun Infrastruktur Kunci Publik (PKI) pribadi untuk menegaskan identitas melalui sertifikat dan membangun akar kepercayaan di seluruh beban kerja Anda.
Meskipun panduan arsitektur ini berfokus pada penerapan CAS penuh - dilambangkan sebagai arsitektur 1 pada gambar di bawah (yaitu arsitektur yang semua otoritas sertifikatnya dihosting di Google Cloud) - CAS sangat fleksibel dan memberdayakan organisasi Anda untuk membuat PKI pribadi dalam berbagai dengan berbagai cara seperti yang digambarkan pada diagram di bawah ini.
Kami juga akan memberikan detail tentang cara menggunakan CSR (Certificate Signing Request) untuk mengimplementasikan arsitektur Hibrid, yang memungkinkan CA berada di luar GCP (arsitektur #2-3).
Layanan Otoritas Sertifikat (CAS) - Layanan Otoritas Sertifikat adalah layanan Google Cloud dengan ketersediaan tinggi dan skalabel yang memungkinkan Anda menyederhanakan, mengotomatisasi, dan menyesuaikan penerapan, pengelolaan, dan keamanan otoritas sertifikat swasta (CA).
Layanan Manajemen Kunci (KMS) - Layanan Manajemen Kunci Cloud memungkinkan Anda membuat, mengimpor, dan mengelola kunci kriptografi dan melakukan operasi kriptografi dalam satu layanan cloud terpusat. Anda dapat menggunakan kunci ini dan melakukan operasi ini dengan menggunakan Cloud KMS secara langsung, dengan menggunakan Cloud HSM atau Cloud External Key Manager, atau dengan menggunakan integrasi Kunci Enkripsi yang Dikelola Pelanggan (CMEK) dalam layanan Google Cloud lainnya.
Google Cloud Storage (GCS) - Cloud Storage adalah layanan terkelola untuk menyimpan data tidak terstruktur. Simpan data dalam jumlah berapa pun dan ambil sesering yang Anda mau.
Saat merancang PKI dengan GCP CAS, batasan berikut harus dipertimbangkan serta kuota dan batasan serta batasan yang diketahui:
Sumber | Satuan | Nilai |
---|---|---|
CA yang tertunda 1 | per Lokasi per Proyek | 100 |
CA | per Lokasi per Proyek | 1.000 |
Sertifikat yang belum habis masa berlakunya dan dicabut 2 | per CA atau daftar pencabutan sertifikat (CRL) | 500.000 |
1 otoritas sertifikat (CA) yang tertunda adalah CA bawahan yang telah dibuat tetapi belum diaktifkan, dan dengan demikian berada dalam status AWAITING_USER_ACTIVATION.
2 CRL dapat berisi paling banyak 500.000 sertifikat yang belum habis masa berlakunya. Jika Anda mencoba untuk mencabut lebih dari batas ini, permintaan pencabutan akan gagal. Jika Anda perlu mencabut lebih dari 500.000 sertifikat, kami menyarankan Anda menunggu hingga sertifikat yang dicabut telah kedaluwarsa atau mencabut sertifikat CA yang menerbitkannya.
##Petunjuk Terraform:
Masuk ke organisasi Anda dan tetapkan diri Anda sebagai Admin Layanan CA dan Admin Cloud KMS pada proyek yang akan digunakan untuk penerapan.
Jika proyek baru perlu dibuat dan mengaktifkan penagihan. Ikuti langkah-langkah dalam panduan ini.
Buka Cloud shell dan clone repositori git berikut menggunakan perintah di bawah ini:
git clone https://github.com/GCP-Architecture-Guides/csa-certificate-authority-service.git
Arahkan ke folder layanan otoritas-sertifikat-csa.
cd csa-certificate-authority-service</th>
Ekspor id proyek dalam variabel Terraform
export TF_VAR_demo_project_id=[YOUR_PROJECT_ID]
Saat berada di folder csa-certificate-authority-service, jalankan perintah di bawah ini secara berurutan.
terraform init terraform plan terraform apply
jika diminta, otorisasi panggilan API.
Setelah penerapan selesai, ringkasan keluaran aset yang diatur akan dipublikasikan. Ini menyebarkan sumber daya dalam waktu lima menit.
Setelah menyelesaikan demo, navigasikan ke folder layanan otoritas sertifikat dan jalankan perintah di bawah ini untuk menghancurkan semua sumber daya demo.
terraform destroy
##Ringkasan Terraform:
Kolam | CA | Keabsahan | Negara | Nama Subjek | Wilayah | Tingkat |
---|---|---|---|---|---|---|
Demo-Root-Pool | Akar CA | 10 tahun | Diaktifkan | Organisasi: Demo CA CN: Demo ID Sumber Daya: [default] | us-central1 (Iowa) | Perusahaan |
Demo-Sub-Pool | Sub CA dengan Root CA di Google Cloud | 3 tahun | Diaktifkan | Organisasi: Demo CA CN: Demo ID Sumber Daya: [default] | us-central1 (Iowa) | Perusahaan |
Demo-Sub-Pool-2 | Sub CA dengan Root CA di Google Cloud | 3 tahun | Diaktifkan | Organisasi: Demo CA CN: Demo ID Sumber Daya: [default] | kami-timur1 | Perusahaan |
Kolam | Metode CSR yang Diterima | Kunci & Algoritma yang Diizinkan | Ukuran & Algoritma Kunci | Opsi Penerbitan | Nilai Dasar yang Dikonfigurasi | Batasan Ekstensi yang Dikonfigurasi | Batasan Identitas yang Dikonfigurasi |
---|---|---|---|---|---|---|---|
Demo-Root-Pool | Izinkan semua | Tidak ada batasan | RSA_PKCS1_4096_SHA256 | Ke Bucket GCS dalam format PEM | Tidak ada | Salin semua ekstensi dari permintaan sertifikat | Salin subjek dan SAN dari permintaan sertifikat |
Demo-Sub-Pool | Izinkan semua | Tidak ada batasan | RSA_PKCS1_4096_SHA256 | Ke Bucket GCS dalam format PEM | Tidak ada | Salin semua ekstensi dari permintaan sertifikat | Salin subjek dan SAN dari permintaan sertifikat |
Demo-Sub-Pool-2 | Izinkan semua | Tidak ada batasan | RSA_PKCS1_4096_SHA256 | Ke Bucket GCS dalam format PEM | Tidak ada | Salin semua ekstensi dari permintaan sertifikat | Salin subjek dan SAN dari permintaan sertifikat |
Praktik terbaik untuk Layanan Otoritas Sertifikat
Layanan Otoritas Sertifikat Google Cloud memiliki beberapa persyaratan pencatatan dan pemantauan untuk memastikan keamanan dan integritas layanan. Persyaratan tersebut antara lain sebagai berikut:
Pencatatan audit: Operasi log yang dilakukan pada layanan, seperti penerbitan sertifikat, pembaruan, dan pencabutan, dicatat dan dapat diaudit oleh pelanggan.
Notifikasi acara: Pelanggan dapat menerima notifikasi untuk acara penting, seperti habis masa berlaku sertifikat, melalui email atau melalui webhook.
Transparansi sertifikat: Semua sertifikat yang diterbitkan dicatat ke log Transparansi, yang memungkinkan audit penerbitan dan pencabutan sertifikat.
Pemantauan keamanan dan ketersediaan: Tim keamanan dan operasi terus memantau layanan untuk potensi ancaman keamanan dan masalah ketersediaan.
Kepatuhan: Layanan Otoritas Sertifikat Google Cloud mematuhi berbagai standar yang menentukan persyaratan keamanan dan operasional untuk otoritas sertifikat.
Secara keseluruhan, persyaratan pencatatan dan pemantauan ini bertujuan untuk memberikan transparansi dan visibilitas kepada pelanggan terhadap layanan, sekaligus memastikan keamanan dan ketersediaan layanan.
Layanan Google Cloud menulis log audit untuk membantu Anda menjawab pertanyaan, "Siapa melakukan apa, di mana, dan kapan?" dalam sumber daya Google Cloud Anda.
Jenis log audit berikut tersedia untuk Layanan CA:
Log audit Aktivitas Admin
Termasuk operasi "admin write" yang menulis metadata atau informasi konfigurasi.
Anda tidak dapat menonaktifkan log audit Aktivitas Admin.
Log audit Akses Data
Termasuk operasi "admin read" yang membaca metadata atau informasi konfigurasi. Juga mencakup operasi "baca data" dan "tulis data" yang membaca atau menulis data yang disediakan pengguna.
Untuk menerima log audit Akses Data, Anda harus mengaktifkannya secara eksplisit.
Untuk log audit spesifik yang dibuat oleh Layanan Otoritas Sertifikat, silakan lihat.
Log audit Aktivitas Admin selalu diaktifkan; Anda tidak dapat menonaktifkannya.
Log audit Akses Data dinonaktifkan secara default dan tidak ditulis kecuali diaktifkan secara eksplisit.
Untuk informasi tentang mengaktifkan beberapa atau semua log audit Akses Data Anda, lihat Mengaktifkan log audit Akses Data.
Di konsol Google Cloud, Anda dapat menggunakan Logs Explorer untuk mengambil entri log audit untuk proyek, folder, atau organisasi Cloud Anda:
Di konsol Google Cloud, buka halaman Logging> Logs Explorer.
Pilih proyek, folder, atau organisasi Cloud yang ada.
Di panel Pembuat kueri, lakukan hal berikut:
protoPayload.serviceName="privateca.googleapis.com"
Cloud Monitoring dapat digunakan untuk memantau operasi yang dilakukan pada sumber daya di Layanan Otoritas Sertifikat.
Gunakan petunjuk berikut untuk mengaktifkan peringatan yang disarankan.
Buka halaman Ikhtisar Layanan CA di konsol Google Cloud.
Di kanan atas laman Ikhtisar, klik + 5 Peringatan yang Direkomendasikan .
Aktifkan atau nonaktifkan setiap peringatan, baca deskripsinya.
Beberapa peringatan mendukung ambang batas khusus. Misalnya, Anda dapat menentukan kapan Anda ingin diperingatkan tentang sertifikat CA yang akan habis masa berlakunya, atau tingkat kesalahan untuk tingginya tingkat kegagalan pembuatan sertifikat.
Semua peringatan mendukung saluran notifikasi.
Klik Kirim setelah Anda mengaktifkan semua peringatan yang diinginkan.
Dokumentasikan kebijakan dan templat sertifikat
Kendala identitas
Kendala perluasan
Kondisi penggunaan utama
Pengidentifikasi kebijakan
Ekstensi
Untuk memitigasi risiko penyalahgunaan, kebijakan sertifikat harus ditinjau untuk memastikan bahwa templat telah disetujui dan ditentukan fungsinya
Buat rencana respons kompromi CA
Edukasi seluruh pemangku kepentingan
Tinjau kebijakan keamanan dan komunikasi CA setidaknya setiap tahun
Tetapkan rencana CA cadangan
CA Inventaris
Verifikasi bahwa hanya CA yang disetujui yang digunakan
Pastikan hanya akar yang disetujui yang dapat dipercaya
CA Root Inventaris yang dipercaya pada sistem pihak yang mengandalkan
Tinjau dan verifikasi izin untuk templat sertifikat yang ada
Menerapkan pemeriksaan pencabutan pada sistem pihak yang mengandalkan
Aktifkan log dan peringatan audit
Identifikasi kompromi berdasarkan desain peringatan & pelaporan
Membangun pemahaman yang jelas tentang apa yang terjadi
Siapa yang mendeteksi kejadian itu.
Jika tersedia, siapa yang melakukan insiden tersebut.
Ketika CA dikompromikan.
Dimana kejadian itu terjadi.
Root, sub-CA, dan jumlah sertifikat pengguna akhir mana yang terpengaruh oleh insiden tersebut.
Penyebab yang diyakini mendasari insiden tersebut.
Tindakan perbaikan apa yang diambil atau akan diambil untuk mengatasi penyebab utama insiden tersebut.
Daftar sertifikat dan domain yang terlibat dalam pelanggaran.
Bagaimana insiden itu terdeteksi?
Penjelasan rinci tentang eksploitasi.
Detail tentang infrastruktur apa saja yang disusupi.
Detail tentang bagaimana infrastruktur disusupi.
Garis waktu peristiwa yang terperinci.
Apakah kerentanan terdeteksi oleh operasi normal? Jika tidak, mengapa?
Apakah kerentanan ditemukan dalam audit terkini? Jika ya, apakah kerentanannya telah diatasi? Jika kerentanan tidak diatasi, mengapa tidak?
Apakah kerentanan ini terdeteksi pada audit terbaru? Jika tidak, mohon jelaskan alasannya.
Perubahan kebijakan apa yang perlu dilakukan?
Informasi lain yang sesuai.
Aktifkan tim tanggap insiden
Menampung dan mengisolasi lingkungan CA yang terkena dampak a. Untuk menonaktifkan CA agar tidak dapat menerbitkan sertifikat, lihat referensi
Menetapkan rencana untuk mengomunikasikan dampak dan langkah mitigasi selanjutnya kepada pemangku kepentingan yang terkena dampak (internal/eksternal)
Setelah menyelesaikan penyelidikan dan penahanan yang terverifikasi, lakukan hal berikut:
Cabut dan setel ulang kredensial untuk setiap identitas yang disusupi yang dipetakan ke peran yang memberikan izin lebih tinggi untuk CA dan kebijakan/template terkait.reference-1 dan reference-2
Cabut CA yang disusupi dan sertifikat terkait serta buat referensi CA baru
Tambahkan ke CRL/perbarui status di OCSP Responder (jika tidak otomatis) untuk memberi tahu subjek, pihak yang mengandalkan, dan vendor
Cabut sertifikat yang ada dan terbitkan kembali sertifikat dari referensi CA baru
Hapus/ganti sertifikat root
Validasi bahwa pemeriksaan pencabutan diaktifkan pada sistem pihak yang mengandalkan
Validasi penggantian sertifikat dan root
Lacak dan laporkan kemajuannya
Silakan lihat perkiraan biaya bulanan untuk menjalankan lingkungan demonstrasi ini di bawah. Perhatikan, ini telah diperkirakan pada saat pembuatan pola, perkiraan dapat berubah seiring waktu dan mungkin berbeda di setiap wilayah, harap tinjau biaya setiap sumber daya di Kalkulator Harga Google Cloud.
SKU DevOps | SKU Perusahaan | |
---|---|---|
Biaya CA bulanan | $20 | $200 |
Biaya sertifikat | 0-50K @ $0,3 50K -100K @ $0,03 100K+ @ $0,0009 Tiering DI SELURUH CA | 0-50K @ $0,5 50K -100K @ $0,05 100K+ @ $0,001 Tiering DI SELURUH CA |
Dukungan HSM untuk kunci CA | ||
Kunci BYO CA | X | |
Sertifikat dilacak dan dicabut | X | |
QPS | 25 | 7 |
Dioptimalkan untuk ... | Volume tinggi, berumur pendek | Volume rendah, berumur panjang |
Ikhtisar CAS
Memperkenalkan Blog CAS
Video Instruksi CAS
Repo CAS GitHub