Compartir a través de


SO_WSK_SECURITY

La opción de socket SO_WSK_SECURITY permite que una aplicación WSK aplique un descriptor de seguridad a un socket o recupere una copia almacenada en caché del descriptor de seguridad de un socket desde un socket. El descriptor de seguridad controla el uso compartido de la dirección de transporte local a la que está enlazado el socket.

Esta opción de socket solo se aplica a sockets de escucha, sockets de datagramas y sockets orientados a la conexión.

Si una aplicación WSK usa esta opción de socket para aplicar un descriptor de seguridad a un socket, debe hacerlo antes de que el socket esté enlazado a una dirección de transporte local.

Para aplicar un descriptor de seguridad a un socket, una aplicación WSK llama a la función WskControlSocket con los parámetros siguientes.

Parámetro Value

RequestType

WskSetOption

ControlCode

SO_WSK_SECURITY

Level

SOL_SOCKET

InputSize

sizeof(PSECURITY_DESCRIPTOR)

InputBuffer

Puntero a una variable con tipo PSECURITY_DESCRIPTOR. Esta variable debe contener un puntero a una copia almacenada en caché de un descriptor de seguridad que se obtuvo mediante una llamada a la función WskControlClient con el código de control WSK_CACHE_SD .

OutputSize

0

OutputBuffer

NULL

OutputSizeReturned

NULL

Una aplicación WSK debe especificar un puntero a un IRP al llamar a la función WskControlSocket para aplicar un descriptor de seguridad a un socket.

Si una aplicación WSK usa esta opción de socket para aplicar un descriptor de seguridad a un socket, el nuevo descriptor de seguridad reemplaza a cualquier descriptor de seguridad que se haya aplicado anteriormente al socket.

Una aplicación WSK no debe liberar la copia almacenada en caché del descriptor de seguridad hasta que se complete el IRP.

Una aplicación WSK también puede aplicar un descriptor de seguridad a un socket cuando el socket se crea inicialmente especificando un puntero a una copia almacenada en caché de un descriptor de seguridad en el parámetro SecurityDescriptor cuando llama a la función WskSocket o WskSocketConnect .

Si una aplicación WSK no aplica un descriptor de seguridad a un socket, el subsistema WSK usa un descriptor de seguridad predeterminado que no permite el uso compartido de la dirección de transporte local.

Para recuperar una copia almacenada en caché del descriptor de seguridad de un socket de un socket, una aplicación WSK llama a la función WskControlSocket con los parámetros siguientes.

Parámetro Value

RequestType

WskGetOption

ControlCode

SO_WSK_SECURITY

Level

SOL_SOCKET

InputSize

0

InputBuffer

NULL

OutputSize

sizeof(PSECURITY_DESCRIPTOR)

OutputBuffer

Puntero a una variable con tipo PSECURITY_DESCRIPTOR. Esta variable recibe un puntero a una copia almacenada en caché del descriptor de seguridad del socket.

OutputSizeReturned

NULL

Una aplicación WSK debe especificar un puntero a un IRP al llamar a la función WskControlSocket para recuperar una copia almacenada en caché del descriptor de seguridad de un socket de un socket.

Una aplicación WSK debe llamar a la función WskControlClient con el código de control WSK_RELEASE_SD para liberar la copia almacenada en caché del descriptor de seguridad cuando ya no se necesite.

Consulte la página de referencia de la estructura SECURITY_DESCRIPTOR para obtener más información.

Requisitos

Versión

Disponible en Windows Vista y versiones posteriores de los sistemas operativos Windows.

Encabezado

Wsk.h (incluya Wsk.h)