В настоящее время наша программа работает на JBoss и работает за обратным прокси-сервером apache. Apache обрабатывает проверку сертификата клиента. У нас есть опция + ExportCertData, установленная в apache, и затем мы используем
RequestHeader set SSL_CLIENT_CERT "%{SSL_CLIENT_CERT}e"
, чтобы поместить сертификат в поле заголовка SSL_CLIENT_CERT перед отправкой в JBoss. Затем наше приложение в Jboss считывает сертификат, ищущий SubjectAltName, чтобы получить адрес электронной почты, который мы используем, чтобы сэкономить пользователю шаг при его вводе.
Теперь нам придется жить за IIS, и нам потребуется аналогичная функциональность для этого. Что нас действительно волнует, так это извлечение адреса электронной почты из SubjectAltName. В идеальном мире IIS предоставил бы ту же информацию, что и apache, поэтому нам не пришлось бы слишком сильно изменять код нашего приложения. Но если это невозможно, другие варианты тоже хороши.
Некоторые другие заметки:
- Возможно, нам потребуется поддержка IIS6 и IIS7. Было бы неплохо иметь одно решение, которое работает для обоих, но не обязательно
- В настоящее время мы используем IIRF для пересылки запросов в определенный виртуальный каталог, но мне было бы интересно услышать другие решения, которые могли бы выполнить то, что мы ищем, наряду с пересылкой на наш сервер приложений.
- Простое добавление apache перед IIS не будет решением, потому что мы должны предоставить общий доступ к другим программам, использующим IIS, и они могут опасаться такого решения. Кроме того, мы не можем просто работать на другом порту, поскольку из-за ограничений брандмауэра разрешен только порт 80 и порт 443.
Есть идеи, как сделать это возможным? Дайте мне знать, если я смогу предоставить больше информации.