SSLSocketFactory 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
警告
This class is obsoleted in this android platform
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。
[Android.Runtime.Register("org/apache/http/conn/ssl/SSLSocketFactory", DoNotGenerateAcw=true)]
[System.Obsolete("This class is obsoleted in this android platform")]
public class SSLSocketFactory : Java.Lang.Object, IDisposable, Org.Apache.Http.Conn.Schemes.ILayeredSocketFactory
[<Android.Runtime.Register("org/apache/http/conn/ssl/SSLSocketFactory", DoNotGenerateAcw=true)>]
[<System.Obsolete("This class is obsoleted in this android platform")>]
type SSLSocketFactory = class
inherit Object
interface ILayeredSocketFactory
interface ISocketFactory
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 繼承
- 屬性
- 實作
備註
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 .
SSLSocketFactory 可用於驗證 HTTPS 伺服器的身份與可信憑證清單,並使用私鑰驗證 HTTPS 伺服器。
SSLSocketFactory 在提供 KeyStore truststore 包含一個或多個受信任憑證的檔案時,會啟用伺服器認證。 如果目標 HTTPS 伺服器嘗試以非受信任憑證驗證自己,客戶端安全套接字會在 SSL 會話握手時拒絕連線。
使用 JDK keytool 工具匯入受信任憑證並產生信任儲存檔案:
keytool -import -alias "my server cert" -file server.crt -keystore my.truststore
</p>
SSLSocketFactory 在提供 KeyStore keystore 包含私鑰/公鑰憑證對的檔案時,會啟用用戶端認證。 當伺服器要求時,用戶端安全套接字會在 SSL 會話握手時,使用私鑰向目標 HTTPS 伺服器驗證自己。 目標 HTTPS 伺服器會驗證客戶端所提供的憑證,以確認客戶端的真實性
請依照以下步驟產生 keystore 檔案
<烏爾><·李>
使用 JDK keytool 工具來產生新的金鑰
keytool -genkey -v -alias "my client key" -validity 365 -keystore my.keystore
為了簡化,使用與 keystore </p></li><相同的密碼 li>
發出憑證簽署請求(CSR)
keytool -certreq -alias "my client key" -file mycertreq.csr -keystore my.keystore
</p>/李<>李<>
將憑證請求送交可信憑證授權機構簽署。 使用者可選擇作為自己的憑證授權中心,並使用 PKI 工具(如 OpenSSL)簽署憑證請求。
</李><莉>
匯入受信任的 CA 根憑證
keytool -import -alias "my trusted ca" -file caroot.crt -keystore my.keystore
</p>/李<>李<>
匯入包含完整憑證鏈的 PKCS#7 檔案
keytool -import -alias "my client key" -file mycert.p7 -keystore my.keystore
</p>/李<>李<>
驗證所得金鑰儲存檔案的內容
keytool -list -v -keystore my.keystore
</p></li></ul>
此會員已被棄用。 請改用 java.net.URL#openConnection。 詳情請造訪 此網頁 。
的 org.apache.http.conn.ssl.SSLSocketFactoryJava 檔。
本頁部分內容基於 會所創建並分享的工作,並依 版本 Apache 授權條款使用。
建構函式
| 名稱 | Description |
|---|---|
| SSLSocketFactory(IntPtr, JniHandleOwnership) |
已淘汰.
用於建立 JNI 物件受管理表示的建構器;由執行時呼叫。 |
| SSLSocketFactory(KeyStore, String, KeyStore) |
已淘汰.
建立預設的 SSL socket 工廠。 |
| SSLSocketFactory(KeyStore, String) |
已淘汰.
建立預設的 SSL socket 工廠。 |
| SSLSocketFactory(KeyStore) |
已淘汰.
建立預設的 SSL socket 工廠。 |
| SSLSocketFactory(String, KeyStore, String, KeyStore, SecureRandom, IHostNameResolver) |
已淘汰.
建立預設的 SSL socket 工廠。 |
欄位
| 名稱 | Description |
|---|---|
| Ssl | |
| Sslv2 | |
| Tls | |
屬性
| 名稱 | Description |
|---|---|
| AllowAllHostnameVerifier | |
| BrowserCompatibleHostnameVerifier | |
| Class |
已淘汰.
回傳此 |
| Handle |
已淘汰.
底層 Android 實例的帳號。 (繼承來源 Object) |
| HostnameVerifier | |
| JniIdentityHashCode |
已淘汰.
取得由互通執行時指派給此 Java 對等端的身份雜湊碼。 (繼承來源 Object) |
| JniManagedPeerState |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 (繼承來源 JavaObject) |
| JniPeerMembers |
已淘汰.
提供此類型的 JNI 同儕成員元資料存取。 |
| PeerReference |
已淘汰.
取得這個 Java 節點的 JNI 物件參考。 (繼承來源 Object) |
| SocketFactory |
已淘汰.
會取得 SSLProtocolSocketFactory 的單例。 |
| StrictHostnameVerifier | |
| ThresholdClass |
已淘汰.
此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。 |
| ThresholdType |
已淘汰.
此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。 |
方法
| 名稱 | Description |
|---|---|
| Clone() |
已淘汰.
建立並回傳此物件的副本。 (繼承來源 Object) |
| ConnectSocket(Socket, String, Int32, InetAddress, Int32, IHttpParams) |
已淘汰.
將一個套接字連接到指定的主機。 |
| ConnectSocketAsync(Socket, String, Int32, InetAddress, Int32, IHttpParams) |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 (繼承來源 JavaObject) |
| CreateSocket() |
已淘汰.
會產生一個新的、未連接的插座。 |
| CreateSocket(Socket, String, Int32, Boolean) |
已淘汰.
回傳一個連接到指定主機的套接字,該套接字疊加在現有套接字之上。 |
| CreateSocketAsync() |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 |
| CreateSocketAsync(Socket, String, Int32, Boolean) |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 |
| Dispose() |
已淘汰.
釋放該 Java 節點所持有的資源。 (繼承來源 Object) |
| Dispose(Boolean) |
已淘汰.
釋放該 Java 節點所持有的資源。 (繼承來源 Object) |
| DisposeUnlessReferenced() |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 (繼承來源 JavaObject) |
| Equals(Object) |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 (繼承來源 JavaObject) |
| Equals(Object) |
已淘汰.
表示是否有其他物體「等同」於此物。 (繼承來源 Object) |
| GetHashCode() |
已淘汰.
回傳物件的雜湊碼值。 (繼承來源 Object) |
| IsSecure(Socket) |
已淘汰.
檢查插座連接是否安全。 |
| JavaFinalize() |
已淘汰.
當垃圾回收判定該物件不再有相關參考時,由垃圾回收器呼叫。 (繼承來源 Object) |
| Notify() |
已淘汰.
喚醒一個正在該物件監視器上等待的執行緒。 (繼承來源 Object) |
| NotifyAll() |
已淘汰.
喚醒所有等待該物件監視器的執行緒。 (繼承來源 Object) |
| SetHandle(IntPtr, JniHandleOwnership) |
已淘汰.
設定 Handle 屬性。 (繼承來源 Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 (繼承來源 JavaObject) |
| ToArray<T>() |
已淘汰.
從這個 Java 陣列包裝器建立一個受管理陣列。 (繼承來源 Object) |
| ToString() |
已淘汰.
回傳物件的字串表示。 (繼承來源 Object) |
| UnregisterFromRuntime() |
已淘汰.
將此 Java 節點從互通執行時中取消註冊。 (繼承來源 Object) |
| Wait() |
已淘汰.
導致目前執行緒等待被喚醒,通常是透過 <em>通知</><em 或 em>中斷</em> 來喚醒。 (繼承來源 Object) |
| Wait(Int64, Int32) |
已淘汰.
會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。 (繼承來源 Object) |
| Wait(Int64) |
已淘汰.
會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。 (繼承來源 Object) |
明確介面實作
| 名稱 | Description |
|---|---|
| IJavaPeerable.Disposed() |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 (繼承來源 JavaObject) |
| IJavaPeerable.Finalized() |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 (繼承來源 JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 (繼承來源 JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 (繼承來源 JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 (繼承來源 JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 (繼承來源 JavaObject) |
| IJavaPeerable.UnregisterFromRuntime() |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 |
擴充方法
| 名稱 | Description |
|---|---|
| ConnectSocketAsync(ISocketFactory, Socket, String, Int32, InetAddress, Int32, IHttpParams) |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 |
| CreateSocketAsync(ILayeredSocketFactory, Socket, String, Int32, Boolean) |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 |
| GetJniTypeName(IJavaPeerable) |
已淘汰.
取得實例 |
| JavaAs<TResult>(IJavaPeerable) |
已淘汰.
試著強制 |
| JavaCast<TResult>(IJavaObject) |
已淘汰.
執行 Android 執行時檢查型別轉換。 |
| JavaCast<TResult>(IJavaObject) |
已淘汰.
基於 JSSE 的 TLS/SSL 連線分層套接字工廠。 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
已淘汰.
試著強制 |