2011-03-29 42 views
0

我的应用程序运行在Glassfish 3.1上,使用jdbcRealm是它的认证和授权。我想将这个应用程序移植到JBoss 6.我可以在JBoss 6中创建一个像Glassfish3中的jdbcRealm映射到我的数据库中的USER表吗?我可以通过管理员控制台执行吗?在JBoss中,我想出了如何创建数据库连接(仅通过创建数据源),但是在Glassfish中,我还在Glassfish中设置了与jndimail-host,transport protocol ...一起的JavaMail会话,我可以将它移植到JBoss上吗?我可以将Glassfish jdbcRealm移植到JBoss上吗?

+0

您是否将jdbcRealm移植到glassfish?我即将尝试。我发现这个jboss 3.0.x,但我也使用jboss 6:http://docs.jboss.org/jbossweb/3.0.x/realm-howto.html#JDBCRealm如果这种技术仍然有效,我想知道在哪里粘贴server.xml文件... – simgineer 2012-06-30 00:30:44

回答

1

解答您提出的问题:

我可以建立在Glassfish3在JBoss 6 jdbcRealm像映射到 USER表在我的数据库?

如果我理解正确,您使用数据库来验证用户?

你可以在JBoss中定义类似的东西。最简单的方法是将适当的安全域定义添加到conf/login-config.xml文件。

它可以看起来像这样:

<application-policy name="database-domain"> 
    <authentication> 
    <login-module code="org.jboss.security.auth.spi.DatabaseServerLoginModule" flag="required"> 
     <module-option name="dsJndiName">java:/yourDataSource</module-option> 
     <module-option name="principalsQuery">select password from users where userid = ?</module-option> 
     <module-option name="rolesQuery">select role, 'Roles' from roles where userid = ?</module-option> 
    </login-module> 
    </authentication> 
</application-policy> 

您还应该创建适当的数据源,并把数据库库到lib目录。

我可以通过管理控制台吗?

我不知道是否可以使用Web控制台进行这些更改。

在JBoss中,我想出了如何创建 数据库连接(刚刚创建 数据源),但在Glassfish的我也 设立的JavaMail会话在Glassfish的 使用JNDI,邮件主机,传输 协议。 ..,我可以移植到 JBoss以及?

JBoss使用默认数据库来存储一些信息。如果您想要更改简单的方法是使用DefaultDS名称定义新数据源并删除deploy/hsqldb-ds.xml文件。

在JBoss 6中,他们改变了JMS提供者,它也使用自己的DB来传递一些信息,我不知道是否以及如何改变它。

相关问题