1

MVC 4 アプリケーションに動的メニュー システムがあります。Complete メニュー オブジェクトは、すべてのユーザーで同じです。そのため、アプリケーション キャッシュに保存します。キャッシュは取得元のデータ ソースに依存します。

現在、メニューは動的であるため、現在のユーザーがアクセスできない (許可されていない) メニュー項目は除外されます。しかし、ユーザーがページを要求するたびにこのフィルター コードを実行したくありません。したがって、私の計画はそれを Session オブジェクトに保存することです。セッションを使用せずにこれを行うより良い方法はありますか?

4

1 に答える 1

1

セキュリティの観点から、そのフィルタ ロジックをまったくキャッシュしないでください。ログイン中にユーザーのアクセス許可を変更した場合 (たとえば、何らかの違反のために完全に取り消した場合)、ユーザーがログアウトして再度ログインを試行するまで、取り消しは実際には有効になりません。

ただし、アクセス許可を頻繁に変更せず、セキュリティが上記のように重要でない場合は、単にセッションを使用するだけで十分です (ただし、私はセッション嫌いなので、個人的にはロジックを再実行します)。

于 2013-10-02T10:47:16.633 に答える