1

私は、Spring(およびSpring Security)、Struts2、およびHibernateを使用してJavaでWebアプリケーションを構築しています。

すべての「ユーザー」は「クライアント」に属しています。また、ユーザーがログインしたときに、「クライアント」のリソースにのみアクセスできるように設計する必要があります。

もともと、ウェブアプリは「クライアント」なしで構築されていました。Webアプリの特定のモジュールへのROLEベースのアクセス権を持つロールを持つユーザーのみ。

これらの役割は継続するものとします。唯一の違いは、ユーザーがクライアントリソースのみに制限されることです。クライアント内では、実行できることと実行できないことを説明するROLEベースのアクセス権があります。

アーキテクチャに関しては、ManagerとDaoを使用したかなり標準的なWebアプリがあります。では、これに対する最良のアーキテクチャアプローチは何ですか?

ご入力いただきありがとうございます。

4

1 に答える 1

0

私は似たような働きをしています。たとえば、デフォルトのUserDetailsに「clientId」追加属性を追加して(まだカスタマイズされていない場合)、ユーザーがログに記録されると、アプリケーションはユーザーが属しているクライアントを認識します。

ユーザーがアクションを実行する場合、アプリケーションはuserDetailsから「clientId」を取得し、このIDに従ってアクションを実行する必要があります。問題、DAOメソッド(およびテーブル)の多くは、パラメーターとしてclientIdを持っている必要があります。

このソリューションは、ロールには影響しません。

于 2012-05-07T17:26:35.653 に答える