Función SecMakeSPN (ntifs.h)
secMakeSPN crea una cadena de nombre de proveedor de servicios que se puede usar al comunicarse con proveedores de servicios de seguridad específicos.
Sintaxis
KSECDDDECLSPEC NTSTATUS SecMakeSPN(
[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, out] IN OUT PUNICODE_STRING Spn,
[out, optional] OUT PULONG Length,
[in] IN BOOLEAN Allocate
);
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 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, out] Spn
Puntero a una cadena Unicode para almacenar la cadena de nombre del proveedor de servicios de seguridad creada por esta función.
[out, optional] Length
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 para almacenar el Spn cadena Unicode. Si este parámetro es true, la memoria de spn se asignará desde el grupo paginado.
Valor devuelto
SecMakeSPN devuelve STATUS_SUCCESS correcto 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. |
Requisitos
Requisito | Valor |
---|---|
de la plataforma de destino de |
Universal |
encabezado de |
ntifs.h (incluya Ntifs.h, FltKernel.h) |
biblioteca de |
Ksecdd.lib |
irQL | <= APC_LEVEL |