Record CAA Membatasi Otoritas Penerbit Sertifikat
Certificate authority dapat memvalidasi kontrol atas sebuah domain dan tetap menghadapi pertanyaan kebijakan yang terpisah: apakah CA tersebut diizinkan oleh operator domain untuk menerbitkan sertifikat bagi nama itu? Certification Authority Authorization, atau CAA, menyediakan tipe record DNS untuk menyatakan batas tersebut.
CAA bekerja sebelum penerbitan sertifikat. CA publik yang berpartisipasi memeriksa kebijakan DNS CAA yang berlaku dan mengevaluasi apakah identitas issuer miliknya diizinkan. Mekanisme ini tidak membuat sertifikat menjadi tepercaya, mencabut sertifikat yang sudah ada, atau memerintahkan browser menolak sertifikat setelah diterbitkan. CAA mempersempit kumpulan issuer yang semestinya membuat sertifikat baru untuk domain tersebut.
Record CAA membawa flags, tag, dan value
CAA resource record memiliki tiga field logis: flags, property tag, dan property value. Kebijakan sederhana dapat mengizinkan satu CA melalui property issue:
example.com. CAA 0 issue "ca.example"Value tersebut mengidentifikasi CA sesuai identifier CAA yang didokumentasikan oleh issuer. Nilainya bukan URL generik dan tidak semestinya ditebak dari nama perusahaan.
Beberapa record CAA dapat berada pada owner name yang sama. Maknanya ditentukan oleh property tag dan value, bukan urutan record DNS.
Flag octet juga memuat issuer-critical bit. Ketika bit tersebut aktif pada property dengan tag yang tidak dikenali CA, CA tidak boleh melanjutkan proses seolah property yang tidak dikenal itu aman diabaikan. Mekanisme ini memungkinkan property CAA di masa depan menyatakan bahwa dukungan issuer diperlukan untuk pemrosesan yang aman.
issue dan issuewild mencakup kasus penerbitan yang berbeda
Property issue mengizinkan penerbitan sertifikat untuk domain sesuai aturan pemrosesan CAA. Property issuewild menyediakan jalur otorisasi terpisah untuk sertifikat yang memuat wildcard DNS identifier.
Contohnya:
example.com. CAA 0 issue "ca-a.example"
example.com. CAA 0 issuewild "ca-b.example"Kebijakan ini dapat mengarahkan penerbitan biasa dan penerbitan wildcard ke CA yang berbeda.
Issuer value kosong dapat secara eksplisit menolak kelas penerbitan terkait:
example.com. CAA 0 issue ";"Bentuk tersebut berguna ketika operator domain ingin kebijakan CAA tidak mengizinkan CA mana pun untuk kelas penerbitan yang terkait. Tool operasional sebaiknya mempertahankan sintaks tepat yang diharapkan spesifikasi CAA dan CA yang dipilih, bukan menulis ulang value secara sembarang.
Pencarian kebijakan dapat mewarisi parent domain
Pemrosesan CAA tidak mengharuskan setiap hostname menerbitkan record sendiri. Prosedur lookup dapat bergerak naik melalui hierarki nama DNS sampai menemukan kumpulan record CAA yang berlaku, dengan tetap mengikuti aturan protocol untuk pemrosesan alias.
Karena itu, kebijakan pada parent name dapat berlaku untuk banyak turunannya:
example.com
├── api.example.com
├── shop.example.com
└── static.example.comJika descendant tidak memiliki kebijakan CAA yang lebih spesifik dan berlaku, kebijakan parent dapat mengatur penerbitan untuk nama tersebut. Descendant yang menerbitkan kumpulan record CAA sendiri mengubah boundary kebijakan untuk nama itu.
Pewarisan ini memiliki konsekuensi operasional: menambahkan record CAA pada satu subdomain bukan sekadar menambah isi kumpulan milik parent. Kumpulan record efektif pada titik lookup yang relevan adalah yang menentukan. Perubahan DNS karena itu perlu diperiksa terhadap seluruh hierarki nama yang digunakan dalam permintaan sertifikat.
CAA membatasi issuer, bukan validasi kontrol domain
CAA dan validasi kontrol domain menangani persoalan berbeda. CA tetap memerlukan validasi yang diwajibkan untuk sertifikat yang hendak diterbitkan. CAA menambahkan pemeriksaan otorisasi terhadap issuer.
Secara konseptual:
validasi kontrol domain -> apakah pemohon mengontrol identifier?
evaluasi CAA -> apakah CA ini boleh menerbitkan untuk identifier?
kebijakan sertifikat -> apakah syarat penerbitan lain terpenuhi?Keberhasilan challenge validasi DNS atau HTTP tidak menghapus kebijakan CAA yang restriktif. Sebaliknya, entri CAA yang mengizinkan issuer tidak membuktikan bahwa pemohon sertifikat mengontrol domain.
Pemisahan pemeriksaan ini penting saat menganalisis kegagalan. Penerbitan dapat gagal karena validasi, kebijakan CAA, kebijakan account, rate control, atau persyaratan CA lain; mengubah CAA tepat dilakukan hanya ketika CAA memang menjadi boundary yang gagal.
CAA bukan mekanisme revocation sertifikat
Perubahan record CAA memengaruhi keputusan penerbitan berikutnya. Perubahan tersebut tidak membatalkan sertifikat yang sudah diterbitkan.
Misalnya, sebuah domain berpindah dari satu CA ke CA lain:
sebelum: CAA 0 issue "ca-a.example"
sesudah: CAA 0 issue "ca-b.example"Sertifikat yang sebelumnya diterbitkan CA A tidak menjadi revoked hanya karena kebijakan DNS berubah. Validitas dan status revocation sertifikat tersebut tetap diatur mekanisme lain dalam ekosistem sertifikat.
Perbedaan ini penting selama migrasi CA. Operator perlu mengelola kebijakan penerbitan masa depan sekaligus lifecycle sertifikat yang sudah digunakan.
Integritas DNS tetap menjadi bagian dari security boundary
Kebijakan CAA diambil melalui DNS, sehingga integritas jalur DNS berpengaruh. CAA sendiri tidak mengautentikasi data DNS secara kriptografis. DNSSEC dapat menyediakan data DNS terautentikasi ketika zone, resolver path, dan perilaku validasi dikonfigurasi secara sesuai.
Tanpa DNSSEC sekalipun, CAA tetap menetapkan kebijakan penerbitan yang diharapkan diproses oleh CA yang patuh. Namun CAA tidak tepat digambarkan sebagai perlindungan terhadap setiap penyerang DNS. Jika penyerang dapat mengubah jawaban DNS yang diandalkan CA, asumsi keamanan untuk pengambilan kebijakan telah berubah.
Operator juga perlu memperhitungkan perilaku DNS biasa seperti TTL, delegation, alias, dan propagation saat mengubah CAA. Edit kebijakan tepat sebelum renewal sertifikat dapat menghasilkan observasi berbeda antar-resolver sampai data cache kedaluwarsa.
iodef dipakai untuk pelaporan, bukan otorisasi issuer
CAA juga mendefinisikan property iodef untuk pelaporan permintaan sertifikat atau pelanggaran kebijakan melalui mekanisme kontak yang ditentukan. Property ini tidak mengizinkan CA menerbitkan sertifikat.
Satu kumpulan record karena itu dapat memuat property otorisasi dan pelaporan:
example.com. CAA 0 issue "ca.example"
example.com. CAA 0 iodef "mailto:security@example.com"Baris pertama berperan dalam otorisasi issuer. Baris kedua menyediakan tujuan pelaporan sesuai aturan CAA yang berlaku.
Alamat pelaporan perlu diperlakukan sebagai input operasional. Publikasinya tidak menjamin setiap kejadian akan menghasilkan pesan dan tidak menggantikan inventaris sertifikat atau monitoring Certificate Transparency.
CAA dan Certificate Transparency bekerja pada tahap berbeda
CAA merupakan kebijakan preventif pada saat penerbitan. Certificate Transparency mencatat bukti yang berkaitan dengan penerbitan sertifikat pada log publik. Keduanya saling melengkapi.
CAA -> membatasi issuer yang diizinkan sebelum penerbitan
CT -> mengekspos penerbitan yang tercatat untuk observasi dan auditKebijakan CAA yang restriktif dapat mempersempit kumpulan CA yang diizinkan menerbitkan, sedangkan monitoring CT dapat menampilkan sertifikat yang muncul dalam log publik. Keduanya tidak menggantikan certificate path validation, penanganan revocation, atau keamanan account CA.
Pemisahan ini juga memberi operator model respons yang lebih jelas. CAA menyatakan kebijakan issuer yang diinginkan; observasi CT dapat dibandingkan dengan kebijakan tersebut. Sertifikat yang tidak diperkirakan tetap perlu diinvestigasi karena record CAA saja tidak menetapkan penyebab penerbitannya.
Kebijakan penerbitan memerlukan pemeliharaan
CAA cukup kecil sehingga mudah dianggap sebagai record DNS yang dipasang sekali lalu dibiarkan. Operasi sertifikat tetap berubah. Tim mengganti CA, menambah sertifikat wildcard, mendelegasikan layanan, memakai managed platform, dan menghentikan account penerbitan lama.
Kebijakan CAA yang usang dapat menghambat renewal yang sah. Kebijakan yang terlalu luas dapat tetap mengizinkan issuer setelah kebutuhan operasionalnya berakhir. Perubahan sebaiknya terkait dengan inventaris sertifikat dan kepemilikan proses renewal agar kebijakan DNS mengikuti arsitektur penerbitan yang sebenarnya.
Boundary yang berguna bersifat spesifik: CAA menyatakan issuer yang diizinkan membuat sertifikat baru untuk nama DNS sesuai aturan pemrosesan protocol. CAA tidak menggantikan bagian PKI lainnya. Bersama administrasi DNS yang disiplin, inventaris sertifikat, dan monitoring penerbitan, CAA mengubah pilihan issuer dari asumsi implisit menjadi kebijakan domain yang eksplisit.