2013-06-30 37 views
9

Về cơ bản, ứng dụng iOS của chúng tôi cần liên lạc với máy chủ có chứng chỉ tự ký ngay bây giờ. Trong ứng dụng của tôi, https không thành công với chứng chỉ máy chủ không đáng tin cậy, điều này là dễ hiểu. Lỗi này giống như sau:Cách sử dụng chứng chỉ tự ký tại ứng dụng iOS

Tên miền lỗi = NSURLErrorDomain Code = -1202 "Chứng chỉ cho máy chủ này không hợp lệ. Bạn có thể đang kết nối với máy chủ giả vờ là" tên máy chủ của tôi tại đây "có thể đặt thông tin bí mật của bạn có nguy cơ. "

Vì vậy, tôi đã gửi chứng chỉ tự ký qua email tới thiết bị iOS và nhập vào hồ sơ và hy vọng nó sẽ được sử dụng như một phần của CA gốc để xác thực https. Trước sự ngạc nhiên của tôi, nó không phải là và tôi vẫn nhận được cùng một lỗi. Tôi nghĩ rằng iOS sẽ được mặc định để sử dụng CA gốc tại keychain để xác nhận chứng chỉ máy chủ và từ những gì tôi đọc, giấy chứng nhận được nhập khẩu tại hồ sơ cũng là keychain. Vì vậy, tôi không thể hiểu tại sao chứng chỉ tự ký đã nhập của tôi không được sử dụng làm CA gốc. Tại thời điểm này, tôi thực sự không muốn tin tưởng chứng chỉ tự ký này thông qua mã như thế này iOS authenticate HTTPS with self-signed certificate hoặc In iOS, how to connect to a server using https with self-signed certificate on the server? vì điều này sẽ không hoạt động trong trường hợp khách hàng nơi họ sẽ cài đặt máy chủ của chúng tôi trên mạng của họ và họ có thể tạo chứng chỉ tự ký của riêng họ.

Bằng cách nào đó tôi đã không thực sự nhận được nhiều thông tin về việc này từ việc tìm kiếm. Bất cứ ai có thể đổ một số đèn ở đây và những gì tôi cần phải làm gì để gỡ lỗi này? Cảm ơn rất nhiều.

Cập nhật vào ngày 15 tháng 7:

Cập nhật thêm về điều này. Tôi cũng đã cố gắng sử dụng cấu hình cấu hình để thêm CA đã ký tự vào CA gốc tại thiết bị iOS bằng cách theo dõi Adding Trusted Root Certificate Authorities to iOS, từ thử nghiệm của tôi trên 6.0 iPad và iPhone, nó cũng không hoạt động. Vì vậy, không chắc chắn nếu điều đó chỉ hoạt động trên thiết bị bị hỏng tù hay không. Cuối cùng, tôi kết thúc bằng cách cho phép người dùng nhập chứng chỉ tự ký vào ứng dụng. Ứng dụng sẽ tải chứng chỉ đã nhập đó để xác minh chứng chỉ tương tự như số In iOS, how to connect to a server using https with self-signed certificate on the server? này. Hy vọng rằng nó sẽ giúp những người khác trong trường hợp này.

+0

Tôi đã gặp sự cố tương tự trong trường hợp "Tên thường gặp" của chứng chỉ không giống với tên miền của URL mà tôi đang thực hiện https .... sửa tên thường được giải quyết nó –

Trả lời

2

xem hướng dẫn đầu tiên bạn liên kết với bạn sẽ có thể sử dụng biểu mẫu đó hoặc một số hình thức nâng cao khác và khi bạn đã thử nghiệm và làm việc đó thì tất cả những gì bạn phải làm cho khách hàng để tạo và thêm chứng chỉ sẽ ghi đè/thay thế tệp localhost.cer trong thư mục ứng dụng nơi tệp localhost.cer "hoặc bất kỳ lược đồ tên nào bạn sử dụng" được đặt. có nhiều cách để làm điều này nhưng có thể nói cho ứng dụng một liên kết nơi chứng chỉ trực tuyến để tải xuống và sau khi tải xuống, sau đó thay thế.

Mọi câu hỏi tôi sẽ cố gắng và trợ giúp thêm nhưng hy vọng điều này sẽ giúp bạn đi đúng hướng.

+0

cảm ơn. giữ trong tâm trí, chứng chỉ tự ký được tạo ra bởi khách hàng, tuy nhiên ứng dụng cần URL nổi tiếng để tải xuống chứng chỉ. Vì vậy, nó có nghĩa là khách hàng sẽ cần phải cung cấp cho chứng chỉ đó cho chúng tôi để đăng tại trang web nổi tiếng đó. Tôi nghĩ rằng nó chắc chắn là một cách tiếp cận để giải quyết vấn đề này, tuy nhiên nó không phải là cách tiếp cận đơn giản mặc dù cho việc triển khai doanh nghiệp. – windfly2006

+0

Hôm nay, khi tôi xem hướng dẫn cấu hình MDM của Symantec (http://www.symantec.com/connect/sites/default/files/SMM%207.1%20Best%20Practices%20Guide%20vs2.pdf), nó cũng đề cập đến " 6.5 Tạo tải trọng Thông tin xác thực cho CA gốc "về việc nhập chứng chỉ vào kho lưu trữ gốc của iOS. Vì vậy, nó có nghĩa là nó phải được làm việc mặc dù nó chỉ là không làm việc cho tôi. Bạn không chắc chắn nếu điều này đang làm việc tại iOS 5, nhưng không hoạt động trên iOS 6 hay không. – windfly2006

+0

đã đặt câu hỏi của bạn lên một phiếu bầu hy vọng ai đó cũng có thể tìm hiểu thêm về điều này. – rezand

Các vấn đề liên quan