私の将来のWebアプリケーションでは、多くのユーザー役割が存在します。ユーザーの役割に応じて、webappはユーザーの特定の情報へのアクセスを制限する必要があります。私は、以下の機能を実装する必要があります。役割に応じてロールベースのセキュリティを維持するための複雑なソリューション
- 役割に応じて、ユーザーが現在の役割のために利用できる(データグリッド内)のみの列と行が表示されるはずですし、ユーザー
- を、ユーザーが読み取り専用でページを表示する必要がありまたは役割に応じて編集可能モード
- で、ユーザは、ウェブページ上でこのような問題分離コードファイルに多くの条件付き演算子を使用して解決した(非常に簡単だった)私の以前のアプリケーションでは
を表示/非表示になっいくつかのコントロールを持っている必要がありますマークアップファイルでも使用できます。そのようなコードを維持することは非常に困難でした。
私は、IFでコードを壊さずに、あらゆるレベルのアプリケーション(データ、ロジック、ビュー)のロールベースのセキュリティを維持するための複雑なソリューションがあるのだろうかと思います。
psの両方は、Javaと.NETプラットフォーム向けのソリューションは、ポイント1について
DAOでどのように実装しましたか? 好きではない:? if(userRole == 'admin'){} if(userRole == 'role1'){} .. if(userRole == 'role'){} まだビューがどのように表示されるかに問題がありますon role – kilonet
私のデータ層はLinqToSQLに基づいており、読み込み専用の場合は、where句を使用して結果をその特定のユーザに属する行に限定します。書き込みは少し複雑で、私のアプローチはLinqなしではうまくいかないかもしれませんが、行の所有者によるデータベース操作を制限するために、update/deleteクエリに追加のwhere句を追加することでこれにアプローチすることもできます。 –