Mencadangkan Layanan Sertifikat
Berikut ini adalah skenario yang menunjukkan bagaimana Anda dapat menggunakan fungsi pencadangan Layanan Sertifikat untuk mencadangkan database Layanan Sertifikat dan file terkaitnya.
- Muat pustaka Certadm.dll ke dalam memori (dengan memanggil LoadLibrary).
- Ambil alamat masing-masing fungsi yang diperlukan dalam Certadm.dll (dengan cara GetProcAddress). Gunakan alamat ini saat memanggil fungsi di langkah-langkah yang tersisa.
- Panggil CertSrvIsServerOnline untuk menentukan apakah Layanan Sertifikat sedang online. Layanan Sertifikat harus online agar operasi pencadangan berhasil.
- Panggil CertSrvBackupPrepare untuk memulai sesi pencadangan. Handel konteks pencadangan Layanan Sertifikat yang dihasilkan akan digunakan oleh banyak fungsi cadangan lainnya.
- Panggil CertSrvRestoreGetDatabaseLocations untuk menentukan peta pemulihan. Peta pemulihan berisi jalur yang akan digunakan saat memulihkan cadangan. Simpan informasi yang diambil oleh CertSrvRestoreGetDatabaseLocations ke lokasi khusus aplikasi.
- Panggil CertSrvBackupGetDatabaseNames untuk menentukan nama file database yang akan dicadangkan. Untuk masing-masing file ini, jalankan langkah 7 hingga 9.
- Panggil CertSrvBackupOpenFile untuk membuka file untuk pencadangan.
- Panggil CertSrvBackupRead untuk membaca sebagian byte dari file, lalu panggil rutinitas khusus aplikasi untuk menyimpan byte pada media cadangan. Ulangi langkah ini hingga semua byte dalam file dicadangkan.
- Panggil CertSrvBackupClose untuk menutup file.
- Panggil CertSrvBackupGetBackupLogs untuk menentukan nama file log yang akan dicadangkan. Untuk masing-masing file ini, jalankan langkah 7 hingga 9.
- Panggil CertSrvBackupTruncateLogs untuk memotong file log yang dicadangkan di langkah 6 dan 10. Langkah ini bersifat opsional; namun, panggil CertSrvBackupTruncateLogs hanya jika semua file yang dikembalikan oleh CertSrvBackupGetDatabaseNames dan CertSrvBackupGetBackupLogs telah dicadangkan (jika tidak, operasi pemulihan akan gagal). Lihat halaman referensi CertSrvBackupTruncateLogs untuk detailnya.
- Panggil CertSrvBackupGetDynamicFileList untuk menentukan nama file non-database yang akan dicadangkan. File-file ini hanya diidentifikasi oleh fungsi, dan harus dicadangkan dengan beberapa cara lain.
- Cadangkan file dinamis yang diidentifikasi pada langkah 12, menggunakan rutinitas yang terpisah dari Certadm.dll.
- Panggil CertSrvBackupEnd untuk mengakhiri sesi pencadangan.
- Panggil CertSrvBackupFree sesuai kebutuhan untuk merilis buffer yang dialokasikan oleh fungsi cadangan Layanan Sertifikat tertentu. Panggilan ke CertSrvBackupGetBackupLogs, CertSrvBackupGetDatabaseNames, dan CertSrvBackupGetDynamicFileList akan mengalokasikan buffer yang dapat dikosongkan dengan panggilan ke CertSrvBackupFree.
- Rilis sumber daya Certadm.dll dengan memanggil FreeLibrary.
Untuk informasi tentang hak istimewa yang diperlukan untuk mencadangkan database Layanan Sertifikat dan file terkait, lihat Mengatur Hak Istimewa Pencadangan dan Pemulihan.