サービス層として EJB 3 アプリケーションを使用し、クライアントとして Tapestry 5 Web アプリケーションを使用しています。EJB は、Web アプリで使用するためのセッション ファサードを提供する必要があります。
EJB レイヤーで定義された操作を実行するには、ユーザーは Web インターフェースからログインする必要があります。エンティティー・レベルのセキュリティーが必要なので、ここでは Java EE 宣言型セキュリティーはほとんど役に立ちません。
この種のセットアップでセキュリティを実装するにはどうすればよいですか? クライアントを切り替える場合に備えて、EJB レイヤーに実装してから、Web アプリに実装したいと考えています。
Web アプリで http セッションを使用してユーザー セッションを保存し、ステートレス EJB 呼び出しごとに User オブジェクトを渡すことができます。
public void doStuff(params, User user);
ステートフル セッション Bean はここでの解決策ですか?
編集:エンティティレベルのセキュリティとは、行レベルのセキュリティを意味します。