TsgcWebSocketServer_HTTPAPI | HTTPAPI Server SSL

Il server può essere configurato per utilizzare certificati SSL. Per ottenere un server di produzione con un certificato del server, deve acquistare un certificato da un provider rinomato: Namecheap, GoDaddy, Thawte, ecc. Per scopi di test può utilizzare un certificato autofirmato (controlli l'esempio Demos/Chat che utilizza un certificato autofirmato). Legga il seguente articolo Come creare un certificato autofirmato.

 

Una volta ottenuto il certificato, è necessario configurare il server per specificare quale certificato utilizzare per la cifratura delle connessioni.

 

Hash del certificato

Per prima cosa è necessario conoscere l'hash del proprio certificato. Trovare l'hash di un certificato è semplice in powershell eseguendo un comando dir sul contenitore dei certificati.

dir cert:\localmachine\my

L'hash è il valore Thumbprint esadecimale.

 


Directory: Microsoft.PowerShell.Security\Certificate::localmachine\my
Thumbprint                                Subject
----------                                -------
C12A8FC8AE668F866B48F23E753C93D357E9BE10  CN=*.mydomain.com

Una volta ottenuto il valore Thumbprint, è sufficiente impostarlo nella proprietà TsgcWebSocketServer_HTTPAPI.TLSOptions.Hash.

 

Una volta impostato l'hash, è sufficiente impostare TsgcWebSocketServer_HTTPAPI.SSL = true e il server è pronto per avviarsi.

 

 

Se si desidera registrare il certificato manualmente utilizzando netsh, usare il seguente comando:

 

netsh http add sslcert ipport=<IP>:<PORT> certhash=<THUMBPRINT> appid="{<GUID>}"


<IP>: Specifica l'indirizzo IP locale per il binding. Non utilizzi un binding con wildcard. Utilizzi un indirizzo IP valido.
<PORT>: Specifica la porta per il binding.
<THUMBPRINT>: Il thumbprint del certificato X.509.
<GUID>: Un GUID generato dallo sviluppatore per rappresentare l'app a scopo informativo.