SSLCertificateSocketFactory Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Implémentation SSLSocketFactory avec plusieurs fonctionnalités supplémentaires :
<ul>
<li>Timeout specification for SSL handshake operations
<li>Hostname verification in most cases (see WARNINGs below)
<li>Optional SSL session caching with <code data-dev-comment-type="c">SSLSessionCache</code><li>Optionally bypass all SSL certificate checks
</ul>
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
- Héritage
- Attributs
Remarques
Implémentation SSLSocketFactory avec plusieurs fonctionnalités supplémentaires :
<spécification ul>li Timeout pour les opérations <de négociation SSL li>vérification du nom d’hôte dans la plupart des cas (voir WARNINGs ci-dessous) <li>Mise en cache de session SSL facultative avec <>liSSLSessionCacheÉventuellement contourner toutes les vérifications <de certificat SSL /ul><>
Le délai d’attente de négociation ne s’applique pas à la connexion de socket TCP réelle. Si vous souhaitez également un délai d’expiration de connexion, utilisez #createSocket() et Socket#connect(java.net.SocketAddress, int), après quoi vous devez vérifier l’identité du serveur auquel vous êtes connecté.
<b>La plupart des SSLSocketFactory implémentations ne vérifient pas l’identité du serveur, ce qui autorise les attaques personne-in-the-middle.</b> Cette implémentation vérifie le nom d’hôte du certificat du serveur, mais uniquement pour les variantes createSocket qui spécifient un nom d’hôte. Lorsque vous utilisez des méthodes qui utilisent InetAddress ou qui retournent un socket non connecté, vous devez vérifier vous-même l’identité du serveur pour garantir une connexion sécurisée.
Pour plus d’informations, reportez-vous à la mise à jour de votre fournisseur de sécurité pour protéger contre les attaques SSL .
La méthode recommandée pour vérifier l’identité du serveur consiste à HttpsURLConnection#getDefaultHostnameVerifier() obtenir un HostnameVerifier pour vérifier le nom d’hôte du certificat.
<b>Avertissement</b> : certaines méthodes de cette classe retournent des sockets connectés et certains retournent des sockets non connectés. Pour les méthodes qui retournent des sockets connectés, la définition des propriétés liées à la connexion ou à la négociation sur ces sockets n’aura aucun effet.
Sur les appareils de développement, « setprop socket.relaxsslcheck yes » contourne toutes les vérifications de certificat SSL et de nom d’hôte à des fins de test. Ce paramètre nécessite un accès racine.
Ce membre est déconseillé. Cette classe a moins de remplacements sujets aux erreurs à l’aide d’API standard. Pour créer un SSLSocket, obtenir un SSLSocketFactory ou SSLSocketFactory#getDefault()javax.net.ssl.SSLContext#getSocketFactory(). Pour vérifier les noms d’hôte, passez "HTTPS" à javax.net.ssl.SSLParameters#setEndpointIdentificationAlgorithm(String). Pour activer ALPN, utilisez javax.net.ssl.SSLParameters#setApplicationProtocols(String[]). Pour activer SNI, utilisez javax.net.ssl.SSLParameters#setServerNames(java.util.List).
Java documentation pour android.net.SSLCertificateSocketFactory.
Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.
Constructeurs
| Nom | Description |
|---|---|
| SSLCertificateSocketFactory(Int32) |
Obsolète.
Ce membre est déconseillé. |
| SSLCertificateSocketFactory(IntPtr, JniHandleOwnership) |
Constructeur utilisé lors de la création de représentations managées d’objets JNI ; appelée par le runtime. |
Propriétés
| Nom | Description |
|---|---|
| Class |
Retourne la classe runtime de ce |
| Handle |
Handle de l’instance Android sous-jacente. (Hérité de Object) |
| JniIdentityHashCode |
Obtient le code de hachage d’identité affecté à cet homologue Java par le runtime d’interopérabilité. (Hérité de Object) |
| JniManagedPeerState |
Implémentation SSLSocketFactory avec plusieurs fonctionnalités supplémentaires :
(Hérité de JavaObject)
|
| JniPeerMembers |
Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code. |
| PeerReference |
Obtient la référence d’objet JNI pour cet homologue Java. (Hérité de Object) |
| ThresholdClass |
Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code. |
| ThresholdType |
Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code. |
Méthodes
| Nom | Description |
|---|---|
| Clone() |
Crée et retourne une copie de cet objet. (Hérité de Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Implémentation SSLSocketFactory avec plusieurs fonctionnalités supplémentaires :
(Hérité de JavaObject)
|
| CreateSocket() |
Crée un socket non connecté. (Hérité de SocketFactory) |
| CreateSocket(InetAddress, Int32, InetAddress, Int32) |
Obsolète.
Crée un socket. |
| CreateSocket(InetAddress, Int32) |
Obsolète.
Crée un socket. |
| CreateSocket(Socket, String, Int32, Boolean) |
Obsolète.
Crée un socket. |
| CreateSocket(String, Int32, InetAddress, Int32) |
Obsolète.
Crée un socket. |
| CreateSocket(String, Int32) |
Obsolète.
Crée un socket. |
| Dispose() |
Libère les ressources détenues par cet homologue Java. (Hérité de Object) |
| Dispose(Boolean) |
Libère les ressources détenues par cet homologue Java. (Hérité de Object) |
| DisposeUnlessReferenced() |
Implémentation SSLSocketFactory avec plusieurs fonctionnalités supplémentaires :
(Hérité de JavaObject)
|
| Equals(Object) |
Implémentation SSLSocketFactory avec plusieurs fonctionnalités supplémentaires :
(Hérité de JavaObject)
|
| Equals(Object) |
Indique si un autre objet est « égal à » celui-ci. (Hérité de Object) |
| GetDefault(Int32, SSLSessionCache) |
Retourne une nouvelle instance de fabrique de sockets avec un délai d’attente de négociation facultatif et un cache de session SSL. |
| GetDefault(Int32) |
Retourne une nouvelle instance de fabrique de sockets avec un délai d’attente d’établissement de liaison facultatif. |
| GetDefaultCipherSuites() |
Obsolète.
Retourne les noms des suites de chiffrement activées par défaut. |
| GetHashCode() |
Retourne une valeur de code de hachage pour l’objet. (Hérité de Object) |
| GetHttpSocketFactory(Int32, SSLSessionCache) |
Retourne une fabrique de sockets (également nommée SSLSocketFactory, mais dans un autre espace de noms) à utiliser avec la pile APACHE HTTP. |
| GetInsecure(Int32, SSLSessionCache) |
Retourne une nouvelle instance d’une fabrique de sockets avec toutes les vérifications de sécurité SSL désactivées, à l’aide d’un délai d’attente de négociation facultatif et d’un cache de session SSL. |
| GetNpnSelectedProtocol(Socket) |
Retourne le protocole NPN (Next Protocol Negotiation) sélectionné par le client et le serveur, ou null si aucun protocole n’a été négocié. |
| GetSupportedCipherSuites() |
Obsolète.
Retourne les noms des suites de chiffrement prises en charge et qui peuvent être activées pour une connexion SSL. |
| JavaFinalize() |
Appelé par le garbage collector sur un objet lorsque le garbage collection détermine qu’il n’y a plus de références à l’objet. (Hérité de Object) |
| Notify() |
Réveille un thread unique qui attend le moniteur de cet objet. (Hérité de Object) |
| NotifyAll() |
Réveille tous les threads qui attendent le moniteur de cet objet. (Hérité de Object) |
| SetHandle(IntPtr, JniHandleOwnership) |
Définit la propriété Handle. (Hérité de Object) |
| SetHostname(Socket, String) |
Active l’indication du nom du serveur (SNI) sur un socket donné. |
| SetKeyManagers(IKeyManager[]) |
Définit les |
| SetNpnProtocols(Byte[][]) |
Définit les protocoles NPN (Next Protocol Negotiation) qui intéressent cet homologue. |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Implémentation SSLSocketFactory avec plusieurs fonctionnalités supplémentaires :
(Hérité de JavaObject)
|
| SetTrustManagers(ITrustManager[]) |
Définit les |
| SetUseSessionTickets(Socket, Boolean) |
Active la prise en charge des tickets de session sur le socket donné. |
| ToArray<T>() |
Crée un tableau managé à partir de ce wrapper de tableau Java. (Hérité de Object) |
| ToString() |
Retourne une représentation sous forme de chaîne de l’objet. (Hérité de Object) |
| UnregisterFromRuntime() |
Annule l’inscription de cet homologue Java à partir du runtime d’interopérabilité. (Hérité de Object) |
| Wait() |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti par em ou><em>interrompu</em>.<> (Hérité de Object) |
| Wait(Int64, Int32) |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée. (Hérité de Object) |
| Wait(Int64) |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée. (Hérité de Object) |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| IJavaPeerable.Disposed() |
Implémentation SSLSocketFactory avec plusieurs fonctionnalités supplémentaires :
(Hérité de JavaObject)
|
| IJavaPeerable.Finalized() |
Implémentation SSLSocketFactory avec plusieurs fonctionnalités supplémentaires :
(Hérité de JavaObject)
|
| IJavaPeerable.JniObjectReferenceControlBlock |
Implémentation SSLSocketFactory avec plusieurs fonctionnalités supplémentaires :
(Hérité de JavaObject)
|
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Implémentation SSLSocketFactory avec plusieurs fonctionnalités supplémentaires :
(Hérité de JavaObject)
|
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Implémentation SSLSocketFactory avec plusieurs fonctionnalités supplémentaires :
(Hérité de JavaObject)
|
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Implémentation SSLSocketFactory avec plusieurs fonctionnalités supplémentaires :
(Hérité de JavaObject)
|
Méthodes d’extension
| Nom | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtient le nom JNI du type de l’instance |
| JavaAs<TResult>(IJavaPeerable) |
Essayez de forcer |
| JavaCast<TResult>(IJavaObject) |
Effectue une conversion de type vérifiée par le runtime Android. |
| JavaCast<TResult>(IJavaObject) |
Implémentation SSLSocketFactory avec plusieurs fonctionnalités supplémentaires :
|
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Essayez de forcer |