2016-05-20 6 views
1

Я знаю, что могу использовать клиентские сертификаты с пользовательским доменом на Bluemix. Процесс настройки хранилища доверия объясняется здесь: https://console.ng.bluemix.net/docs/manageapps/secapps.html Bluemix собирается проверить сертификат клиента как часть подтверждения связи TLS. Все идет нормально.Как получить доступ к сертификату клиента из сервлета на Bluemix

Я запускаю сервлет Java внутри Bluemix в пользовательском домене, и я хотел бы видеть детали из сертификата клиента. Обычный способ сделать это HttpServletRequest.getAttribute ("javax.servlet.request.X509Certificate"); Будет ли такой же подход работать на Bluemix? Если нет, есть ли другой способ получить данные этого сертификата клиента?

+0

В какой среде вы используете Liberty или Java? – jgawor

+0

Я на свободе. – WJCarpenter

ответ

1

HTTP-заголовок, который называется $WSCC, должен быть установлен при взаимной аутентификации с приложением Bluemix, работающим в пользовательском домене. Значение этого заголовка - это сертификат клиента с кодировкой на основе 64 (только один). Если ваше приложение работает со средой выполнения Liberty (развернуто с помощью Liberty buildpack), вы сможете получить этот сертификат с помощью вызова HttpServletRequest.getAttribute("javax.servlet.request.X509Certificate"). В других режимах работы вам может потребоваться непосредственный поиск этого заголовка.