2010-01-04 35 views
7

Tôi đã tự hỏi liệu có ai trong số các bạn biết nếu có thể trong javascript hoặc php để kiểm tra xem máy khách có chứng chỉ ứng dụng khách cụ thể được cài đặt trong trình duyệt hay không. Điều này là chúng tôi có chứng chỉ máy chủ được cài đặt nhưng để được khách hàng nhận ra, họ cần 2 chứng chỉ ứng dụng khách để họ nhận ra quyền hạn của tổ chức phát hành chứng chỉ máy chủ của chúng tôi. Chúng tôi muốn kiểm tra trình duyệt cho 2 chứng chỉ này, nếu không có ở đó, chúng tôi muốn đề xuất ứng dụng khách tải xuống trước để nhập vào chế độ https ...Kiểm tra xem liệu chứng chỉ ứng dụng khách có được cài đặt trong trình duyệt của khách hàng

Bất kỳ ai cũng có thể trợ giúp? Vui lòng nêu chi tiết câu trả lời của bạn nếu bạn biết.

+1

Bạn chỉ cần kiểm tra một chứng chỉ ở phía máy khách, chứng chỉ gốc. –

+0

có, điều là chứng chỉ máy chủ mới của chúng tôi là tùy thuộc vào thẩm quyền mới và không được tất cả các trình duyệt biết đến. Chúng tôi cần trình duyệt như firefox để tải xuống CA gốc mới để họ có thể nhận ra chứng chỉ máy chủ của chúng tôi. Nhưng tôi không biết làm thế nào để kiểm tra nếu một trình duyệt đã có CA gốc hoặc nếu nó cần phải tải về nó. Ngay sau khi bạn kết nối trên https với máy chủ của chúng tôi, bạn nhận được rằng chứng chỉ máy chủ của chúng tôi không đáng tin cậy vì cơ quan không được biết. Trừ khi bạn cài đặt chứng chỉ ứng dụng khách cho CA gốc. – Fabien

+0

Đó không phải là 'chứng chỉ ứng dụng khách' nghĩa là gì. Bạn muốn biết liệu một chứng chỉ gốc cụ thể có được máy khách tin cậy hay không. Đó là khác nhau. –

Trả lời

-1

Buộc người dùng của bạn tải xuống và cài đặt chứng chỉ CA được phát triển trong gia đình là xấu xí và hận thù. Thay vào đó, hãy cho họ thấy tình yêu và trả 30 đô la Mỹ để nhận chứng chỉ SSL được ký bởi một CA đáng tin cậy, đáng tin cậy.

+0

Vâng ... Chúng tôi đang sử dụng chứng chỉ đáng tin cậy, nhưng gần đây công ty đã thay đổi CA của họ và chúng tôi đã thanh toán cho chứng chỉ máy chủ này để chúng tôi muốn sử dụng nó. Cũng giống như họ có một chứng chỉ CA CA CA mới, các trình duyệt không cập nhật, không biết chúng. Chúng ta đều biết rằng mọi người không cập nhật trình duyệt của họ thường xuyên ... và safari, firefox không hoạt động thông qua các cửa sổ cập nhật ... Vì vậy, chúng tôi cố gắng tìm một giải pháp. Nhưng chắc chắn, chúng tôi thực sự không hài lòng với thay đổi này và do đó, đối với nhà cung cấp Chứng chỉ SSL của chúng tôi. Quá tệ, đó là giá chính xác và được mọi trình duyệt nhận ra ngay từ đầu ... – Fabien

+0

Chứng chỉ máy chủ của chúng tôi là chứng chỉ tự do và còn nhiều hơn thế nữa 30 đô la :) – Fabien

+0

Tôi vẫn đồng ý với bạn, đây là thủ tục để làm mọi người tải xuống và cài đặt CAOT CA authority certificat ... Điều này không nên xảy ra. Chúng tôi không may mắn. – Fabien

0

thông báo cảnh báo sẽ bị ẩn bởi javascript sẽ được tải từ trang https của bạn.

trong thông báo cảnh báo bạn có thể liên kết trang web cập nhật cửa sổ hoặc bất kỳ nơi nào chứng chỉ gốc được cập nhật có thể được tải xuống trình duyệt của họ.

0

PHP là ngôn ngữ phía máy chủ. Nếu bạn thực sự muốn kiểm tra điều này thì bạn cần phải làm điều đó với JavaScript và sau đó gửi lại một yêu cầu AJAX tới PHP.

Nhưng tôi nghĩ có một giải pháp khác cho vấn đề của bạn. Thông thường khi một CA thay đổi tên của họ, chúng thường có "Chứng chỉ Trung cấp" mới mà bạn có thể sử dụng. (Nếu bạn có một máy chủ httpd apache thì bạn có thể tìm kiếm "ca bó" trên trang web của họ.) Với gói này, bạn có thể gửi chứng chỉ CA mới cùng với chứng chỉ của mình.

3

Bạn có thể thực hiện nó phía máy khách bằng cách sử dụng javascript để yêu cầu một tệp đã biết từ một nguồn được bảo mật (https). nếu yêu cầu thất bại thì điều đó có nghĩa là khách hàng từ chối chấp nhận chứng chỉ của bạn (hoặc một lỗi mạng khác) tại thời điểm này, bạn có thể bật lên một thông báo để yêu cầu người dùng cài đặt chứng chỉ gốc với liên kết đến chứng chỉ gốc.

Việc này phải được thực hiện từ trang không an toàn. nếu không người dùng có thể từ chối chứng chỉ của bạn và không bao giờ tải trang để bắt đầu và do đó javascript của bạn không bao giờ chạy được

Nó không thể được thực hiện bằng PHP vì php (phía máy chủ) không thể xác định liệu trình duyệt của khách hàng có gốc ca được cài đặt

Tôi tuy nhiên sẽ không thực hiện việc này. có được một chứng chỉ thích hợp để thay thế.

Dường như bạn chưa hiểu rõ về cách thức hoạt động của SSL nói chung. Tôi khuyên bạn nên dành thời gian để hiểu cách SSL hoạt động và cách sử dụng chứng chỉ.

DC

để tìm hiểu về việc gửi và nhận phản ứng http với javascript đọc trang này ..

http://www.w3schools.com/XML/xml_http.asp

Nó có thể được sử dụng để gửi và nhận bất kỳ dữ liệu văn bản, không chỉ xml. Nó thực sự dễ thực hiện nhưng bạn phải biết các vấn đề về phiên bản trình duyệt.

DC

+0

Tôi xác nhận rằng tôi có kiến ​​thức không tốt về SSL. Có rất nhiều công nghệ trên internet mà bạn không thể biết và chuyên về mọi thứ mà tại sao tôi yêu cầu trợ giúp. Kể từ thời điểm đó, chúng tôi đã quyết định làm giải pháp, để đặt trang không phải https trên trang web của chúng tôi, giải thích rằng cần phải cài đặt chứng chỉ mới trước khi tiếp tục trang bảo mật tiếp theo. Nó không phải là rất tốt đẹp nhưng nó là điều duy nhất chúng tôi tìm thấy để giải quyết vấn đề của chúng tôi ... Về giải pháp của bạn, tôi tự hỏi làm thế nào bạn yêu cầu một tập tin thông qua javascript .. là có bất kỳ chức năng tải về? bạn sử dụng document.location? Câu hỏi chỉ dành cho mục đích không chính thức. – Fabien

+0

Tôi đã cập nhật câu trả lời của mình để bao gồm liên kết tới việc sử dụng javascript để tải tệp từ máy chủ. đây là cơ sở cho hầu hết các chức năng ajax – DeveloperChris

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