Выберите JDBCRealm динамически
Я создал несколько областей на сервере Payara с различными JNDI. Означает, что у меня есть несколько баз данных с одинаковой структурой (пользователи и группы) и я хотел бы получить аутентификацию / авторизацию, получая / устанавливая имя области во время выполнения. Я не уверен, как я получу имя JDBCRealm во время выполнения, нужна любая помощь.
я пытался обойтись:
Context iniCtx = new InitialContext();
DataSource ddsa = (DataSource) iniCtx.lookup("java:app/multi2jndi");
DatabaseMetaData mdd;
Я не работаю, потому что он используется для поиска ресурсов.
1 ответ
Решение
После двух дней борьбы я обнаружил, что мы не можем взломать систему безопасности / области, управляемую контейнером напрямую. что-то вроде того, как мы должны написать свой собственный модуль безопасности или действовать иначе, используя JASPIC (JSR196). Я иду дальше с JASPIC.