SSL Pinning Alamofire работает с любым сертификатом - PullRequest
0 голосов
/ 18 октября 2018

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

import Alamofire

class SSLManager: SessionManager {

static let instance = SSLManager()

var manager: SessionManager?

 func sslPinning() {

    let hostname = "My Host Link"
    let cert = "_stackexchangecom" 


    let pathToCert = Bundle.main.path(forResource: cert, ofType: "der")
    let localCertificate = NSData(contentsOfFile: pathToCert!)
    let certificates = [SecCertificateCreateWithData(nil, localCertificate!)!]


    let serverTrustPolicy = ServerTrustPolicy.pinCertificates(
        certificates: certificates,
        validateCertificateChain: true,
        validateHost: true
    )
    let serverTrustPolicies = [hostname: serverTrustPolicy,"insecure.expired-apis.com": .disableEvaluation]
    let serverTrustPolicyManager = ServerTrustPolicyManager(policies: serverTrustPolicies)


    let sessionConfiguration = URLSessionConfiguration.default
    let afManager = SessionManager(
        configuration: sessionConfiguration,
        serverTrustPolicyManager: serverTrustPolicyManager
    )
    self.manager = afManager
}

}

но мой запрос get всегда возвращается с данными даже при использовании сертификата stackoverflow

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...