Condividi tramite


Estensioni socket sicure Winsock

Le estensioni del socket sicuro a Winsock consentono a un'applicazione socket di controllare la sicurezza del traffico su una rete. Queste estensioni consentono a un'applicazione di fornire criteri di sicurezza e requisiti per il traffico di rete e eseguire query sulle impostazioni di sicurezza applicate. Ad esempio, un'applicazione può usare queste estensioni per eseguire query sul token di sicurezza peer che può essere usato per eseguire controlli di accesso a livello di applicazione.

Le estensioni socket sicure sono destinate a integrare i servizi forniti da IPsec e altri protocolli di sicurezza con il framework Winsock. Prima di Windows Vista, in Windows Server 2003 e Windows XP, IPsec è stato configurato da un amministratore tramite criteri locali e di dominio. In Windows Vista le estensioni del socket sicuro consentono invece alle applicazioni di configurare completamente o parzialmente e controllare la sicurezza del traffico di rete a livello di socket.

Le applicazioni possono già proteggere il traffico di rete usando API pubbliche, ad esempio la gestione IPsec, la piattaforma di filtro windows e l'interfaccia del provider di supporto per la sicurezza .SSPI( Windows Filtering Platform and Security Support Interface). Tuttavia, l'uso di queste API può rendere l'applicazione più difficile da sviluppare e può rendere più difficile configurare e distribuire. Le estensioni del socket sicuro Winsock sono state progettate per semplificare lo sviluppo di applicazioni di rete che richiedono traffico di rete sicuro consentendo a Winsock di gestire la maggior parte della complessità.

Queste estensioni socket sicure sono disponibili in Windows Vista e versioni successive.

Funzioni socket sicure

Le funzioni di estensione socket sicure sono le seguenti:

Nota

Le funzioni socket sicure supportano attualmente solo il protocollo IPsec e sono disponibili in Windows Vista e versioni successive.

 

Le strutture e le enumerazioni usate dalle funzioni secure socket sono le seguenti:

Le funzioni socket sicure sono semplici da usare per le normali applicazioni e sono sufficienti per le applicazioni che necessitano di un elevato grado di controllo sulla sicurezza. Queste funzioni consentono di mantenere nascosto il meccanismo di sicurezza sottostante dall'applicazione. Un'applicazione può specificare requisiti di sicurezza generici e consentire all'amministratore di controllare il protocollo di sicurezza usato per supportare i requisiti. Anche se è possibile estendere queste funzioni per aggiungere altri protocolli di sicurezza, attualmente solo IPsec si integra con le funzioni socket sicure.

La funzione WSASetSocketSecurity consente a un'applicazione di abilitare la sicurezza e applicare le impostazioni di sicurezza prima che venga stabilita una connessione.

La funzione WSASetSocketPeerTargetName consente a un'applicazione di specificare il nome di destinazione corrispondente a un'entità peer. Il protocollo di sicurezza selezionato userà queste informazioni durante l'autenticazione del peer. Questa funzionalità risolve i problemi relativi agli attacchi man-in-the-middle attendibili.

La funzione WSADeleteSocketPeerTargetName viene usata per eliminare un nome peer specificato in precedenza per un socket.

Dopo aver stabilito una connessione, la funzione WSAQuerySocketSecurity consente a un'applicazione di eseguire query sulle proprietà di sicurezza della connessione, che possono includere il token di accesso peer o computer.

Dopo aver stabilito una connessione, la funzione WSAImpersonateSocketPeer consente a un'applicazione di rappresentare l'entità di sicurezza corrispondente a un peer socket per eseguire l'autorizzazione a livello di applicazione.

WSARevertImpersonation consente a un'applicazione di terminare la rappresentazione di un peer socket.

Architettura del socket sicuro

architettura di base delle estensioni secure socket winsock

  • Un'applicazione chiama le funzioni socket sicure per impostare o eseguire query sulle impostazioni di sicurezza per un socket.
  • Le funzioni socket sicure sono un set di funzioni di estensione sicure di tipo che esegue il wrapping delle chiamate alla funzione WSAIoctl usando valori appena definiti per il parametro dwIoControlCode disponibile in Windows Vista e versioni successive. Questi IOCTLs vengono gestiti dallo stack di rete.
  • Lo stack di rete indirizza la chiamata a Application Layer Enforcement (ALE) insieme all'handle dell'endpoint. Per le funzioni WSADeleteSocketPeerTargetName, WSASetSocketPeerTargetName e WSASetSocketSecurity , ALE configurerà le impostazioni dell'applicazione nell'endpoint locale. Per la funzione WSAQuerySocketSecurity , ALE leggerà le informazioni richieste dagli endpoint locali e remoti applicabili.
  • In base agli eventi socket, Application Layer Enforcement (ALE) applica i criteri per l'architettura del socket sicuro usando la piattaforma di filtro di Windows. Per altre informazioni, vedere Informazioni su Windows Filtering Platform e Application Layer Enforcement (ALE).

Informazioni sulla piattaforma di filtro di Windows

Esempi avanzati di Winsock con estensioni Secure Socket

Applicazione livello applicazione (ALE)

Configurazione IPsec

Funzioni IPsec

Programmazione Secure Winsock

Security Support Provider Interface (SSPI)

Uso di estensioni socket sicure

Piattaforma filtro Windows

Funzioni API della piattaforma di filtro di Windows