2010-01-12 15 views
6

Herkese açık bir arka uç sunucusuyla iletişim kurmak için HTTPS istekleri gönderen bir iPhone çerçevesi geliştiriyorum. Şu anda güvenilmeyen sunucu sertifikaları ile ilgili büyük bir sorunum var.iPhone Simulator'da güvenilmeyen sunucu sertifikasına sahip HTTPS istekleri nasıl gönderilir?

Arka uç sunucusunun sertifikası güvenilir bir CA tarafından imzalanmadı, bu nedenle ilk yaklaşımım NSURLRequest'in özel izinleriAnyHTTPSCertificateForHost kullanmaktı. Bu beklendiği gibi çalıştı ve geçici bir çözüm olarak iyi olsa da, müşteri nihai sonuç olarak temiz bir çözüm talep ediyor. Bu nedenle, anahtar zincirindeki dosya sisteminden sağlanan bir sertifikayı yüklemeye izin veren bir yöntem yazdım, ancak bu yöntem iPhone Simulator'da beklendiği gibi çalışmıyor. Sertifika, ana makinenin Mac OS X anahtarlık yerine yüklenir. Ne yazık ki, NSURLConnection'ın sendSynchronousRequest yöntemini çağırırsam, "güvenilmeyen bir sunucu sertifikası" hatası alıyorum. NSURLConnection, sertifikayı almak için ana bilgisayarın Mac OS X anahtarlığına erişemiyor gibi görünüyor.

Tahminim doğru mu, yoksa bir şey mi özledim?

Uygulamamı gerçek bir iPhone aygıtında çalıştırdığım taktirde yaklaşımım işe yarayacak mı (henüz bir tane kullanamıyorum)?

iPhone Simulator'da hiç bir anahtarlık var mı?

iPhone Simulator'da güvenilmeyen bir sertifikaya sahip bir sunucuya HTTPS istekleri göndermek mümkün mü ya da temel platform (sırasıyla simülatör veya aygıt) bağlı olarak farklı rutinleri uygulamak için precompiler yönergeleri kullanmak zorunda mıyım?

Herhangi bir yardım çok takdir edilmektedir. http://startssl.com

+0

olası yinelenen [Güvenilmeyen bir sertifika için SSL ile bağlanmak için NSURLConnection nasıl kullanılır?] (Http://stackoverflow.com/questions/933331/how-to-use-nsurlconnection-to-connect-with-ssl- for-an-güvenilmez-cert) –

cevap

1

Ücretsiz olarak güvenilen alabilirsiniz SSL sertifikaları Belki ASIHTTPRequest kütüphane bu konuda yardımcı olabiliriz?

+0

Ben sadece denedim ve hala "yorgun" olarak gösterdi ... belki yanlış bir şey yaptım. –

0

Evet, Bol Bolli ile aynı fikirdeyim ama bunu NSURL isteğiyle yaptım.Ama spething atlıyorsunuz.

İlgili konular