2016-11-15 7 views
0

Я хотел бы управлять окнами всплывающих окон сертификата вручную. Например, если пользователь хочет войти в систему с клиентским сертификатом, я предлагаю окно выбора сертификата; Если он хочет войти в систему с именем пользователя/паролем. Система впустила его без проверки его сертификата.Есть ли способ управлять всплывающим окном выбора браузера вручную?

ответ

1

Нет стандартных API (или нестандартных, что я знаю) для управления этим с помощью JavaScript или чего-то подобного.

Единственное решение, о котором я могу думать, это иметь два веб-сервера.

  • Один для показа веб-страницы, которая ссылается либо на форму входа, либо на сертификат клиента, и этот сервер также реализует форму для входа.
  • Тот, который требует от пользователя указания сертификата клиента.

Вы можете решить эту проблему, используя тот же сертификат подстановки для обоих серверов и имеющих их в разных поддоменах, чтобы вы могли фактически вернуть эту настройку на два разных сервера (IP-адреса).

Вы можете использовать один и тот же фактический физический сервер и отправлять «виртуальный хост» на основе IP, и вы можете использовать тот же сертификат SSL для обоих.

Причина, по которой вам нужны разные серверы, заключается в том, что запрос на сертификат клиента SSL запускается на уровне установления связи SSL, поэтому вы не можете использовать виртуальные хосты на основе имени, для этого вам нужны 2 реальных сервера.