1

レガシー システム用に独自の JCA->EIS アダプタを作成しました。古いシステムへの接続中に認証に問題があります。

これを説明するのはかなり難しいです。GlassFish v3.1.1 では、独自の JCA アダプタを作成してインストールすると、「Work Security Maps」というタブが表示されます。これは、EIS システムのユーザー名/パスワードを入力する唯一の場所のようです。匿名 (認証されていない) ユーザーで EJB を実行したいのですが、EIS パスワードを入力するには、グループまたはユーザー マッピングを指定する必要があるようです。

JCAアダプタのすべての呼び出しを同じユーザー名/パスワードでEISシステムにヒットさせる方法はありますか?

望ましい動作は、JDBC の動作に似ています。データベースには 1 つのユーザー名/パスワードがあります。私のアプリケーションにはデータソースが挿入されていますが、現在のユーザーをデータベース ユーザーにマップする必要はありません。

編集: 最初の回答で説明したように、config-properties を使用してこれを実装できます。ただし、JCA 仕様によると、これが正しい方法だとは思いません。Websphere では、サブジェクトを呼び出すときに、JAAS クレデンシャルを「コンポーネント管理認証エイリアス」として割り当てることができます。

GlassFish ではこれができないようです。Subject.getPrivateCredentials(PasswordCredential.class) を呼び出すと、空の文字列を含む一連の資格情報が返されます。

4

2 に答える 2

1

JDBC RA (または最近使用した ActiveMQ RA) では、リソース アダプターのプロパティ (ra.xml の config-property) でユーザー名とパスワードを設定します。リソース アダプタで同様の方法で実装することをお勧めします。

于 2011-12-22T15:51:48.830 に答える