Функция ImpersonateNamedPipeClient (namedpipeapi.h)
Функция ImpersonateNamedPipeClient олицетворяет клиентское приложение именованного канала.
Синтаксис
BOOL ImpersonateNamedPipeClient(
[in] HANDLE hNamedPipe
);
Параметры
[in] hNamedPipe
Дескриптор именованного канала.
Возвращаемое значение
Если функция выполняется успешно, возвращается ненулевое значение.
Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Комментарии
Функция ImpersonateNamedPipeClient позволяет серверу в именованном канале олицетворять конец клиента. При вызове этой функции файловая система именованного канала изменяет поток вызывающего процесса , чтобы начать олицетворение контекста безопасности последнего сообщения, прочитанного из канала. Только серверная часть канала может вызывать эту функцию.
Сервер может вызывать функцию RevertToSelf после завершения олицетворения.
- Запрошенный уровень олицетворения маркера меньше, чем SecurityImpersonation, например SecurityIdentification или SecurityAnonymous.
- Вызывающий объект имеет привилегию SeImpersonatePrivilege .
- Процесс (или другой процесс в сеансе входа в вызывающий объект) создал маркер, используя явные учетные данные с помощью функции LogonUser или LsaLogonUser .
- Удостоверение, прошедшее проверку подлинности, совпадает с вызывающим.
Примеры
Пример использования этой функции см. в разделе Проверка клиентского доступа с помощью списков управления доступом.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | namedpipeapi.h |
Библиотека | Advapi32.lib |
DLL | Advapi32.dll |