Freigeben über


SSLSocketFactory Klasse

Definition

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf 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
Vererbung
SSLSocketFactory
Attribute
Implementiert

Hinweise

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE. .

SSLSocketFactory kann verwendet werden, um die Identität des HTTPS-Servers anhand einer Liste vertrauenswürdiger Zertifikate zu überprüfen und sich mit einem privaten Schlüssel beim HTTPS-Server zu authentifizieren.

SSLSocketFactory aktiviert die Serverauthentifizierung, wenn eine Datei ein KeyStore truststore oder mehrere vertrauenswürdige Zertifikate enthält. Der sichere Clientsocket lehnt die Verbindung während der SSL-Sitzungs-Handshake ab, wenn der Ziel-HTTPS-Server versucht, sich mit einem nicht vertrauenswürdigen Zertifikat zu authentifizieren.

Verwenden Sie das JDK-Schlüsseltoolprogramm, um ein vertrauenswürdiges Zertifikat zu importieren und eine Truststore-Datei zu generieren:

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

</p>

SSLSocketFactory aktiviert die Clientauthentifizierung, wenn eine KeyStore keystore Datei ein privates Schlüssel-/öffentliches Zertifikatpaar enthält. Der sichere Clientsocket verwendet den privaten Schlüssel, um sich während des SSL-Sitzungs-Handshakes beim Ziel-HTTPS-Server zu authentifizieren, wenn dies vom Server angefordert wird. Der ZIEL-HTTPS-Server überprüft wiederum das vom Client vorgelegte Zertifikat, um die Authentizität des Clients festzulegen.

Verwenden Sie die folgende Abfolge von Aktionen, um eine Keystoredatei zu generieren.

<ul><li>

Verwenden des JDK-Schlüsseltool-Hilfsprogramms zum Generieren eines neuen Schlüssels

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

Verwenden Sie aus Gründen der Einfachheit dasselbe Kennwort für den Schlüssel wie die des Schlüsselspeichers </p<>/li li><.>

Ausgeben einer Zertifikatsignaturanforderung (CSR)

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

</p></li li><>

Senden Sie die Zertifikatanforderung zur Signatur an die vertrauenswürdige Zertifizierungsstelle. Eine kann als eigene Zertifizierungsstelle fungieren und die Zertifikatanforderung mit einem PKI-Tool wie OpenSSL signieren.

</li li><>

Importieren des Stammzertifikats der vertrauenswürdigen Zertifizierungsstelle

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

</p></li li><>

Importieren der PKCS#7-Datei mit der vollständigen Zertifikatkette

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

</p></li li><>

Überprüfen des Inhalts der resultierenden Schlüsselspeicherdatei

keytool -list -v -keystore my.keystore

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

Dieses Mitglied ist veraltet. Verwenden Sie stattdessen java.net.URL#openConnection. Bitte besuchen Sie diese Webseite , um weitere Details zu erhalten.

Java-Dokumentation für org.apache.http.conn.ssl.SSLSocketFactory.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Konstruktoren

SSLSocketFactory(IntPtr, JniHandleOwnership)

Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Laufzeit aufgerufen.

SSLSocketFactory(KeyStore, String, KeyStore)

Erstellt die standardmäßige SSL-Socketfactory.

SSLSocketFactory(KeyStore, String)

Erstellt die standardmäßige SSL-Socketfactory.

SSLSocketFactory(KeyStore)

Erstellt die standardmäßige SSL-Socketfactory.

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

Erstellt die standardmäßige SSL-Socketfactory.

Felder

Ssl
Sslv2
Tls

Eigenschaften

AllowAllHostnameVerifier
BrowserCompatibleHostnameVerifier
Class

Gibt die Laufzeitklasse dieses Werts Objectzurück.

(Geerbt von Object)
Handle

Das Handle für die zugrunde liegende Android-Instanz.

(Geerbt von Object)
HostnameVerifier
JniIdentityHashCode

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

(Geerbt von Object)
JniPeerMembers

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

PeerReference

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

(Geerbt von Object)
SocketFactory

Ruft eine Singleton-Instanz der SSLProtocolSocketFactory ab.

StrictHostnameVerifier
ThresholdClass

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

ThresholdType

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

Methoden

Clone()

Erstellt und gibt eine Kopie dieses Objekts zurück.

(Geerbt von Object)
ConnectSocket(Socket, String, Int32, InetAddress, Int32, IHttpParams)

Verbindet einen Socket mit dem angegebenen Host.

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

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

CreateSocket()

Erstellt einen neuen, nicht verbundenen Socket.

CreateSocket(Socket, String, Int32, Boolean)

Gibt einen Socket zurück, der mit dem angegebenen Host verbunden ist, der über einen vorhandenen Socket überschichtet ist.

CreateSocketAsync()

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

CreateSocketAsync(Socket, String, Int32, Boolean)

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

Dispose()

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

(Geerbt von Object)
Dispose(Boolean)

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

(Geerbt von Object)
Equals(Object)

Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist.

(Geerbt von Object)
GetHashCode()

Gibt einen Hashcodewert für das Objekt zurück.

(Geerbt von Object)
IsSecure(Socket)

Überprüft, ob eine Socketverbindung sicher ist.

JavaFinalize()

Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind.

(Geerbt von Object)
Notify()

Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet.

(Geerbt von Object)
NotifyAll()

Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten.

(Geerbt von Object)
SetHandle(IntPtr, JniHandleOwnership)

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
ToArray<T>()

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolgendarstellung des Objekts zurück.

(Geerbt von Object)
UnregisterFromRuntime()

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

(Geerbt von Object)
Wait()

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em> oder <em>unterbrochen</em>.<><

(Geerbt von Object)
Wait(Int64, Int32)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Wait(Int64)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

IJavaPeerable.Disposed()

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

(Geerbt von Object)
IJavaPeerable.DisposeUnlessReferenced()

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

(Geerbt von Object)
IJavaPeerable.Finalized()

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

(Geerbt von Object)
IJavaPeerable.JniManagedPeerState

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

(Geerbt von Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

(Geerbt von Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

(Geerbt von Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

(Geerbt von Object)

Erweiterungsmethoden

JavaCast<TResult>(IJavaObject)

Führt eine android-laufzeitgecheckte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

GetJniTypeName(IJavaPeerable)

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

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

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

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

Layered Socket Factory für TLS/SSL-Verbindungen basierend auf JSSE.

Gilt für: