Linguaggio

SSLCertificateSocketFactory Classe

Definizione

Implementazione di SSLSocketFactory con diverse funzionalità aggiuntive:

        <ul>
        <li>Timeout specification for SSL handshake operations
        <li>Hostname verification in most cases (see WARNINGs below)
        &lt;li&gt;Optional SSL session caching with <code data-dev-comment-type="c">SSLSessionCache</code>&lt;li&gt;Optionally bypass all SSL certificate checks
        &lt;/ul&gt;

        The handshake timeout does not apply to actual TCP socket connection.
[Android.Runtime.Register("android/net/SSLCertificateSocketFactory", DoNotGenerateAcw=true)]
public class SSLCertificateSocketFactory : Javax.Net.Ssl.SSLSocketFactory
[<Android.Runtime.Register("android/net/SSLCertificateSocketFactory", DoNotGenerateAcw=true)>]
type SSLCertificateSocketFactory = class
    inherit SSLSocketFactory
Ereditarietà
SSLCertificateSocketFactory
Attributi

Commenti

Implementazione di SSLSocketFactory con diverse funzionalità aggiuntive:

<ul><li Timeout specification for SSL handshake operations >li<Hostname verification in most case (see WARNINGs below) >li<>Optional SSL session caching with SSLSessionCache<li>Optionally bypass all SSL certificate checks </ul>

Il timeout dell'handshake non si applica alla connessione socket TCP effettiva. Se si vuole anche un timeout di connessione, usare #createSocket() e Socket#connect(java.net.SocketAddress, int), dopo di che è necessario verificare l'identità del server a cui si è connessi.

<b>La maggior parte SSLSocketFactory delle implementazioni non verifica l'identità del server, consentendo attacchi di tipo person-in-the-middle.</b> Questa implementazione controlla il nome host del certificato del server, ma solo per le varianti createSocket che specificano un nome host. Quando si usano metodi che usano InetAddress o che restituiscono un socket non connesso, è necessario verificare manualmente l'identità del server per garantire una connessione sicura.

Per altre informazioni, vedere Aggiornamento del provider di sicurezza per la protezione da exploit SSL .

Il modo consigliato per verificare l'identità del server consiste nell'usare HttpsURLConnection#getDefaultHostnameVerifier() per ottenere un HostnameVerifier oggetto per verificare il nome host del certificato.

<b Avviso>/b<>: alcuni metodi su questa classe restituiscono socket connessi e alcuni restituiscono socket non connessi. Per i metodi che restituiscono socket connessi, l'impostazione delle proprietà correlate alla connessione o all'handshake su tali socket non avrà alcun effetto.

Nei dispositivi di sviluppo, "setprop socket.relaxsslcheck yes" ignora tutti i controlli di certificato SSL e nome host per scopi di test. Questa impostazione richiede l'accesso radice.

Questo membro è deprecato. Questa classe include sostituzioni meno soggette a errori usando le API standard. Per creare un SSLSocketoggetto , ottenere un SSLSocketFactory oggetto da SSLSocketFactory#getDefault() o javax.net.ssl.SSLContext#getSocketFactory(). Per verificare i nomi host, passare "HTTPS" a javax.net.ssl.SSLParameters#setEndpointIdentificationAlgorithm(String). Per abilitare ALPN, usare javax.net.ssl.SSLParameters#setApplicationProtocols(String[]). Per abilitare SNI, usare javax.net.ssl.SSLParameters#setServerNames(java.util.List).

per android.net.SSLCertificateSocketFactory.

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.

Costruttori

Nome Descrizione
SSLCertificateSocketFactory(Int32)
Obsoleti.

Questo membro è deprecato.

SSLCertificateSocketFactory(IntPtr, JniHandleOwnership)

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

Proprietà

Nome Descrizione
Class

Restituisce la classe di runtime di questo Objectoggetto .

(Ereditato da Object)
Handle

Handle per l'istanza di Android sottostante.

(Ereditato da Object)
JniIdentityHashCode

Ottiene il codice hash di identità assegnato a questo Java peer dal runtime di interoperabilità.

(Ereditato da Object)
JniManagedPeerState

Implementazione di SSLSocketFactory con diverse funzionalità aggiuntive:

        &lt;ul&gt;
        &lt;li&gt;Timeout specification for SSL handshake operations
        &lt;li&gt;Hostname verification in most cases (see WARNINGs below)
        &lt;li&gt;Optional SSL session caching with <code data-dev-comment-type="c">SSLSessionCache</code>&lt;li&gt;Optionally bypass all SSL certificate checks
        &lt;/ul&gt;

        The handshake timeout does not apply to actual TCP socket connection.
(Ereditato da JavaObject)
JniPeerMembers

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

PeerReference

Ottiene il riferimento all'oggetto JNI per questo peer Java.

(Ereditato da Object)
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

Nome Descrizione
Clone()

Crea e restituisce una copia di questo oggetto.

