We are currently building an architecture for a thin client application. It must meet two basic requirements:
- The application must have a module design. Each module can have (and actually have) its own role system.
- Later, the application must be adapted to work with various databases on different machines.
We believe that Asp.NET MVC 3 is the appropriate platform for this task. To manage application data, we chose the latest version of the Entity Framework - its Data Providers batch and the Code First feature can save us a lot of time.
The part we are involved with is the user / role management system. We need to have some section of Global Administration to add users and give them access to the modules (only global admins can add users to the system, support "guy from the street" is not supported), and each module has its own administration section with its own administrators and roles. We already have a data model for storing everything that we need in an appropriate way, but we do not know how to properly access this data from the application.
Currently, we see two possible ways to solve this problem:
- To write your own membership providers and roles based on our DAL. None of our team has done this before, so weβre not sure if itβs worth it. The membership provider cannot offer such flexibility as applications, so some cries will be required.
- To break through some obsolete books to find out how the website administration system was organized before the membership providers were created where they were created.
Both of these methods are not elegant and not obvious to us, and it is not an easy question, which way to choose. We also believe that this may be a different solution (the reason for the architecture may be affected). Thus, we would be glad to see any suggestions related to this problem.
yauheni_selivonchyk
source share