Domanda

Non so se ho tutte le informazioni necessarie per esprimere bene questa domanda, quindi abbiate pazienza.

Ho una pagina web locale (che significa locale 192.168. *) protetta con un certificato SSL autofirmato. Sto provando ad accedere a questa pagina utilizzando un oggetto System.Net.HttpWebRequest, ma sto riscontrando uno strano problema.

Se si accede a questa pagina in Internet Explorer con " Usa SSL 2.0 " opzione disattivata, il browser restituisce un errore come se non fosse in grado di stabilire una connessione. (In altre parole, un errore di connessione al browser, al contrario di un errore inviato dal server.) Se "Usa SSL 2.0" l'opzione è attivata, la pagina funziona correttamente e viene visualizzato l'avviso standard che si tratta di un certificato autofirmato, si desidera continuare, ecc. (Stranamente, Firefox, che presumibilmente non ha SSL 2.0 attivato, funziona solo bene.)

Ora il mio problema è che sto provando ad accedere a questa pagina con un oggetto HttpWebRequest e l'errore che sta tornando è che la connessione è stata chiusa inaspettatamente, proprio come l'errore IE genera quando " Usa SSL 2.0 " è spento. (Ho già un codice in atto per ignorare il fatto che si tratta di un certificato autofirmato, ma non sta nemmeno andando così lontano.)

Come posso ottenere System.Net.HttpWebRequest, bene, " Usa SSL 2.0 " quando sta facendo la sua richiesta?

È stato utile?

Soluzione

Ho riscontrato questo problema da solo quando ho a che fare con Ssl3, anche se non sono sicuro che lo stesso consiglio funzionerebbe per SSL2?

Per aggirare il problema ho impostato il flag Ssl3 sul protocollo di sicurezza in questo modo:

  

ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;

Dai un'occhiata a questi link per maggiori dettagli:

system.net.servicepointmanager.securityprotocol su MSDN

enumerazione dei protocolli di sicurezza su MSDN

Potrebbero indicarti la giusta direzione se sei fortunato :)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top