Namespace Objek
Namespace objek melindungi objek bernama dari akses yang tidak sah. Membuat namespace privat memungkinkan aplikasi dan layanan untuk membangun lingkungan yang lebih aman.
Proses dapat membuat namespace privat menggunakan fungsiCreatePrivateNamespace. Fungsi ini mengharuskan Anda menentukan batas yang menentukan bagaimana objek di namespace harus diisolasi. Pemanggil harus berada dalam batas yang ditentukan agar operasi pembuatan berhasil. Untuk menentukan batas, gunakan fungsiCreateBoundaryDescriptor danAddSIDToBoundaryDescriptor.
Parameter lpAliasPrefixCreatePrivateNamespace berfungsi sebagai nama namespace layanan. Setiap namespace diidentifikasi secara unik dengan nama dan batasannya. Sistem mendukung beberapa namespace privat dengan nama yang sama, selama menentukan batas yang berbeda.
Misalkan proses meminta pembuatan namespace layanan, NS1, yang menentukan batas yang berisi dua elemen: SID administrator dan nomor sesi saat ini. Namespace dibuat jika proses berjalan di bawah akun Administrator dalam sesi yang ditentukan. Proses lain dapat mengakses namespace layanan ini menggunakan fungsiOpenPrivateNamespace. Nama dan batas yang ditentukan harus cocok jika proses ini adalah membuka namespace yang dibuat oleh proses pertama. Perhatikan bahwa proses dapat membuka namespace yang ada meskipun tidak berada dalam batas kecuali pembuat membatasi akses ke namespace layanan menggunakan parameter lpPrivateNamespaceAttributes.
Objek yang dibuat di namespace layanan ini memiliki nama yang merupakan awalan formulir \nama objek. Awalan adalah nama namespace yang ditentukan oleh parameter lpAliasPrefix dari CreatePrivateNamespace. Misalnya, untuk membuat objek peristiwa bernama MyEvent di namespace NS1, panggil fungsiCreateEvent dengan parameter lpName diatur ke NS1\MyEvent.
Proses yang membuat namespace layanan dapat menggunakan fungsiClosePrivateNamespace untuk menutup handel ke namespace. Handel juga ditutup ketika proses yang membuat namespace layanan berakhir. Setelah handel namespace ditutup, panggilan berikutnya ke OpenPrivateNamespace gagal, tetapi semua operasi pada objek di namespace layanan berhasil.
Topik terkait