klink0v (klink0v) wrote,
klink0v
klink0v

Очередной Java-ненависти псто

Как всегда, с Java-приложениями у админов возникает аццкий геморрой. Не один, так другой.

Реальная ситуация. Локальная сеть выходит в большой и злобный интернет через прокси-сервер. На клиентских машинах установлена винда, все в AD-домене. Прокси авторизует клиентов посредством Kerberos (SPNEGO), для них всё работает прозрачно (Single Sign-On). Но только до тех пор, пока пользователь не попытается запустить какой-нибудь Javaписьный банк-клиент.

Во-первых, Java-машина для обмена данными с сервером использует не установленный браузером канал связи, а пытается открыть свой собственный. Даже простейший Java-апплет, интегрированный в интерфейс браузера, всё равно создаёт отдельную TCP-сессию. А следовательно, Java-машине тоже надо как-то распознать наличие прокси и отдельно самостоятельно аутентифицироваться на нём. Чего она просто так "из коробки" в случае с Kerberos под виндой сделать не может. Ей нужен костыль в виде allowtgtsessionkey. Вот спрашивается, ну зачем ей нужно обязательно расшифровывать сессионный kerberos ticket? Она выглядит как браузер, обменивается данными как браузер, работает как браузер, но почему-то не может аутентифицироваться как браузер.

А во-вторых, разработчики банк-клиентов почему-то не используют встроенных возможностей Java-машины, а реализуют функции подключения к серверу самостоятельно. Вот, например, весьма популярный в наши дни iBank2.

А вот это банк-клиент Промсвязьбанка.

Ну вот и как прикажете пропускать эти поделия через прокси-сервер с Kerberos-аутентификацией? Ну вот как, а?

Tags: java, ненависть
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 21 comments