SSLCertificateSocketFactory Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Implementación de SSLSocketFactory con varias características adicionales:
<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
- Herencia
- Atributos
Comentarios
Implementación de SSLSocketFactory con varias características adicionales:
<Ul><li>Timeout specification for SSL handshake operations <li>Hostname verification in most cases (see WARNINGs below) <li>Optional SSL session caching with SSLSessionCache<li>Optionally bypass all SSL certificate checks </ul>
El tiempo de espera del protocolo de enlace no se aplica a la conexión de socket TCP real. Si quiere un tiempo de espera de conexión, use #createSocket() y Socket#connect(java.net.SocketAddress, int), después de lo cual debe comprobar la identidad del servidor al que está conectado.
<b>La mayoría SSLSocketFactory de las implementaciones no comprueban la identidad del servidor, lo que permite ataques de persona en el medio.</b> Esta implementación comprueba el nombre de host del certificado del servidor, pero solo para las variantes createSocket que especifican un nombre de host. Al usar métodos que usan InetAddress o que devuelven un socket no conectado, debe comprobar la identidad del servidor usted mismo para garantizar una conexión segura.
Consulte Actualización del proveedor de seguridad para proteger contra vulnerabilidades de seguridad SSL para obtener más información.
La manera recomendada de comprobar la identidad del servidor es usar HttpsURLConnection#getDefaultHostnameVerifier() para obtener un HostnameVerifier para comprobar el nombre de host del certificado.
<b>Advertencia</b>: algunos métodos de esta clase devuelven sockets conectados y algunos devuelven sockets no conectados. Para los métodos que devuelven sockets conectados, establecer las propiedades relacionadas con el protocolo de enlace o conexión en esos sockets no tendrá ningún efecto.
En los dispositivos de desarrollo, "setprop socket.relaxsslcheck sí" omite todas las comprobaciones de certificados SSL y nombre de host con fines de prueba. Esta configuración requiere acceso raíz.
Este miembro está en desuso. Esta clase tiene menos reemplazos propensos a errores mediante api estándar. Para crear un SSLSocket, obtenga un SSLSocketFactory de SSLSocketFactory#getDefault() o javax.net.ssl.SSLContext#getSocketFactory(). Para comprobar los nombres de host, pase "HTTPS" a javax.net.ssl.SSLParameters#setEndpointIdentificationAlgorithm(String). Para habilitar ALPN, use javax.net.ssl.SSLParameters#setApplicationProtocols(String[]). Para habilitar SNI, use javax.net.ssl.SSLParameters#setServerNames(java.util.List).
Java documentación para android.net.SSLCertificateSocketFactory.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.
Constructores
| Nombre | Description |
|---|---|
| SSLCertificateSocketFactory(Int32) |
Obsoletos.
Este miembro está en desuso. |
| SSLCertificateSocketFactory(IntPtr, JniHandleOwnership) |
Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el tiempo de ejecución. |
Propiedades
| Nombre | Description |
|---|---|
| Class |
Devuelve la clase en tiempo de ejecución de este |
| Handle |
Identificador de la instancia de Android subyacente. (Heredado de Object) |
| JniIdentityHashCode |
Implementación de SSLSocketFactory con varias características adicionales:
(Heredado de Object)
|
| JniPeerMembers |
Implementación de SSLSocketFactory con varias características adicionales:
|
| PeerReference |
Implementación de SSLSocketFactory con varias características adicionales:
(Heredado de Object)
|
| ThresholdClass |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. |
| ThresholdType |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. |
Métodos
| Nombre | Description |
|---|---|
| Clone() |
Crea y devuelve una copia de este objeto. (Heredado de Object) |
| CreateSocket() |
Crea un socket no conectado. (Heredado de SocketFactory) |
| CreateSocket(InetAddress, Int32, InetAddress, Int32) |
Obsoletos.
Por agregar |
| CreateSocket(InetAddress, Int32) |
Obsoletos.
Por agregar |
| CreateSocket(Socket, String, Int32, Boolean) |
Obsoletos.
Por agregar |
| CreateSocket(String, Int32, InetAddress, Int32) |
Obsoletos.
Por agregar |
| CreateSocket(String, Int32) |
Obsoletos.
Por agregar |
| Dispose() |
Implementación de SSLSocketFactory con varias características adicionales:
(Heredado de Object)
|
| Dispose(Boolean) |
Implementación de SSLSocketFactory con varias características adicionales:
(Heredado de Object)
|
| Equals(Object) |
Indica si algún otro objeto es "igual a" este. (Heredado de Object) |
| GetDefault(Int32, SSLSessionCache) |
Devuelve una nueva instancia de generador de sockets con un tiempo de espera de protocolo de enlace opcional y una caché de sesión SSL. |
| GetDefault(Int32) |
Devuelve una nueva instancia de generador de sockets con un tiempo de espera de protocolo de enlace opcional. |
| GetDefaultCipherSuites() |
Obsoletos.
Devuelve los nombres de los conjuntos de cifrado que están habilitados de forma predeterminada. |
| GetHashCode() |
Devuelve un valor de código hash para el objeto . (Heredado de Object) |
| GetHttpSocketFactory(Int32, SSLSessionCache) |
Devuelve un generador de sockets (también denominado SSLSocketFactory, pero en un espacio de nombres diferente) para su uso con la pila HTTP de Apache. |
| GetInsecure(Int32, SSLSessionCache) |
Devuelve una nueva instancia de un generador de sockets con todas las comprobaciones de seguridad SSL deshabilitadas, mediante un tiempo de espera de protocolo de enlace opcional y una caché de sesión SSL. |
| GetNpnSelectedProtocol(Socket) |
Devuelve el protocolo Next Protocol Negotiation (NPN) seleccionado por el cliente y el servidor, o null si no se negoció ningún protocolo. |
| GetSupportedCipherSuites() |
Obsoletos.
Devuelve los nombres de los conjuntos de cifrado que se admiten y podrían habilitarse para una conexión SSL. |
| JavaFinalize() |
Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto . (Heredado de Object) |
| Notify() |
Activa un único subproceso que está esperando en el monitor de este objeto. (Heredado de Object) |
| NotifyAll() |
Activa todos los subprocesos que están esperando en el monitor de este objeto. (Heredado de Object) |
| SetHandle(IntPtr, JniHandleOwnership) |
Establece la propiedad Handle. (Heredado de Object) |
| SetHostname(Socket, String) |
Activa indicación de nombre de servidor (SNI) en un socket determinado. |
| SetKeyManagers(IKeyManager[]) |
Establece los |
| SetNpnProtocols(Byte[][]) |
Establece los protocolos de negociación de protocolo siguiente (NPN) en los que está interesado este elemento del mismo nivel. |
| SetTrustManagers(ITrustManager[]) |
Establece los |
| SetUseSessionTickets(Socket, Boolean) |
Habilita la compatibilidad con vales de sesión en el socket especificado. |
| ToArray<T>() |
Implementación de SSLSocketFactory con varias características adicionales:
(Heredado de Object)
|
| ToString() |
Devuelve una representación de cadena del objeto . (Heredado de Object) |
| UnregisterFromRuntime() |
Implementación de SSLSocketFactory con varias características adicionales:
(Heredado de Object)
|
| Wait() |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser em notificado/em< o >em<interrumpido>/em<.><> (Heredado de Object) |
| Wait(Int64, Int32) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
| Wait(Int64) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| IJavaPeerable.Disposed() |
Implementación de SSLSocketFactory con varias características adicionales:
(Heredado de Object)
|
| IJavaPeerable.DisposeUnlessReferenced() |
Implementación de SSLSocketFactory con varias características adicionales:
(Heredado de Object)
|
| IJavaPeerable.Finalized() |
Implementación de SSLSocketFactory con varias características adicionales:
(Heredado de Object)
|
| IJavaPeerable.JniManagedPeerState |
Implementación de SSLSocketFactory con varias características adicionales:
(Heredado de Object)
|
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Implementación de SSLSocketFactory con varias características adicionales:
(Heredado de Object)
|
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Implementación de SSLSocketFactory con varias características adicionales:
(Heredado de Object)
|
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Implementación de SSLSocketFactory con varias características adicionales:
(Heredado de Object)
|
Métodos de extensión
| Nombre | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtiene el nombre JNI del tipo de la instancia |
| JavaAs<TResult>(IJavaPeerable) |
Intente coerción |
| JavaCast<TResult>(IJavaObject) |
Realiza una conversión de tipos comprobados en tiempo de ejecución de Android. |
| JavaCast<TResult>(IJavaObject) |
Implementación de SSLSocketFactory con varias características adicionales:
|
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Intente coerción |