Bagikan melalui


Pengguna Interaktif

Pengguna interaktif adalah pengguna yang saat ini masuk ke komputer tempat server COM berjalan. Jika identitas diatur menjadi pengguna interaktif, semua klien menggunakan instans server yang sama jika server mendaftarkan pabrik kelasnya sebagai multi-penggunaan. Jika tidak ada pengguna yang masuk, server tidak akan berjalan. Jika server memiliki antarmuka pengguna grafis (GUI) yang perlu dilihat klien, Anda harus menggunakan pengguna interaktif untuk identitas server. Namun, memilih identitas ini membawa beberapa risiko keamanan karena server berjalan di bawah identitas pengguna yang masuk tanpa pengetahuan atau persetujuan pengguna yang masuk. Selain itu, aplikasi layanan tidak dapat menampilkan antarmuka pengguna. Untuk informasi selengkapnya, lihat Interactive Services.

Jika server COM dikonfigurasi untuk berjalan sebagai pengguna interaktif, di lingkungan layanan terminal, server akan diluncurkan dalam sesi interaktif yang cocok dengan identitas pengguna klien. Namun, aplikasi klien dapat menggunakan moniker sesi untuk mereferensikan objek yang disediakan oleh server dalam sesi yang tidak cocok dengan identitas klien. Ketika ini digunakan, aplikasi klien dapat menentukan sesi apa pun, dalam hal ini server akan berjalan sebagai pengguna yang memiliki sesi, bukan pengguna peluncuran. Izin akses default dalam skenario ini tidak akan memungkinkan pengguna peluncuran untuk memanggil metode di server. Namun, risiko keamanan berikut tetap:

  • Jika server COM mengekspos antarmuka yang tidak dikontrol oleh COM, seperti port TCP, pipa bernama, port LPC, bagian memori bersama, dan sebagainya, ini dapat digunakan oleh pengguna peluncuran untuk memengaruhi server. Objek COM yang dikonfigurasi untuk berjalan sebagai pengguna interaktif harus mengurangi permukaan serangan ini sebanyak mungkin.
  • Objek COM bebas untuk mengatur izin akses mereka sendiri. Jika objek mengatur izin akses, baik dalam pendaftaran AppID-nya atau dengan memanggil CoInitializeSecurity, untuk memungkinkan peluncuran akses pengguna, pengguna akan dapat meluncurkan server untuk berjalan sebagai pengguna lain, lalu mengakses objek.

Identitas Aplikasi

Meluncurkan Pengguna

Identitas Layanan

Pengguna yang Ditentukan