Initial commit with inital CMS
This commit is contained in:
+47
@@ -0,0 +1,47 @@
|
||||
# Component Methods — SlpModularCms.Api
|
||||
|
||||
Dit document specificeert de belangrijkste methoden en interfaces per component.
|
||||
|
||||
## 1. IModule Interface (Core)
|
||||
Alle modules moeten deze interface implementeren om geregistreerd te kunnen worden.
|
||||
|
||||
- `void RegisterServices(IServiceCollection services)`
|
||||
- Registreert module-specifieke services in de DI container.
|
||||
- `void ConfigureMiddleware(IApplicationBuilder app)`
|
||||
- Configureert module-specifieke middleware (optioneel).
|
||||
|
||||
## 2. IAvailabilityService (Core Interface, Availability Implementatie)
|
||||
Interface voor de beschikbaarheidscontrole.
|
||||
|
||||
- `Task<bool> IsAvailableAsync()`
|
||||
- Retourneert of het systeem/module beschikbaar is.
|
||||
- `Task<AvailabilityDetails> GetDetailsAsync()`
|
||||
- Geeft gedetailleerde statusinformatie terug (toekomstig).
|
||||
|
||||
## 3. IAuthService (Identity - Core)
|
||||
Afhandeling van authenticatie.
|
||||
|
||||
- `Task<AuthResult> LoginAsync(LoginRequest request)`
|
||||
- Valideert credentials en geeft tokens terug.
|
||||
- `Task<AuthResult> RefreshTokenAsync(RefreshRequest request)`
|
||||
- Vernieuwt een sessie met een refresh token.
|
||||
|
||||
## 4. IUserService (Identity - Core)
|
||||
Beheer van gebruikers accounts.
|
||||
|
||||
- `Task<UserDto> CreateUserAsync(CreateUserRequest request)`
|
||||
- Maakt een nieuwe gebruiker aan (alleen voor Admin/Owner).
|
||||
- `Task<IEnumerable<UserDto>> GetAllUsersAsync()`
|
||||
- Lijst met alle gebruikers (alleen voor Admin/Owner).
|
||||
- `Task UpdateUserRoleAsync(Guid userId, string newRole)`
|
||||
- Wijzigt een rol (met hiërarchische validatie).
|
||||
- `Task DeleteUserAsync(Guid userId)`
|
||||
- Verwijdert een gebruiker (voorkomt verwijdering Owner).
|
||||
- `Task SetModulePermissionAsync(Guid userId, string moduleName, bool hasAccess)`
|
||||
- Kent module-specifieke rechten toe aan een gebruiker.
|
||||
|
||||
## 5. Authorization Handlers (Identity - Core)
|
||||
Technisch mechanisme voor RBAC.
|
||||
|
||||
- `HandleRequirementAsync(AuthorizationHandlerContext context, HierarchyRequirement requirement)`
|
||||
- Valideert of de gebruiker de vereiste rol heeft op basis van de hiërarchie (Owner > Admin > User).
|
||||
Reference in New Issue
Block a user