Función SecMakeSPNEx2 (ntifs.h)
secMakeSPNEx2 crea una cadena de nombre del proveedor de servicios que se puede usar cuando se comunica con proveedores de servicios de seguridad específicos.
Sintaxis
KSECDDDECLSPEC NTSTATUS SecMakeSPNEx2(
[in] IN PUNICODE_STRING ServiceClass,
[in] IN PUNICODE_STRING ServiceName,
[in, optional] IN PUNICODE_STRING InstanceName,
[in, optional] IN USHORT InstancePort,
[in, optional] IN PUNICODE_STRING Referrer,
[in, optional] IN PUNICODE_STRING InTargetInfo,
[in, out] IN OUT PUNICODE_STRING Spn,
[out, optional] OUT PULONG TotalSize,
[in] IN BOOLEAN Allocate,
[in] IN BOOLEAN IsTargetInfoMarshaled
);
Parámetros
[in] ServiceClass
Puntero a una cadena Unicode que especifica la clase de servicio para el proveedor de servicios de seguridad.
[in] ServiceName
Puntero a una cadena Unicode que especifica el nombre del servicio para el proveedor de servicios de seguridad.
[in, optional] InstanceName
Puntero a una cadena Unicode opcional que especifica el nombre de instancia que se usa para conectarse con el proveedor de servicios de seguridad.
[in, optional] InstancePort
Número de puerto de una instancia del servicio. Use 0 para el puerto predeterminado. Si este parámetro es cero, el SPN no incluye un número de puerto.
[in, optional] Referrer
Puntero a una cadena terminada en NULL constante que especifica el nombre DNS del host que dio una referencia de dirección IP. Este parámetro se omite a menos que el parámetro ServiceName especifique una dirección IP.
[in, optional] InTargetInfo
Puntero a una cadena terminada en null que indica el destino del contexto.
[in, out] Spn
Puntero a una cadena Unicode que recibe la cadena de nombre del proveedor de servicios de seguridad creada por esta función.
[out, optional] TotalSize
Puntero a un ULONG que recibe la longitud real del SPN creado, incluido el carácter nulo de terminación.
[in] Allocate
Variable booleana que indica si esta función debe asignar la memoria que se usa para almacenar el Cadena Spn Unicode. Si este parámetro es TRUE, la memoria de spn se asignará desde el grupo paginado.
[in] IsTargetInfoMarshaled
Variable booleana que indica que el autor de la llamada proporcionó una estructura de InTargetInfo serializado. Si isTargetInfoMarshaled es TRUE, InTargetInfo->Buffer apunta a una representación de cadena de la estructura CREDENTIAL_TARGET_INFORMATION tal como devuelve la función CredMarshalTargetInfo.
Valor devuelto
secMakeSPNEx2 devuelve STATUS_SUCCESS si se ejecuta correctamente o uno de los siguientes códigos de error en caso de error.
Código devuelto | Descripción |
---|---|
STATUS_BUFFER_OVERFLOW | El parámetro Allocate se estableció en false y se produjo una de las siguientes condiciones: (1) El parámetro Spn era un puntero NULL. (2) La longitud máxima de la Spn parámetro de cadena Unicode era demasiado pequeña. |
STATUS_INVALID_PARAMETER | Una longitud total del parámetro Spn supera los 65535 bytes. |
STATUS_NO_MEMORY | El parámetro Asignar se estableció en true, pero se produjo un error en la solicitud de asignación de memoria. |
Observaciones
secMakeSPNEx2 es una versión mejorada de SecMakeSPNEx.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows Vista |
servidor mínimo admitido | Windows Server 2008 |
de la plataforma de destino de |
Universal |
encabezado de |
ntifs.h (incluya Ntifs.h, FltKernel.h) |
biblioteca de |
Ksecdd.lib |
irQL | <= APC_LEVEL |