Natywny backend TLS systemu Apple

Natywny TLS systemu Apple (iohAppleTLS) to transport TLS systemów iOS i macOS dla sgcWebSockets, bez pliku OpenSSL .dylib do wdrożenia. Automatycznie wybiera najlepsze systemowe API dla danego urządzenia, więc otrzymujesz TLS 1.3 na nowoczesnych systemach bez zmiany jakiegokolwiek kodu. Włącz go, ustawiając TLSOptions.IOHandler na iohAppleTLS.

← Wszystkie backendy TLS

Natywny TLS systemu Apple (iohAppleTLS)

Natywny TLS systemu Apple dla iOS i macOS, bez pliku OpenSSL .dylib do wdrożenia.

Natywny TLS systemu Apple pozwala aplikacjom iOS i macOS korzystać z własnego TLS systemu operacyjnego, więc nie ma pliku OpenSSL .dylib do dołączenia, dopasowania wersji ani załatania. Apple utrzymuje stos TLS, co utrzymuje Twoją aplikację w zgodzie z polityką bezpieczeństwa platformy i usuwa zależność firm trzecich z Twojego wydania.

Backend automatycznie wybiera najlepsze systemowe API dla każdego urządzenia, wszystko za pojedynczym ustawieniem iohAppleTLS. Na macOS 10.14+ i iOS 12+ używa Network.framework, który zapewnia TLS 1.3. Na starszych systemach wraca do Secure Transport, który osiąga maksymalnie TLS 1.2. Nie rozgałęziasz kodu według wersji systemu operacyjnego, backend wybiera właściwą ścieżkę, a Twój kod pozostaje taki sam.

To kompletny klient TLS, a nie okrojona wersja. Korzysta z systemowego magazynu zaufania, wykonuje SNI i weryfikację nazwy hosta oraz udostępnia wywołanie zwrotne OnAppleTLSVerifyPeer do niestandardowej walidacji. Możesz zaufać prywatnemu urzędowi za pomocą niestandardowego urzędu CA (RootCertFile), przedstawić certyfikat klienta dla wzajemnego TLS (CertFile + Password) oraz ogłaszać protokoły aplikacyjne, takie jak http/1.1, za pośrednictwem ALPN. Wybierz ten backend dla aplikacji App Store, które chcą TLS 1.3 utrzymywanego przez system operacyjny i braku kryptografii firm trzecich do zarządzania.

Włącz natywny TLS systemu Apple

Ustaw TLSOptions.IOHandler na iohAppleTLS, a następnie używaj tych samych TLSOptions co w każdym innym backendzie.

WSClient.TLS := True;
WSClient.TLSOptions.IOHandler := iohAppleTLS;
WSClient.TLSOptions.ALPNProtocols.Add('http/1.1');
WSClient.TLSOptions.RootCertFile := '';   // opcjonalny niestandardowy CA (PEM/DER)
WSClient.TLSOptions.CertFile := '';       // opcjonalny certyfikat klienta (PKCS#12) dla mTLS
WSClient.TLSOptions.Password := '';       // hasło certyfikatu klienta
WSClient.TLSOptions.VerifyCertificate := True;
WSClient.OnAppleTLSVerifyPeer := DoVerifyPeer;  // opcjonalna niestandardowa walidacja
WSClient.Host := 'your.server.com';
WSClient.Port := 443;
WSClient.Active := True;
WSClient->TLS = true;
WSClient->TLSOptions->IOHandler = iohAppleTLS;
WSClient->TLSOptions->ALPNProtocols->Add("http/1.1");
WSClient->TLSOptions->RootCertFile = "";   // opcjonalny niestandardowy CA (PEM/DER)
WSClient->TLSOptions->CertFile = "";       // opcjonalny certyfikat klienta (PKCS#12) dla mTLS
WSClient->TLSOptions->Password = "";       // hasło certyfikatu klienta
WSClient->TLSOptions->VerifyCertificate = true;
WSClient->OnAppleTLSVerifyPeer = DoVerifyPeer;  // opcjonalna niestandardowa walidacja
WSClient->Host = "your.server.com";
WSClient->Port = 443;
WSClient->Active = true;

Brak pliku OpenSSL .dylib

Stos TLS jest dostarczany z systemem operacyjnym, a backend wybiera właściwe API dla każdego urządzenia.

Network.framework

Na macOS 10.14+ i iOS 12+ backend używa Network.framework, który zapewnia TLS 1.3.

Powrót do Secure Transport

Na starszych systemach wraca do Secure Transport (TLS 1.2), automatycznie i za tym samym ustawieniem.

Zaufanie systemowe i SNI

Korzysta z systemowego magazynu zaufania z SNI i weryfikacją nazwy hosta, a także OnAppleTLSVerifyPeer do niestandardowych kontroli.

Niestandardowy CA i mTLS

Zaufaj prywatnemu urzędowi CA za pomocą RootCertFile, przedstaw certyfikat klienta za pomocą CertFile + Password i ogłaszaj protokoły ALPN.

Uwaga o edycji

Natywny TLS systemu Apple (iohAppleTLS) wymaga edycji Enterprise sgcWebSockets. Zobacz macierz funkcji, aby poznać pełne zestawienie.

Natywny TLS 1.3 systemu Apple, zero OpenSSL

Pobierz bezpłatną wersję próbną i dostarczaj aplikacje iOS i macOS bez pliku OpenSSL .dylib do wdrożenia.