SSLSocketFactory Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
- 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 |
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. |