(Ereditato da Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

Implementazione di SSLSocketFactory con diverse funzionalità aggiuntive:

        &lt;ul&gt;
        &lt;li&gt;Timeout specification for SSL handshake operations
        &lt;li&gt;Hostname verification in most cases (see WARNINGs below)
        &lt;li&gt;Optional SSL session caching with <code data-dev-comment-type="c">SSLSessionCache</code>&lt;li&gt;Optionally bypass all SSL certificate checks
        &lt;/ul&gt;

        The handshake timeout does not apply to actual TCP socket connection.
(Ereditato da JavaObject)
CreateSocket()

Crea un socket non connesso.

(Ereditato da SocketFactory)
CreateSocket(InetAddress, Int32, InetAddress, Int32)
Obsoleti.

Crea socket.

CreateSocket(InetAddress, Int32)
Obsoleti.

Crea socket.

CreateSocket(Socket, String, Int32, Boolean)
Obsoleti.

Crea socket.

CreateSocket(String, Int32, InetAddress, Int32)
Obsoleti.

Crea socket.

CreateSocket(String, Int32)
Obsoleti.

Crea socket.

Dispose()

Rilascia le risorse contenute in questo peer Java.

(Ereditato da Object)
Dispose(Boolean)

Rilascia le risorse contenute in questo peer Java.

(Ereditato da Object)
DisposeUnlessReferenced()

Implementazione di SSLSocketFactory con diverse funzionalità aggiuntive:

        &lt;ul&gt;
        &lt;li&gt;Timeout specification for SSL handshake operations
        &lt;li&gt;Hostname verification in most cases (see WARNINGs below)
        &lt;li&gt;Optional SSL session caching with <code data-dev-comment-type="c">SSLSessionCache</code>&lt;li&gt;Optionally bypass all SSL certificate checks
        &lt;/ul&gt;

        The handshake timeout does not apply to actual TCP socket connection.
(Ereditato da JavaObject)
Equals(Object)

Implementazione di SSLSocketFactory con diverse funzionalità aggiuntive:

        &lt;ul&gt;
        &lt;li&gt;Timeout specification for SSL handshake operations
        &lt;li&gt;Hostname verification in most cases (see WARNINGs below)
        &lt;li&gt;Optional SSL session caching with <code data-dev-comment-type="c">SSLSessionCache</code>&lt;li&gt;Optionally bypass all SSL certificate checks
        &lt;/ul&gt;

        The handshake timeout does not apply to actual TCP socket connection.
(Ereditato da JavaObject)
Equals(Object)

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

(Ereditato da Object)
GetDefault(Int32, SSLSessionCache)

Restituisce una nuova istanza di socket factory con un timeout handshake facoltativo e una cache di sessione SSL.

GetDefault(Int32)

Restituisce una nuova istanza di socket factory con un timeout di handshake facoltativo.

GetDefaultCipherSuites()
Obsoleti.

Restituisce i nomi delle suite di crittografia abilitate per impostazione predefinita.

GetHashCode()

Restituisce un valore di codice hash per l'oggetto .

(Ereditato da Object)
GetHttpSocketFactory(Int32, SSLSessionCache)

Restituisce una factory socket (denominata anche SSLSocketFactory, ma in uno spazio dei nomi diverso) da usare con lo stack HTTP Apache.

GetInsecure(Int32, SSLSessionCache)

Restituisce una nuova istanza di una factory socket con tutti i controlli di sicurezza SSL disabilitati, usando un timeout handshake facoltativo e una cache di sessione SSL.

GetNpnSelectedProtocol(Socket)

Restituisce il protocollo NPN (Next Protocol Negotiate) selezionato dal client e dal server oppure null se non è stato negoziato alcun protocollo.

GetSupportedCipherSuites()
Obsoleti.

Restituisce i nomi dei pacchetti di crittografia supportati e che possono essere abilitati per una connessione SSL.

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)
SetHostname(Socket, String)

Attiva l'indicazione del nome del server (SNI) su un socket specifico.

SetKeyManagers(IKeyManager[])

Imposta l'oggetto KeyManagerda utilizzare per le connessioni effettuate da questa factory.

SetNpnProtocols(Byte[][])

Imposta i protocolli NPN (Next Protocol Negotiation) a cui è interessato questo peer.

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Implementazione di SSLSocketFactory con diverse funzionalità aggiuntive:

        &lt;ul&gt;
        &lt;li&gt;Timeout specification for SSL handshake operations
        &lt;li&gt;Hostname verification in most cases (see WARNINGs below)
        &lt;li&gt;Optional SSL session caching with <code data-dev-comment-type="c">SSLSessionCache</code>&lt;li&gt;Optionally bypass all SSL certificate checks
        &lt;/ul&gt;

        The handshake timeout does not apply to actual TCP socket connection.
(Ereditato da JavaObject)
SetTrustManagers(ITrustManager[])

Imposta l'oggetto TrustManagerda utilizzare per le connessioni effettuate da questa factory.

SetUseSessionTickets(Socket, Boolean)

Abilita il supporto del ticket di sessione nel socket specificato.

ToArray<T>()

Crea una matrice gestita da questo wrapper di matrice Java.

(Ereditato da Object)
ToString()

Restituisce una rappresentazione di stringa dell'oggetto .

(Ereditato da Object)
UnregisterFromRuntime()

Annulla la registrazione di questo Java peer dal runtime di interoperabilità.

(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

Nome Descrizione
IJavaPeerable.Disposed()

Implementazione di SSLSocketFactory con diverse funzionalità aggiuntive:

        &lt;ul&gt;
        &lt;li&gt;Timeout specification for SSL handshake operations
        &lt;li&gt;Hostname verification in most cases (see WARNINGs below)
        &lt;li&gt;Optional SSL session caching with <code data-dev-comment-type="c">SSLSessionCache</code>&lt;li&gt;Optionally bypass all SSL certificate checks
        &lt;/ul&gt;

        The handshake timeout does not apply to actual TCP socket connection.
(Ereditato da JavaObject)
IJavaPeerable.Finalized()

Implementazione di SSLSocketFactory con diverse funzionalità aggiuntive:

        &lt;ul&gt;
        &lt;li&gt;Timeout specification for SSL handshake operations
        &lt;li&gt;Hostname verification in most cases (see WARNINGs below)
        &lt;li&gt;Optional SSL session caching with <code data-dev-comment-type="c">SSLSessionCache</code>&lt;li&gt;Optionally bypass all SSL certificate checks
        &lt;/ul&gt;

        The handshake timeout does not apply to actual TCP socket connection.
(Ereditato da JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Implementazione di SSLSocketFactory con diverse funzionalità aggiuntive:

        &lt;ul&gt;
        &lt;li&gt;Timeout specification for SSL handshake operations
        &lt;li&gt;Hostname verification in most cases (see WARNINGs below)
        &lt;li&gt;Optional SSL session caching with <code data-dev-comment-type="c">SSLSessionCache</code>&lt;li&gt;Optionally bypass all SSL certificate checks
        &lt;/ul&gt;

        The handshake timeout does not apply to actual TCP socket connection.
(Ereditato da JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Implementazione di SSLSocketFactory con diverse funzionalità aggiuntive:

        &lt;ul&gt;
        &lt;li&gt;Timeout specification for SSL handshake operations
        &lt;li&gt;Hostname verification in most cases (see WARNINGs below)
        &lt;li&gt;Optional SSL session caching with <code data-dev-comment-type="c">SSLSessionCache</code>&lt;li&gt;Optionally bypass all SSL certificate checks
        &lt;/ul&gt;

        The handshake timeout does not apply to actual TCP socket connection.
(Ereditato da JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Implementazione di SSLSocketFactory con diverse funzionalità aggiuntive:

        &lt;ul&gt;
        &lt;li&gt;Timeout specification for SSL handshake operations
        &lt;li&gt;Hostname verification in most cases (see WARNINGs below)
        &lt;li&gt;Optional SSL session caching with <code data-dev-comment-type="c">SSLSessionCache</code>&lt;li&gt;Optionally bypass all SSL certificate checks
        &lt;/ul&gt;

        The handshake timeout does not apply to actual TCP socket connection.
(Ereditato da JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Implementazione di SSLSocketFactory con diverse funzionalità aggiuntive:

        &lt;ul&gt;
        &lt;li&gt;Timeout specification for SSL handshake operations
        &lt;li&gt;Hostname verification in most cases (see WARNINGs below)
        &lt;li&gt;Optional SSL session caching with <code data-dev-comment-type="c">SSLSessionCache</code>&lt;li&gt;Optionally bypass all SSL certificate checks
        &lt;/ul&gt;

        The handshake timeout does not apply to actual TCP socket connection.
(Ereditato da JavaObject)

Metodi di estensione

Nome Descrizione
GetJniTypeName(IJavaPeerable)

Ottiene il nome JNI del tipo dell'istanza selfdi .

JavaAs<TResult>(IJavaPeerable)

Provare a digitare selfTResult, verificando che la coercizione sia valida sul lato Java.

JavaCast<TResult>(IJavaObject)

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

JavaCast<TResult>(IJavaObject)

Implementazione di SSLSocketFactory con diverse funzionalità aggiuntive:

        &lt;ul&gt;
        &lt;li&gt;Timeout specification for SSL handshake operations
        &lt;li&gt;Hostname verification in most cases (see WARNINGs below)
        &lt;li&gt;Optional SSL session caching with <code data-dev-comment-type="c">SSLSessionCache</code>&lt;li&gt;Optionally bypass all SSL certificate checks
        &lt;/ul&gt;

        The handshake timeout does not apply to actual TCP socket connection.
TryJavaCast<TResult>(IJavaPeerable, TResult)

Provare a digitare selfTResult, verificando che la coercizione sia valida sul lato Java.

Si applica a