在Payara服务器上设置许多jdbcRealm

时间:2018-09-24 14:25:14

标签: java-ee jaas payara jdbcrealm

我试图在同一个payara域上部署许多Java EE Web应用程序。每个应用程序都具有安全性约束,为此我正在使用JAAS。

我正在为每个应用程序设置许多jdbcRealms,每个应用程序都与一个jdbc连接池相关,以从数据库中检索用户凭据。

第一个应用程序(第一个定义的jdbcRealm)运行良好,但是第二个应用程序却出现以下错误:

GRAVE:   jdbcrealm.invaliduser AVERTISSEMENT:   
WEB9102: Web Login Failed: com.sun.enterprise.security.auth.login.common.LoginException:Login failed: Security Exception

我的jdbcRealm定义没有发现任何错误,我只担心如果每个域可以定义一个以上的jdbcRealm。

谢谢。

2 个答案:

答案 0 :(得分:0)

这意味着在第二个领域搜索的表中找不到用户AVERTISSEMENT。如果您对这两个领域使用不​​同的用户表,则您可能忘记了在数据库中创建表或忘记了在其中创建用户。

答案 1 :(得分:0)

经过多次尝试,我能够在payara 5.182上为已部署的应用程序创建jdbc领域。 enter image description here 使其起作用的诀窍是不设置加密算法 encoding 。 仅 Jdbc资源名称,帐户表和即可。 enter image description here

我已经在不同的OS和JVM上多次测试了该过程,并且可以正常工作。