2

Webアプリ(JSF 2.1 +休止状態)のコンテナー管理セキュリティレルムを設定しようとしています。Tomcat7は一度に1つのタイプのレルムしか使用できないことに気づきました。

NetBeans(7.0)でTomcatを使用するには、manager-scriptロールのアカウントを作成する必要があります。Tomcatマネージャーでの作業に加えて、別の役割も必要です。JDBCRealmに使用しているテーブルは、ユーザーとロールを格納する実際のテーブルからのビューであり、プログラムが使用する同じデータベースに両方のロールを格納したくないため、これは私にとって大きな問題です。

JDBCRealmとUserDBRealmを連携させる方法はありますか?それは安心でしょう。

server.configのコードは次のとおりです。

<Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>

<Realm className="org.apache.catalina.realm.JDBCRealm"
    driverName="org.gjt.mm.mysql.Driver"
    connectionURL="jdbc:mysql://localhost:3306/realm?user=login&amp;password=pass" 
    userTable="users"
    userNameCol="user_name"
    userCredCol="user_pass"
    userRoleTable="user_roles" 
    roleNameCol="role_name" /> 

tomcatは、ファイル内で最後に見つけたものだけを使用します。それらは別々にうまく機能します

4

1 に答える 1

1

CombinedRealmdocjavadoc)を使用します。

1つ以上のレルムを含むレルムの実装。構成された順序で、レルムごとに認証が試行されます。いずれかのレルムがユーザーを認証すると、認証は成功します。レルムを組み合わせる場合、ユーザー名は結合されたすべてのレルムで一意である必要があります。

おそらく、のサブクラスであり、Tomcatのデフォルト設定にあるLockOutRealmdocjavadoc )をすでに使用しています。CombinedRealm

于 2011-11-08T21:29:35.527 に答える