Функция SecMakeSPNEx (ntifs.h)
SecMakeSPNEx создает строку имени поставщика услуг, которую можно использовать при взаимодействии с определенными поставщиками служб безопасности.
Синтаксис
KSECDDDECLSPEC NTSTATUS SecMakeSPNEx(
[in] IN PUNICODE_STRING ServiceClass,
[in] IN PUNICODE_STRING ServiceName,
[in] IN PUNICODE_STRING InstanceName,
[in, optional] IN USHORT InstancePort,
[in, optional] IN PUNICODE_STRING Referrer,
[in, optional] IN PUNICODE_STRING TargetInfo,
[in, out] IN OUT PUNICODE_STRING Spn,
[out, optional] OUT PULONG Length,
[in] IN BOOLEAN Allocate
);
Параметры
[in] ServiceClass
Указатель на строку Юникода, указывающую класс службы для поставщика службы безопасности.
[in] ServiceName
Указатель на строку Юникода, указывающую имя службы для поставщика служб безопасности.
[in] InstanceName
Указатель на необязательную строку Юникода, указывающую имя экземпляра для подключения к поставщику службы безопасности.
[in, optional] InstancePort
Номер порта для экземпляра службы. Используйте 0 для порта по умолчанию. Если этот параметр равен нулю, имя субъекта-службы не содержит номер порта.
[in, optional] Referrer
Указатель на константную строку, завершающуюся null, которая указывает DNS-имя узла, который дал ссылку на IP-адрес. Этот параметр игнорируется, если только параметр ServiceName не указывает IP-адрес.
[in, optional] TargetInfo
Указатель на строку, завершающуюся значением NULL, которая указывает целевой объект контекста.
[in, out] Spn
Указатель на строку Юникода для хранения строки имени поставщика службы безопасности, созданной этой функцией.
[out, optional] Length
Указатель на ULONG, получающий фактическую длину созданного имени субъекта-службы, включая завершающий символ NULL.
[in] Allocate
Логическая переменная, указывающая, должна ли эта функция выделять память для хранения строки Юникода spn . Если этот параметр имеет значение true, память для spn будет выделена из страничного пула.
Возвращаемое значение
SecMakeSPNEx возвращает STATUS_SUCCESS при успешном выполнении или один из следующих кодов ошибок при сбое.
Код возврата | Описание |
---|---|
STATUS_BUFFER_OVERFLOW | Для параметра Allocate задано значение false, и произошло одно из следующих условий: (1) Параметр Spn был указателем NULL. (2) Максимальная длина строкового параметра Spn Юникода была слишком мала. |
STATUS_INVALID_PARAMETER | Общая длина параметра Spn превышает 65535 байт. |
STATUS_NO_MEMORY | Параметру Allocate присвоено значение true, но запрос на выделение памяти завершился сбоем. |
Комментарии
SecMakeSPNEx — это расширенная версия SecMakeSPN.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Эта функция используется только в Windows XP |
Целевая платформа | Универсальное |
Верхняя часть | ntifs.h (включая Ntifs.h, FltKernel.h) |
Библиотека | Ksecdd.lib |
IRQL | <= APC_LEVEL |