一般的な問題:クラス/メソッド属性を使用して、.NETアプリケーション(WCFアプリケーションなど)にユーザーアクセス権の差別化システムを実装するにはどうすればよいですか?
だから、私たちは持っています:
- ユーザーのセット
- 一連の役割(たとえば、enum
Role
) - すべてのユーザーには、独自の役割のセットがあります。
すべてのクラス/メソッドを特定の役割に指定できます。
[AuthorizationAttribute(Roles = new Role [] {Role.Admin})] public class UserService:IUserService {
}
ユーザーのロールのセットにこのロールが含まれていない場合、ユーザーはメソッドにアクセスできないようにする必要があります。
アップデート。問題の説明をより明確にするように努めました。Aktonのソリューションは、この問題に適しています。