Membuat dan Memelihara Titik Koneksi Layanan
Saat menerbitkan dengan SCP, ingatlah bahwa scp harus berisi data saat ini tentang instans layanan. Jika tidak, klien yang mengikat SCP mengambil data yang kedaluarsa. Penginstal layanan Anda, yang membuat SCP, menentukan nilai awal untuk atribut SCP. Kemudian, ketika instans layanan dimulai, instans layanan harus menemukan SCP dan memperbarui nilai atribut, jika perlu. Dengan cara ini, klien dipastikan sebagai data terbaru.
Setelah membuat SCP, penginstal layanan Anda melakukan dua langkah tambahan yang memungkinkan layanan Anda memperbarui SCP:
- Atur ACE dalam deskriptor keamanan objek SCP untuk memungkinkan layanan memodifikasi atribut SCP pada waktu proses. Untuk informasi selengkapnya dan contoh kode, lihat Mengaktifkan Akun Layanan untuk Mengakses Properti SCP.
- Cache objectGUID SCP di registri pada komputer host layanan. Layanan mengambil GUID yang di-cache untuk mengikat SCP untuk memverifikasi dan memperbarui atributnya.
Alat penginstal layanan menyimpan objectGUID SCP daripada DN-nya. ObjectGUID tidak pernah berubah, terlepas dari apakah SCP dipindahkan atau diganti namanya. DN dapat berubah jika administrator memindahkan atau mengganti nama SCP. Misalnya, jika Anda membuat SCP sebagai anak dari objek komputer, nama khusus SCP berubah jika komputer diganti namanya atau dipindahkan ke domain atau unit organisasi yang berbeda.
Ketika alat penginstal layanan membuat SCP, penginstal layanan harus membaca objectGUID objek yang baru dibuat dan menyimpannya di registri komputer host layanan. Gunakan metode IADs::get_GUID untuk mendapatkan nilai objectGUID dalam format string yang cocok untuk pengikatan. Cache string GUID sebagai nilai di bawah kunci registri berikut.
HKEY_LOCAL_MACHINE
vendor name
product name
Di mana "nama vendor" dan "nama produk" mengidentifikasi vendor dan produk.
Ketika layanan dimulai, layanan mengambil string GUID yang di-cache dari registri dan menggunakannya untuk mengikat scp. Layanan membaca atribut SCP penting dan membandingkannya dengan nilai saat ini. Jika nilai SCP kedaluarsa, layanan akan memperbaruinya. Nilai yang mungkin perlu diperbarui layanan mencakup kata kunci, serviceBindingInformation, serviceDNSName, dan serviceDNSNameType.
Contoh