Как получить Kerberos TGS и использовать его в приложении с графическим интерфейсом на Java? - PullRequest
3 голосов
/ 23 апреля 2011

Я пытаюсь создать приложение с протоколом Keberos и GSS-API на Java, и я уже выполнил аутентификацию и установление контекста до вызова метода doAsPrivileged. В этом методе я получаю взаимную аутентификацию, отправляя простой токен с клиента на сервер, но после этого я хочу сделать некоторые другие вещи.

Я хочу открыть новое окно с таблицей продуктов, чтобы позволить клиенту выбрать их и купить что-то, что было связано с базой данных на сервере.

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

я получаю сообщение об ошибке GSSException: не предоставлены действительные учетные данные (уровень механизма: не удалось найти любой Kerberos tgt), и я не знаю, как найти этот TGT для отправки его более одного раза на сервер.

спасибо.

1 Ответ

1 голос
/ 14 июля 2011

Я столкнулся с аналогичной проблемой .
Ваш код не работает, потому что Java пытается использовать GSSAPI с именем конфигурации по умолчанию для входа. Что com.sun.security.jgss.initiate. Чтобы выполнить GSS-вызов для кого-то другого или с другим именем для входа в систему, вы должны использовать LoginContext, получить тему и затем doAs. Насколько я вижу, каждое действие, связанное с обменом билетов, должно быть выполнено в PrivilegedAction, если вы не придерживаетесь настроек по умолчанию. Вот почему наши вещи не работают: - (

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...