Скучный отказ SSL рукопожатия и ошибка копирования удостоверения личности - PullRequest
0 голосов
/ 22 января 2019

Я пытаюсь использовать самоподписанный сертификат для своего запроса через Alamofire.

let trustPolicy = ServerTrustPolicy.pinCertificates (сертификаты: [сертификат], validateCertificateChain: true, validateHost: true)

                let serverTrustPolicies: [String: ServerTrustPolicy] = [
                    "https:-domain-name": trustPolicy,"domain-name" : .disableEvaluation]
                let policyManager = ServerTrustPolicyManager(policies: serverTrustPolicies)

Но я получаю следующую ошибку.

CredStore - copyIdentPrefs - Ошибка копирования удостоверения. Ошибка = -25300, запрос = { класс = idnt; labl = "https://domain -имя: 443 / "; "r_Ref" = 1; }

и

[BoringSSL] boringssl_context_alert_callback_handler (3724) [C1.1: 2] [0x139d1bd20] Уровень оповещения: смертельный, описание: рукопожатие ошибка 2019-01-22 15: 34: 23.448605 + 0530 DB [1276: 264543] [BoringSSL] boringssl_session_errorlog (224) [C1.1: 2] [0x139d1bd20] [boringssl_session_handshake_incomplete] SSL_ERROR_SSL (1): операция не удалось в библиотеке

2019-01-22 15: 34: 23.448796 + 0530

DB [1276: 264543] [BoringSSL] boringssl_session_handshake_error_print (205) [C1.1: 2] [0x139d1bd20] 5266093016: ошибка: 10000410: SSL Подпрограммы: OPENSSL_internal: SSLV3_ALERT_HANDSHAKE_FAILURE: /BuildRoot/Library/Caches/com.apple.xbs/Sources/boringssl/boringssl-109.230.1/ssl/tls_record.cc: 586: SSL оповещение № 40

2019-01-22 15: 34: 23.448986 + 0530 DB [1276: 264543]

[BoringSSL] boringssl_context_get_error_code (3545) [C1.1: 2] [0x139d1bd20] SSL_AD_HANDSHAKE_FAILURE

2019-01-22

15: 34: 23.464957 + 0530 DB [1276: 264543] Статус чтения TIC [1: 0x281599800]: 1: -9824

2019-01-22 15: 34: 23.467598 + 0530

DB [1276: 264543] Задача <43E199F9-B030-4BFD-B9E0-8C9F59B43E72>. <1> Ошибка загрузки HTTP (код ошибки: -9824 [1: -9824])

2019-01-22

15: 34: 23.468019 + 0530 DB [1276: 264574] Задача <43E199F9-B030-4BFD-B9E0-8C9F59B43E72>. <1> завершено с ошибкой - код: -9824 2019-01-22 15: 34: 23.470149 + 0530 DB [1276: 264574] Задача <43E199F9-B030-4BFD-B9E0-8C9F59B43E72>. <1> завершилась неудачно с ошибкой Ошибка домена = NSPOSIXErrorDomain Code = -9824 "Неизвестная ошибка: -9824" UserInfo = {_ NSURLErrorFailingURLSessionTaskErrorKey = LocalDataTask <43E199F9-B030-4BFD-B9E0-8C9F59B43E72>. <1>, _kCFStreamErrorDomainKey = 1, NSErrorPeerAddressKey = {длина = 16, емкость = 16, байт = 0x100201bb03106e120000000000000000}, _kCFStreamErrorCodeKey = -9824, _NSURLErrorRelatedURLSessionTaskErrorKey = ( "LocalDataTask <43E199F9-B030-4BFD-B9E0-8C9F59B43E72>. <1>")} [-9824]

Пробовал это с прошлой недели. Любая помощь будет оценена.

1 Ответ

0 голосов
/ 28 января 2019

Отключение оценки в Alamofire не отключает базовую проверку сертификатов в системе, которая по умолчанию блокирует самозаверяющие сертификаты. Я предлагаю вам прочитать документацию Apple ATS , но я предполагаю, что для этого потребуется некоторая комбинация NSExceptionAllowsInsecureHTTPLoads для вашего домена и других настроек. Вы также должны убедиться, что не отправили эти настройки, если можете помочь.

...