Udostępnij przez


SO_WSK_SECURITY

Opcja SO_WSK_SECURITY socket umożliwia aplikacji WSK zastosowanie deskryptora zabezpieczeń do gniazda lub pobranie buforowanej kopii deskryptora zabezpieczeń gniazda z gniazda. Deskryptor zabezpieczeń kontroluje udostępnianie lokalnego adresu transportu, do którego jest powiązane gniazdo.

Ta opcja gniazda dotyczy tylko gniazd nasłuchiwania, gniazd datagramu i gniazd zorientowanych na połączenie.

Jeśli aplikacja WSK używa tej opcji gniazda do zastosowania deskryptora zabezpieczeń do gniazda, musi to zrobić, zanim gniazdo jest powiązane z lokalnym adresem transportu.

Aby zastosować deskryptor zabezpieczeń do gniazda, aplikacja WSK wywołuje funkcję WskControlSocket z następującymi parametrami.

Parametr Wartość

RequestType

WskSetOption

ControlCode

SO_WSK_SECURITY

poziom

SOL_SOCKET

InputSize

sizeof(PSECURITY_DESCRIPTOR)

InputBuffer

Wskaźnik do zmiennej typu PSECURITY_DESCRIPTOR. Ta zmienna musi zawierać wskaźnik do buforowanej kopii deskryptora zabezpieczeń uzyskanego przez wywołanie funkcji WskControlClient za pomocą kodu sterującego WSK_CACHE_SD.

OutputSize

0

OutputBuffer

ZERO

OutputSizeReturned

ZERO

Aplikacja WSK musi określić wskaźnik do IRP podczas wywoływania funkcji WskControlSocket w celu zastosowania deskryptora zabezpieczeń do gniazda.

Jeśli aplikacja WSK używa tej opcji gniazda do zastosowania deskryptora zabezpieczeń do gniazda, nowy deskryptor zabezpieczeń zastępuje deskryptor zabezpieczeń, który został wcześniej zastosowany do gniazda.

Aplikacja WSK nie może zwolnić buforowanej kopii deskryptora zabezpieczeń do momentu ukończenia protokołu IRP.

Aplikacja WSK może również zastosować deskryptor zabezpieczeń do gniazda, gdy gniazdo jest początkowo tworzone, określając wskaźnik do buforowanej kopii deskryptora zabezpieczeń w SecurityDescriptor parametr, gdy wywołuje funkcję WskSocket lub WskSocketConnect.

Jeśli aplikacja WSK nie stosuje deskryptora zabezpieczeń do gniazda, podsystem WSK używa domyślnego deskryptora zabezpieczeń, który nie zezwala na udostępnianie lokalnego adresu transportu.

Aby pobrać buforowana kopię deskryptora zabezpieczeń gniazda z gniazda, aplikacja WSK wywołuje funkcję WskControlSocket z następującymi parametrami.

Parametr Wartość

RequestType

WskGetOption

ControlCode

SO_WSK_SECURITY

poziom

SOL_SOCKET

InputSize

0

InputBuffer

ZERO

OutputSize

sizeof(PSECURITY_DESCRIPTOR)

OutputBuffer

Wskaźnik do zmiennej typu PSECURITY_DESCRIPTOR. Ta zmienna odbiera wskaźnik do buforowanej kopii deskryptora zabezpieczeń gniazda.

OutputSizeReturned

ZERO

Aplikacja WSK musi określić wskaźnik do IRP podczas wywoływania WskControlSocket funkcji w celu pobrania buforowanej kopii deskryptora zabezpieczeń gniazda z gniazda.

Aplikacja WSK musi wywołać funkcję WskControlClient z kodem kontroli WSK_RELEASE_SD w celu zwolnienia buforowanej kopii deskryptora zabezpieczeń, gdy nie jest już potrzebna.

Aby uzyskać więcej informacji, zobacz stronę referencyjną struktury SECURITY_DESCRIPTOR.

Wymagania

Wersja

Dostępne w systemie Windows Vista i nowszych wersjach systemów operacyjnych Windows.

Nagłówek

Wsk.h (w tym Wsk.h)