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 para 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 proporcionó 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 una 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 la cadena Unicode de Spn . Si este parámetro es TRUE, se asignará memoria para Spn desde el grupo paginado.
[in] IsTargetInfoMarshaled
Variable booleana que indica que el autor de la llamada proporcionó una estructura InTargetInfo serializado. Si IsTargetInfoMarshaled es TRUE, InTargetInfo-Buffer> apunta a una representación de cadena de la estructura CREDENTIAL_TARGET_INFORMATION tal y 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 condiciones siguientes: (1) El parámetro Spn era un puntero NULL. (2) La longitud máxima del parámetro de cadena Unicode spn era demasiado pequeña. |
STATUS_INVALID_PARAMETER | Una longitud total del parámetro Spn supera los 65535 bytes. |
STATUS_NO_MEMORY | El parámetro Allocate se estableció en true, pero se produjo un error en la solicitud de asignación de memoria. |
Comentarios
SecMakeSPNEx2 es una versión mejorada de SecMakeSPNEx.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista |
Servidor mínimo compatible | Windows Server 2008 |
Plataforma de destino | Universal |
Encabezado | ntifs.h (incluya Ntifs.h, FltKernel.h) |
Library | Ksecdd.lib |
IRQL | <= APC_LEVEL |