2010-09-22 25 views
26

Come implementare una connessione https con SSL e ASIHTTPRequest? Ci sono dei passaggi speciali da fare? Può essere che questo non abbia nulla a che fare con ASIHTTPRequest? Devo fare solo con il lato server, penso. Qualcuno può pubblicare un link o descrivere il processo di come può essere stabilita una connessione https?ASIHTTPRequest: https con SSL

Questo è quello che ho scoperto finora:

ho letto da qualche parte che avete bisogno di un "vero" certificato SSL e non un self firmato uno. Non ci sono anche supportati tutti i provider di certificati SSL (leggi this).

È inoltre necessario soddisfare i requisiti del governo degli Stati Uniti per una revisione e approvazione di CCATS. (vedi here).

risposta

35

così hai qualche domanda qui:

  1. Per fare SSL con ASIHTTPRequest, è sufficiente passare un URL HTTPS al posto di un http uno.

  2. non è necessario un vero certificato SSL, è possibile disabilitare la convalida utilizzando: [request setValidatesSecureCertificate: NO] ;. Disabilitare la convalida del certificato significa perdere parte della protezione fornita da SSL, rendendoti vulnerabile agli attacchi man-in-the-middle ecc.

  3. Sì, sei limitato da quali autorità di firma del certificato sono supportate da iPhone . Fintanto che rispetti i grandi nomi, non dovrebbe essere un problema. (E come per 2. è comunque possibile utilizzare un certificato autofirmato.)

  4. Sembra che CCATS non sia più necessario, è necessario un ERN invece - il processo è cambiato, a partire dall'estate 2010! Vedi http://tigelane.blogspot.com/2011/01/apple-itunes-export-restrictions-on.html. Ci sono anche ulteriori restrizioni se vuoi distribuire sull'app store francese, vedi Using SSL in an iPhone App - Export Compliance.

+0

CCATS è presumibilmente necessario; vedi http://stackoverflow.com/questions/2135081/does-my-application-contain-encryption –

+0

Sì, sembra che sia necessario - grazie per averlo indicato! Ho aggiornato la mia risposta. – JosephH

+1

Ho aggiornato di nuovo la mia risposta: sembra che il (più semplice) ERN sia probabilmente ciò che è necessario piuttosto che CCATS poiché hanno cambiato le regole. – JosephH

0

Per quanto riguarda ERN o CCATS, la risposta breve è che un ERN è probabilmente necessario, ma ci sono alcune esenzioni vostra applicazione possono beneficiare di modo che un ERN non è necessario (ad esempio, utilizzando solo HTTPS per authenitication o " la tua app è appositamente progettata e limitata per uso bancario o "transazioni monetarie").

Apple fornisce chiarimenti su ciò che è necessario nelle domande frequenti "Conformità commerciale globale per l'App Store" in iTunes Connect.