我在Payara服务器中使用不同的JNDI创建了多个领域。意味着我有多个具有相同结构(用户和组(的数据库,并希望通过在运行时获取/设置领域名称来获得身份验证/授权。我不确定如何在运行时获得 JDBCRealm 名称,需要任何帮助。
我试图过得去:
Context iniCtx = new InitialContext();
DataSource ddsa = (DataSource) iniCtx.lookup("java:app/multi2jndi");
DatabaseMetaData mdd;
我不工作,因为它用于查找资源。
经过两天的挣扎,我发现我们无法直接破解容器托管的安全/领域。 一些我们必须编写自己的自定义安全模块或使用JASPIC(JSR196(进行不同操作。我将与JASPIC走得更远。