Прикрепление SSL через Alamofire не работает - PullRequest
0 голосов
/ 24 октября 2018

У меня возникли проблемы в моем проекте с SSL Pinning через Alamofire.Проблема в том, что в другом проекте, созданном ad-hoc, все работает нормально: если Чарльз включен, все заблокировано.

Теперь в этом проекте он проходит каждый вызов, даже если мой сертификат неверен.

Я подумал, что, возможно, проблема в том, что библиотека импортирована с моим PodFile, но я не знаю, какая из них может быть.

Я спрашиваю здесь, потому что, возможно, уже была такая же проблема.

Вот PodFile:

pod 'SideMenuController'
pod 'ScrollingStackContainer', '~> 0.5'
pod 'SwiftLocation'
pod 'ObjectMapper'
pod 'ActionSheetPicker-3.0'
pod 'Stripe'
pod 'CocoaMQTT'

pod 'SwiftMessages', '5.0.1'
pod 'PusherSwift'
pod 'CryptoSwift', '~> 0.7.2'
pod 'TTSegmentedControl', '~> 0.3.1'
pod 'Fabric'
pod 'Crashlytics'
pod 'KMPlaceholderTextView', '~> 1.3.0'

pod 'FlowTables',       '~> 0.8.2'

pod 'FBSDKLoginKit'

pod 'KeychainAccess',           '~> 3.1.1'
pod 'ios-ntp',                  '~> 1.1.9'
pod 'MMMaterialDesignSpinner',  '~> 0.2.5'

pod 'Alamofire', '4.7.2'
pod 'Kingfisher',  :git => 'https://github.com/onevcat/Kingfisher.git', :tag => '4.9.0'

Ответы [ 2 ]

0 голосов
/ 30 октября 2018

Я нашел проблему:

В моем PodFile был также установлен CocoaDebug, инструмент, который помогает вам отлаживать сетевые вызовы.К сожалению, он переопределяет мой пользовательский SessionManager, а также переопределяет методы, связанные с закреплением SSL-сертификата.

Он должен быть полностью удален, его недостаточно отключить в сборке.

0 голосов
/ 29 октября 2018

Конечно, при использовании Charles все блокируется: это означает, что пиннинг сертификатов работает, а приложение не принимает перехваченные ответы (в данном случае Charles).У вас есть пара опций:

  1. Отключите закрепление сертификата для отладочных сборок, чтобы вы могли использовать Charles.
  2. Экспортируйте сертификат Charles SSL и включите его в отладочные сборки вашего приложения, чтобы он сталодин из закрепленных сертификатов.Убедитесь, что этот сертификат не включен в ваши сборки выпуска.
...