Stasiun Jendela dan Pembuatan Desktop

Sistem secara otomatis membuat stasiun jendela interaktif. Saat pengguna interaktif masuk, sistem mengaitkan stasiun jendela interaktif dengan sesi masuk pengguna. Sistem ini juga membuat desktop input default untuk stasiun jendela interaktif (Winsta0\default). Proses yang dimulai oleh pengguna yang masuk dikaitkan dengan desktop Winsta0\default.

Proses dapat menggunakan fungsi CreateWindowStation untuk membuat stasiun jendela baru, dan fungsi CreateDesktop atau CreateDesktopEx untuk membuat desktop baru. Jumlah desktop yang dapat dibuat dibatasi oleh ukuran timbunan desktop sistem. Untuk informasi selengkapnya, lihat CreateDesktop.

Ketika proses noninteraktif seperti aplikasi layanan mencoba terhubung ke stasiun jendela dan tidak ada stasiun jendela yang ada untuk sesi masuk proses, sistem mencoba membuat stasiun jendela dan desktop untuk sesi tersebut. Nama stasiun jendela yang dibuat didasarkan pada pengidentifikasi sesi masuk, dan desktop diberi nama default, seperti yang dijelaskan di sini:

  • Jika layanan berjalan dalam konteks keamanan akun LocalSystem tetapi tidak menyertakan atribut SERVICE_INTERACTIVE_PROCESS, layanan menggunakan stasiun jendela dan desktop berikut: Service-0x0-3e7$\default. Stasiun jendela ini tidak interaktif, sehingga layanan tidak dapat menampilkan antarmuka pengguna. Selain itu, proses yang dibuat oleh layanan tidak dapat menampilkan antarmuka pengguna.
  • Jika layanan berjalan dalam konteks keamanan akun pengguna, nama stasiun jendela didasarkan pada pengguna SID Service-0xZ1-Z2$, di mana Z1 adalah bagian tinggi dari SID masuk dan Z2 adalah bagian rendah dari SID masuk. Karena SID unik untuk sesi masuk, dua layanan yang berjalan dalam konteks keamanan yang sama menerima stasiun jendela yang unik. Stasiun jendela ini tidak interaktif.

Daftar kontrol akses diskresi (DACL) untuk stasiun jendela dan desktop mencakup hak akses berikut untuk akun pengguna layanan:

Stasiun Jendela:

WINSTA\_ACCESSCLIPBOARD WINSTA\_ACCESSGLOBALATOMS WINSTA\_CREATEDESKTOP WINSTA\_EXITWINDOWS WINSTA\_READATTRIBUTES STANDARD\_RIGHTS\_REQUIRED

Desktop:

DESKTOP\_CREATEMENU DESKTOP\_CREATEWINDOW DESKTOP\_ENUMERATE DESKTOP\_HOOKCONTROL DESKTOP\_READOBJECTS DESKTOP\_WRITEOBJECTS STANDARD\_RIGHTS\_REQUIRED