JBossAS7.1にデプロイされるJavaEE6でWebアプリケーションを構築しています
Beanレベル(@RolesAllowed({ "useradmin", "usernormal" })
アノテーションを使用)およびフロントエンドレベル(web.xml内のxthtmページの保護)でセキュリティを使用しています。
認証は、ユーザー管理またはLDAPを使用してJBossで行われます(standalone.xmlの設定変更のみ)。
セキュリティフレームワーク全体が完全に機能していますが、あえて言うと...
問題
JavaEEを使用するスケジューラーもありますTimerService
。さまざまなタイプのジョブを受け入れることができ、後でスケジュールすることができます(スケジューラーの元の機能...)。
@RolesAllowed
アノテーションを使用して保護されているいくつかのビジネスロジックBeanを使用するジョブをスケジューラーが実行する必要がある場合、問題が発生し始めます。その場合、セキュリティフレームワークはその役割を果たし、スケジューラへのアクセスを拒否します。
質問
スケジューラを含むBeanにプログラムでセキュリティ特権を与える方法はありますか?
スケジューラーのhttpセッションを偽造することは可能ですか?
もしそうなら、ログイン/パスワードを保存するためのベストプラクティスは何ですか?それらを静的変数にハードコーディングするのはかなり悪いことだと思います...