Создание оконной станции и рабочего стола

Система автоматически создает станцию интерактивного окна. Когда интерактивный пользователь входит в систему, система связывает станцию интерактивного окна с сеансом входа пользователя. Система также создает рабочий стол ввода по умолчанию для интерактивной оконной станции (Winsta0\default). Процессы, запущенные вошедшего в систему пользователя, связаны с рабочим столом Winsta0\default.

Процесс может использовать функцию CreateWindowStation для создания новой оконной станции, а функцию CreateDesktop или CreateDesktopEx — для создания нового рабочего стола. Количество рабочих столов, которые можно создать, ограничено размером кучи системного рабочего стола. Дополнительные сведения см. в разделе CreateDesktop.

Когда неинтерактивный процесс, такой как приложение службы, пытается подключиться к оконной станции и для сеанса входа в процесс не существует оконной станции, система пытается создать оконную станцию и рабочий стол для сеанса. Имя созданной оконной станции основано на идентификаторе сеанса входа, а рабочий стол называется по умолчанию, как описано здесь:

  • Если служба выполняется в контексте безопасности учетной записи LocalSystem, но не включает атрибут SERVICE_INTERACTIVE_PROCESS, она использует следующую оконную станцию и рабочий стол: Service-0x0-3e7$\default. Эта оконная станция не является интерактивной, поэтому служба не может отобразить пользовательский интерфейс. Кроме того, процессы, созданные службой, не могут отображать пользовательский интерфейс.
  • Если служба работает в контексте безопасности учетной записи пользователя, имя оконной станции основано на идентификаторе безопасности пользователя Service-0xZ1-Z2$, где Z1 — это высокая часть идентификатора безопасности входа, а Z2 — низкая часть идентификатора безопасности входа. Так как идентификатор безопасности уникален для сеанса входа, две службы, работающие в одном контексте безопасности, получают уникальные оконные станции. Эти оконные станции не являются интерактивными.

Список управления доступом на уровне пользователей (DACL) для оконной станции и рабочего стола включает следующие права доступа для учетной записи пользователя службы:

Window Station:

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

Настольные ПК:

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