класс Win32_LogonSession
Класс WMI Win32_LogonSession (см . раздел Получение класса WMI) описывает сеанс входа или сеансы, связанные с пользователем, вошедшего в компьютерную систему под управлением Windows.
Следующий синтаксис упрощен из кода MOF и включает все унаследованные свойства. Свойства и методы находятся в алфавитном порядке, а не в порядке MOF.
Синтаксис
[Dynamic, Provider("CIMWin32"), UUID("{9083C21E-7D58-4e0e-BC30-0BC8922AFB8B}"), AMENDMENT]
class Win32_LogonSession : Win32_Session
{
string Caption;
string Description;
datetime InstallDate;
string Name;
string Status;
datetime StartTime;
string AuthenticationPackage;
string LogonId;
uint32 LogonType;
};
Члены
Класс Win32_LogonSession имеет следующие типы членов:
Элемент Property
Класс Win32_LogonSession имеет следующие свойства.
-
AuthenticationPackage
-
-
Тип данных: string
-
Тип доступа: только для чтения
Имя подсистемы, используемой для проверки подлинности сеанса входа.
-
-
Caption
-
-
Тип данных: string
-
Тип доступа: только для чтения
-
Квалификаторы: MaxLen (64), DisplayName ("Caption")
Краткое текстовое описание объекта.
Это свойство наследуется от CIM_ManagedSystemElement.
-
-
Описание
-
-
Тип данных: string
-
Тип доступа: только для чтения
-
Квалификаторы: DisplayName ("Описание")
Текстовое описание объекта.
Это свойство наследуется от CIM_ManagedSystemElement.
-
-
InstallDate
-
-
Тип данных: datetime
-
Тип доступа: только для чтения
-
Квалификаторы: MappingStrings ("MIF. DMTF| ComponentID|001.5"), DisplayName ("Дата установки")
Указывает, когда был установлен объект . Отсутствие значения не означает, что объект не установлен.
Это свойство наследуется от CIM_ManagedSystemElement.
-
-
LogonId
-
-
Тип данных: string
-
Тип доступа: только для чтения
-
Квалификаторы: ключ
Идентификатор, назначенный сеансу входа.
-
-
LogonType
-
-
Тип данных: uint32
-
Тип доступа: только для чтения
Числовое значение, указывающее тип сеанса входа.
-
-
0
-
Используется только системной учетной записью.
-
Интерактивный (2)
-
Предназначено для пользователей, которые в интерактивном режиме используют компьютер, например для пользователя, вошедшего в систему с помощью сервера терминалов, удаленной оболочки или аналогичного процесса.
-
Сеть (3)
-
Предназначено для высокопроизводительных серверов для проверки подлинности паролей с четким текстом. LogonUser не кэширует учетные данные для этого типа входа.
-
Пакетная служба (4)
-
Предназначено для серверов пакетной службы, где процессы могут выполняться от имени пользователя без его прямого вмешательства; или для серверов с более высокой производительностью, которые обрабатывают множество попыток проверки подлинности в формате ясного текста за раз, например почтовые или веб-серверы. LogonUser не кэширует учетные данные для этого типа входа.
-
Служба (5)
-
Указывает на вход типа службы. Для предоставленной учетной записи необходимо включить привилегии службы.
-
Прокси-сервер (6)
-
Указывает на вход прокси-сервера.
-
Разблокировка (7)
-
Этот тип входа предназначен для ведения журналов DLL GINA для пользователей, которые в интерактивном режиме используют компьютер. Этот тип входа позволяет создать уникальную запись аудита, которая показывает, когда рабочая станция была разблокирована.
-
NetworkCleartext (8)
-
Сохраняет имя и пароль в пакетах проверки подлинности, позволяя серверу устанавливать подключения к другим сетевым серверам при олицетворении клиента. Это позволяет серверу принимать от клиента учетные данные в виде текста, вызывать LogonUser, проверять, может ли пользователь получить доступ к системе по сети, и по-прежнему взаимодействовать с другими серверами.
-
NewCredentials (9)
-
Позволяет вызывающей объекту клонировать текущий маркер и указать новые учетные данные для исходящих подключений. Новый сеанс входа имеет тот же локальный идентификатор, но использует другие учетные данные для других сетевых подключений.
-
RemoteInteractive (10)
-
Сеанс служб терминалов, который является как удаленным, так и интерактивным.
-
CachedInteractive (11)
-
Попытка кэширования учетных данных без доступа к сети.
-
CachedRemoteInteractive (12)
-
То же, что и RemoteInteractive. Используется для внутреннего аудита.
-
CachedUnlock (13)
-
Вход на рабочую станцию.
имя;
-
Тип данных: string
-
Тип доступа: только для чтения
-
Квалификаторы: DisplayName ("Name")
Метка, по которой известен объект. При подклассе это свойство может быть переопределено как ключевое свойство.
Это свойство наследуется от CIM_ManagedSystemElement.
StartTime
-
Тип данных: datetime
-
Тип доступа: только для чтения
Время начала сеанса.
Это свойство наследуется от Win32_Session.
Состояние
-
Тип данных: string
-
Тип доступа: только для чтения
-
Квалификаторы: MaxLen (10), DisplayName ("Status")
Строка, указывающая текущее состояние объекта. Можно определить рабочее и нерабочем состояние. Состояние работы может включать "ОК", "Понижено" и "Сбой предварительного выполнения". "Pred Fail" означает, что элемент работает правильно, но прогнозирует сбой (например, жесткий диск с поддержкой SMART).
Состояние нерабоспособных может включать "Ошибка", "Запуск", "Остановка" и "Служба". "Служба" может применяться во время зеркало повторного изменения размера диска, перезагрузки списка разрешений пользователя или других административных действий. Не все такие работы доступны в сети, но управляемый элемент не является ни "ОК", ни в одном из других состояний.
Это свойство наследуется от CIM_ManagedSystemElement.
В эти значения входят:
ОК ("ОК")
Ошибка ("Ошибка")
Пониженный ("Пониженный")
Unknown ("Unknown")
Pred Fail ("Pred Fail")
Запуск ("Начало")
Остановка ("Остановка")
Служба ("Служба")
Подчеркнуто ("Подчеркнуто")
NonRecover ("NonRecover")
Нет контакта ("Нет контакта")
Lost Comm ("Lost Comm")
Примеры
Пример PowerShell List Logon Session Information (Список сведений о сеансах входа в систему) возвращает сведения о сеансах входа, связанных с пользователем, вошедшего в систему на компьютере.
Следующий пример PowerShell проверяет наличие удаленного сеанса, открытого для указанного пользователя.
$user = "<user name>"
$servers = gci servers.txt
foreach ($server in $servers){
$logons = gwmi win32_loggedonuser -computername $server
foreach ($logon in $logons){
if ($logon.antecedent -match $user){
$logonid = $logon.dependent.split("=")[1]
$session =gwmi win32_logonsession |? {$_.logonid -match $logonid}
if ($session.logontype -eq "10"){
Write-host "You have an active Terminal Server session on server $($server)"
}
}
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows Vista |
Минимальная версия сервера |
Windows Server 2008 |
Пространство имен |
Root\CIMV2 |
MOF |
|
DLL |
|