私のアプリケーションは、jdbcRealm を使用して Glassfish 3.1 で実行されており、その認証と承認です。このアプリを JBoss 6 に移植したいと考えています。JBoss 6 内に、Glassfish3 のようにデータベースの USER テーブルにマップする jdbcRealm を作成できますか? 管理コンソールから実行できますか? jndi
JBoss では、データベース接続を作成する方法を (データソースを作成するだけで) 理解しましたが、Glassfishではmail-host
、Glassfish で JavaMail セッションをセットアップしましtransport protocol
た。
1 に答える
ご質問への回答:
データベースの USER テーブルにマップする Glassfish3 のように JBoss 6 内に jdbcRealm を作成できますか?
私が正しく理解していれば、データベースを使用してユーザーを認証しますか?
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では、Glassfishでjndi、メールホスト、トランスポートプロトコルを使用してJavaMailセッションをセットアップしました...、それをJBossに移植できますか良い?
JBoss はデフォルトのデータベースを使用していくつかの情報を保存します。それを変更したい場合は、その名前で新しいデータ ソースを定義し、ファイルDefaultDS
を削除するのが最も簡単な方法です。deploy/hsqldb-ds.xml
JBoss 6 では、JMS プロバイダーが変更され、独自の DB を使用して情報が格納されますが、変更するかどうか、および変更する方法はわかりません。