Condividi tramite


SSLSocketFactory Classe

Definizione

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

[Android.Runtime.Register("org/apache/http/conn/ssl/SSLSocketFactory", DoNotGenerateAcw=true)]
public class SSLSocketFactory : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Org.Apache.Http.Conn.Schemes.ILayeredSocketFactory
[<Android.Runtime.Register("org/apache/http/conn/ssl/SSLSocketFactory", DoNotGenerateAcw=true)>]
type SSLSocketFactory = class
    inherit Object
    interface ILayeredSocketFactory
    interface ISocketFactory
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Ereditarietà
SSLSocketFactory
Attributi
Implementazioni

Commenti

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE. .

SSLSocketFactory può essere usato per convalidare l'identità del server HTTPS rispetto a un elenco di certificati attendibili e per eseguire l'autenticazione al server HTTPS usando una chiave privata.

SSLSocketFactory abiliterà l'autenticazione del server quando viene fornito con un KeyStore truststore file che conta uno o più certificati attendibili. Il socket sicuro del client rifiuterà la connessione durante l'handshake della sessione SSL se il server HTTPS di destinazione tenta di autenticarsi con un certificato non attendibile.

Usare l'utilità keytool JDK per importare un certificato attendibile e generare un file truststore:

keytool -import -alias "my server cert" -file server.crt -keystore my.truststore

</p>

SSLSocketFactory abiliterà l'autenticazione client quando viene fornito con un KeyStore keystore file che conta una coppia di certificati privata/chiave pubblica. Il socket sicuro del client userà la chiave privata per autenticarsi nel server HTTPS di destinazione durante l'handshake della sessione SSL, se richiesto dal server. Il server HTTPS di destinazione verificherà a sua volta il certificato presentato dal client per stabilire l'autenticità del client

Usare la sequenza di azioni seguente per generare un file dell'archivio chiavi

<ul><li>

Usare l'utilità keytool JDK per generare una nuova chiave

keytool -genkey -v -alias "my client key" -validity 365 -keystore my.keystore

Per semplicità, usare la stessa password per la chiave di quella dell'archivio <chiavi /p></li li><>

Emettere una richiesta di firma del certificato

keytool -certreq -alias "my client key" -file mycertreq.csr -keystore my.keystore

</p></li li><>

Inviare la richiesta di certificato all'autorità di certificazione attendibile per la firma. È possibile scegliere di agire come ca propria e firmare la richiesta di certificato usando uno strumento PKI, ad esempio OpenSSL.

</li li><>

Importare il certificato radice ca attendibile

keytool -import -alias "my trusted ca" -file caroot.crt -keystore my.keystore

</p></li li><>

Importare il file PKCS#7 contando la catena di certificati completa

keytool -import -alias "my client key" -file mycert.p7 -keystore my.keystore

</p></li li><>

Verificare il contenuto del file dell'archivio chiavi risultante

keytool -list -v -keystore my.keystore

</p></li></ul>

Questo membro è deprecato. Usare invece java.net.URL#openConnection. Visitare questa pagina Web per altri dettagli.

Documentazione java per org.apache.http.conn.ssl.SSLSocketFactory.

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Costruttori

SSLSocketFactory(IntPtr, JniHandleOwnership)

Costruttore usato durante la creazione di rappresentazioni gestite di oggetti JNI; chiamato dal runtime.

SSLSocketFactory(KeyStore, String, KeyStore)

Crea la factory del socket SSL predefinita.

SSLSocketFactory(KeyStore, String)

Crea la factory del socket SSL predefinita.

SSLSocketFactory(KeyStore)

Crea la factory del socket SSL predefinita.

SSLSocketFactory(String, KeyStore, String, KeyStore, SecureRandom, IHostNameResolver)

Crea la factory del socket SSL predefinita.

Campi

Ssl
Sslv2
Tls

Proprietà

AllowAllHostnameVerifier
BrowserCompatibleHostnameVerifier
Class

Restituisce la classe di runtime di questo Objectoggetto .

(Ereditato da Object)
Handle

Handle per l'istanza di Android sottostante.

(Ereditato da Object)
HostnameVerifier
JniIdentityHashCode

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

(Ereditato da Object)
JniPeerMembers

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

PeerReference

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

(Ereditato da Object)
SocketFactory

Ottiene un'istanza singleton di SSLProtocolSocketFactory.

StrictHostnameVerifier
ThresholdClass

Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice.

ThresholdType

Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice.

Metodi

Clone()

Crea e restituisce una copia di questo oggetto.

(Ereditato da Object)
ConnectSocket(Socket, String, Int32, InetAddress, Int32, IHttpParams)

Connette un socket all'host specificato.

ConnectSocketAsync(Socket, String, Int32, InetAddress, Int32, IHttpParams)

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

CreateSocket()

Crea un nuovo socket non connesso.

CreateSocket(Socket, String, Int32, Boolean)

Restituisce un socket connesso all'host specificato a più livelli su un socket esistente.

CreateSocketAsync()

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

CreateSocketAsync(Socket, String, Int32, Boolean)

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

Dispose()

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

(Ereditato da Object)
Dispose(Boolean)

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

(Ereditato da Object)
Equals(Object)

Indica se un altro oggetto è "uguale a" questo.

(Ereditato da Object)
GetHashCode()

Restituisce un valore del codice hash per l'oggetto.

(Ereditato da Object)
IsSecure(Socket)

Verifica se una connessione socket è sicura.

JavaFinalize()

Chiamato dal Garbage Collector su un oggetto quando Garbage Collection determina che non sono presenti altri riferimenti all'oggetto .

(Ereditato da Object)
Notify()

Riattiva un singolo thread in attesa del monitor dell'oggetto.

(Ereditato da Object)
NotifyAll()

Riattiva tutti i thread in attesa del monitor dell'oggetto.

(Ereditato da Object)
SetHandle(IntPtr, JniHandleOwnership)

Imposta la proprietà Handle.

(Ereditato da Object)
ToArray<T>()

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

(Ereditato da Object)
ToString()

Restituisce una rappresentazione di stringa dell'oggetto.

(Ereditato da Object)
UnregisterFromRuntime()

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

(Ereditato da Object)
Wait()

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo <>una notifica</em> o <em>interrotto</em>.

(Ereditato da Object)
Wait(Int64, Int32)

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo>< una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale.

(Ereditato da Object)
Wait(Int64)

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo>< una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

IJavaPeerable.Disposed()

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

(Ereditato da Object)
IJavaPeerable.DisposeUnlessReferenced()

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

(Ereditato da Object)
IJavaPeerable.Finalized()

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

(Ereditato da Object)
IJavaPeerable.JniManagedPeerState

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

(Ereditato da Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

(Ereditato da Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

(Ereditato da Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

(Ereditato da Object)

Metodi di estensione

JavaCast<TResult>(IJavaObject)

Esegue una conversione del tipo di tipo controllato dal runtime Android.

JavaCast<TResult>(IJavaObject)

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

GetJniTypeName(IJavaPeerable)

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

CreateSocketAsync(ILayeredSocketFactory, Socket, String, Int32, Boolean)

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

ConnectSocketAsync(ISocketFactory, Socket, String, Int32, InetAddress, Int32, IHttpParams)

Factory socket a più livelli per le connessioni TLS/SSL, basate su JSSE.

Si applica a