2012-03-20 8 views
2

私は、最近人気のあるJavaセキュリティフレームワーク(Spring SecurityとApache Shiro)についていくつかの研究を行ってきました。私は両方のフレームワークがキャッシュをサポートしていることに気づいた。 アパッチ四郎も、そのモジュールを記述:セキュリティ情報をキャッシュするのは安全ですか?

キャッシングは セキュリティ操作を迅速かつ効率的なままであることを保証するようにApache史郎のAPIでの最初の層の市民です。私の質問があり

  • は、インスタンスEhcacheのためにセキュリティ情報をキャッシュすることは安全ですか?
  • これは一般的なアプローチですか?
  • セキュリティに関して効率性について考えるべきでしょうか?
  • なぜ危険ですか?

答えて

1

httpsで送信されたコンテンツをブラウザがキャッシュすると、暗号化された状態で保存されます。キーはメモリに保存され、ブラウザが閉じられるとキャッシュとキーは削除されます。主な脅威はスパイウェアであり、スパイウェアはおそらくブラウザのメモリを読み取って暗号化に使用された鍵にアクセスする可能性があります。しかし、それは何よりも優れています。

状況はサーバー側で少し異なります。攻撃者はキャッシュストアにどのようにアクセスする必要がありますか?マシンが侵害された場合、鍵を格納する場所はありません。 Webサーバーが侵害されない限り、キャッシュにアクセスできないようにします。このシナリオでは、暗号化がまったく役に立たないとは思いません。

+0

私はJavaセキュリティフレームワークについて言及したので、私の質問はサーバー側に関するものでした。 –

+0

@Maciej Ziarko ...それは覆われた。私は例としてブラウザを使用しました。 – rook

+0

だから私はあなたの答えをアップアップしました:-) –

1

をすべてメモリにキャッシュすると、は安全だと思います。問題は、ehcacheがデータをディスクに保存し、誰かがマシンにアクセスできることです。

生産時に誰もサーバーにアクセスできません。 (ただし、管理者/デプロイヤーのみがデータベース、アプリケーションサーバー、ログなどに直接アクセスできます(アプリケーションをデバッグすることができます:))。しかし、すべての人が信頼されています)

サーバーサイドにキャッシュする場合は、それを行います。

関連する問題