Función SecMakeSPN (ntifs.h)

SecMakeSPN crea una cadena de nombre del 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 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, 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 la cadena Unicode de Spn . Si este parámetro es true, se asignará memoria para Spn desde el grupo paginado.

Valor devuelto

SecMakeSPN devuelve STATUS_SUCCESS si se ha realizado 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.

Requisitos

Requisito Value
Plataforma de destino Universal
Encabezado ntifs.h (incluya Ntifs.h, FltKernel.h)
Library Ksecdd.lib
IRQL <= APC_LEVEL

Consulte también

SecMakeSPNEx

SecMakeSPNEx2