powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / JBoss + JAAS
7 сообщений из 7, страница 1 из 1
JBoss + JAAS
    #34379929
Maktub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
День добрый!
Помогите разобраться правильным применением JAAS на стороне клиента.

Использую JBoss 4.0.3
Есть GUI-клиент, на котором требуется провести Идентификацию пользователя.

Для своего EJB-компонента, в файле дескрипторе jboss.xml, указал <security-domain>java:/jaas/other</security-domain>.
Как я понимаю, этот домен контроля доступа будет использоваться на стороне сервера, при обращении к компоненту.

На стороне клиента имеется файл auth.conf в котором указан домен контроля доступа "other", а в нем используется логин-модуль ClientLoginModule, который только передает данные для идентификации(имя,пароль), но не проверяет их правильность. Их правильность проверится при обращении к компоненту.

Вопрос, как сделать так, чтоб провести идентификацию до обращения к EJB-компоненту?
...
Рейтинг: 0 / 0
JBoss + JAAS
    #34380230
expp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
помню делал не помню как ...
в main вызывается какая то херь из Jaasа ей даём callback с паролем/логином. Она получает тикеты успешного логина (принципалы чтоли) ну а потом сообщает их при каждом обращении. Я всё с мануалов дёрнул
...
Рейтинг: 0 / 0
JBoss + JAAS
    #34380334
Maktub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот как работает на клиенте.

// используемый обработчик, которому передаются вводимые имя и пароль
org.jboss.security.auth.callback.UsernamePasswordHandler handler = new org.jboss.security.auth.callback.UsernamePasswordHandler(
_jUserTextField.getText(), _jPwdTextField.getText().toCharArray());

// создание логин-контекста на клиенте
try {


final javax.security.auth.login.LoginContext lc = new javax.security.auth.login.LoginContext(
"other", handler);
// логин в систему
lc.login();

} catch (LoginException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

Если указать неправильный пароль, то вызов lc.login(); - не выдает никаких исключений.

а ошибка о идентификации будет при вызове "objHome.create();"

CommonHome objHome = (CommonHome) PortableRemoteObject.narrow(objref, CommonHome.class);

Common common = objHome.create();
/********************************************/

Как добиться того, чтобы при вызове lc.login(); проверялась правильность имени и пароля?
На стороне клиента написать свой Логин-модуль релизующий javax.security.auth.spi.LoginModule?
...
Рейтинг: 0 / 0
JBoss + JAAS
    #34380414
expp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это "не баг, а фича" JAASа. При каждом обращении проверяется набор тикетов. Хотите чтоб сразу - дёргайте какой-нибудь бин - ловите исключение. Как вариант просмотреть содержимое получаемого lc и сравнить его в двух случаях.
...
Рейтинг: 0 / 0
JBoss + JAAS
    #34380964
Maktub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А кто как реализует идентификацию пользователей?
...
Рейтинг: 0 / 0
JBoss + JAAS
    #34381134
Maktub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exppпомню делал не помню как ...
в main вызывается какая то херь из Jaasа ей даём callback с паролем/логином. Она получает тикеты успешного логина (принципалы чтоли) ну а потом сообщает их при каждом обращении. Я всё с мануалов дёрнул


У тебя не остались исходники...Пожалст,может есть???
Очень выручишь.
...
Рейтинг: 0 / 0
JBoss + JAAS
    #34524229
Vinny Puhh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите, плиз, про клиентский файл конфигурации LoginContext.... а то вот какая хрень:

Код: plaintext
1.
2.
3.
4.
5.
UsernamePasswordHandler handler =  new  UsernamePasswordHandler("username","123456".toCharArray());
System.out.println("handler created.");
LoginContext   lc =  new  LoginContext("personnelEJBRealm", handler); // вылетает ЗДЕСЬ!!!
System.out.println("LoginContext created.");
lc.login();

вылетает на указанной строчке и пишет:

Код: plaintext
java.lang.SecurityException: Unable to locate a login configuration

чего делать?
Заранее пасип всем ответившим!!!
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / JBoss + JAAS
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]