Протокол взаимодействия процесса Winlogon и библиотеки GINA
Протокол взаимодействия процесса Winlogon и библиотеки GINA
Сразу после загрузки Winlogon инициализирует GINA, вызывая последовательно ее функции WlxNegotiate и Wlxlnitialize. Рабочая станция переходит в состояние «Пользователь не вошел в систему».
Когда пользователь собирается войти в систему с помощью комбинации клавиш Ctrl-Alt-Del, Winlogon вызывает функцию WlxLoggedOutSas библиотеки GINA. WlxLoggedOutSas осуществляет попытку входа в систему, вызывая системную функцию LogonUser. В зависимости от информации, введенной пользователем, GINA возвращает процессу Winlogon одно из следующих значений:
WLX_SAS_ACTION_LOGON - пользователь вошел в систему. Получив это значение, Winlogon вызывает функцию WlxActivateUserShell библиотеки GINA, которая загружает индивидуальную оболочку пользователя;
WLX_SAS_ACTION_NONE - пользователь не смог войти в систему. Состояние системы не изменяется;
WLX_SAS_ACTION_SHUTDOWN - пользователь потребовал завершить работу системы. Эта возможность может быть отключена (см. выше). Получив данное возвращаемое значение, Winlogon последовательно вызывает функции библиотеки GINA WlxLogojfn WlxShutdown.
Если пользователь нажал комбинацию Ctrl-Alt-Del, уже войдя в систему, Winlogon вызывает функцию WlxLoggedOnSas. GINA выводит на экран диалоговое окно и, в зависимости от решения пользователя, выполняет следующие действия:
если пользователь решил не предпринимать никаких действий, GINA возвращает в Winlogon значение WLX_SAS_ACTION_NONE. Winlogon возвращает систему в то же состояние, в котором она была до нажатия комбинации Ctrl-Alt-Del;
если пользователь желает просмотреть список активных процессов, GINA возвращает значение WLX_SAS_ACTION_TASKLIST. Winlogon возвращает систему в состояние) в котором она была до нажатия комбинации Ctrl-Alt-Del и активизирует процесс Task Manager,
если пользователь желает заблокировать рабочую станцию, GINA возвращает значение WLX_SAS_ACTION_LOCK_WKSTA. Winlogon блокирует систему;
если пользователь желает выйти из системы, GINA возвращает значение WLX_SAS_ACTION_LOGOFF.
Содержание Назад Вперед