Compartilhar via


SO_WSK_SECURITY

A opção de soquete SO_WSK_SECURITY permite que um aplicativo WSK aplique um descritor de segurança a um soquete ou recupere uma cópia armazenada em cache do descritor de segurança de um soquete. O descritor de segurança controla o compartilhamento do endereço de transporte local ao qual o soquete está associado.

Essa opção de soquete se aplica somente a soquetes de escuta, soquetes de datagrama e soquetes orientados à conexão.

Se um aplicativo WSK usar essa opção de soquete para aplicar um descritor de segurança a um soquete, ele deverá fazer isso antes que o soquete seja associado a um endereço de transporte local.

Para aplicar um descritor de segurança a um soquete, um aplicativo WSK chama a função WskControlSocket com os parâmetros a seguir.

Parâmetro Valor

RequestType

WskSetOption

ControlCode

SO_WSK_SECURITY

Level

SOL_SOCKET

InputSize

sizeof(PSECURITY_DESCRIPTOR)

Inputbuffer

Um ponteiro para uma variável do tipo PSECURITY_DESCRIPTOR. Essa variável deve conter um ponteiro para uma cópia armazenada em cache de um descritor de segurança que foi obtido chamando a função WskControlClient com o código de controle WSK_CACHE_SD .

OutputSize

0

OutputBuffer

NULO

OutputSizeReturned

NULO

Um aplicativo WSK deve especificar um ponteiro para um IRP ao chamar a função WskControlSocket para aplicar um descritor de segurança a um soquete.

Se um aplicativo WSK usar essa opção de soquete para aplicar um descritor de segurança a um soquete, o novo descritor de segurança substituirá qualquer descritor de segurança que tenha sido aplicado anteriormente ao soquete.

Um aplicativo WSK não deve liberar a cópia armazenada em cache do descritor de segurança até que o IRP seja concluído.

Um aplicativo WSK também pode aplicar um descritor de segurança a um soquete quando o soquete é criado inicialmente especificando um ponteiro para uma cópia armazenada em cache de um descritor de segurança no parâmetro SecurityDescriptor quando ele chama a função WskSocket ou WskSocketConnect .

Se um aplicativo WSK não aplicar um descritor de segurança a um soquete, o subsistema WSK usará um descritor de segurança padrão que não permite o compartilhamento do endereço de transporte local.

Para recuperar uma cópia armazenada em cache do descritor de segurança de um soquete, um aplicativo WSK chama a função WskControlSocket com os parâmetros a seguir.

Parâmetro Valor

RequestType

WskGetOption

ControlCode

SO_WSK_SECURITY

Level

SOL_SOCKET

InputSize

0

Inputbuffer

NULO

OutputSize

sizeof(PSECURITY_DESCRIPTOR)

OutputBuffer

Um ponteiro para uma variável do tipo PSECURITY_DESCRIPTOR. Essa variável recebe um ponteiro para uma cópia armazenada em cache do descritor de segurança do soquete.

OutputSizeReturned

NULO

Um aplicativo WSK deve especificar um ponteiro para um IRP ao chamar a função WskControlSocket para recuperar uma cópia armazenada em cache do descritor de segurança de um soquete.

Um aplicativo WSK deve chamar a função WskControlClient com o código de controle WSK_RELEASE_SD para liberar a cópia armazenada em cache do descritor de segurança quando ele não for mais necessário.

Consulte a página de referência da estrutura SECURITY_DESCRIPTOR para obter mais informações.

Requisitos

Versão

Disponível no Windows Vista e versões posteriores dos sistemas operacionais Windows.

parâmetro

Wsk.h (inclua Wsk.h)