UBU Finance Frontend Application Documentation
Introduction
This documentation provides a comprehensive overview of the User Management features in the UBU Finance Frontend application. The application implements a sophisticated role-based access control (RBAC) system where:
- Users are assigned specific roles
- Roles are created and assigned with specific permissions
- Permissions determine access to application features
- Features are only accessible to users with roles containing the required permissions
- Organization units provide additional access control layer
This hierarchical structure ensures secure and controlled access to system features while maintaining clear separation of responsibilities and access levels.
Authentication Flow
Login
- Users must provide user Code (5 uppercase letters)
- Users must provide Password (minimum 8 characters)
- System validates credentials
- Upon successful validation, OTP is sent to registered email
OTP Verification
- User receives OTP via email
- Must enter OTP within specified time limit
- System validates OTP
- Upon successful verification, user is redirected to dashboard
User Creation and Role Assignment Flow
Initial User Setup
User Creation
- User with
Create Users permission creates new user and assigns a role
- System generates username and password
- Credentials are sent to user's email
- User must change password on first login
Application Features and Access Control
Dashboard
| Aspect |
Description |
| Permission |
No specific permission required |
| Functionality |
View system overview and key metrics |
| Access |
Available after successful login and OTP verification |
User Management
View Users List Feature
| Aspect |
Description |
| Permission |
View Users |
| Functionality |
View users list |
| Access |
User Management Sidebar button |
Create New User Feature
| Aspect |
Description |
| Permission |
Create Users |
| Functionality |
Add new users to the system |
| Access |
User Management sidebar button, then create user tab |
Edit User Details Feature
| Aspect |
Description |
| Permission |
Update User |
| Functionality |
Modify user information |
| Access |
Edit button on user row in users list |
Manage User Status Feature
| Aspect |
Description |
| Permission |
Update User Status |
| Functionality |
Activate/deactivate user accounts |
| Access |
Status toggle on user row |
Two-Factor Authentication Management Feature
| Aspect |
Description |
| Permission |
Update Two-Factor Authentication |
| Functionality |
Enable/disable 2FA for users |
| Access |
2FA toggle on user row |
Password Reset Feature
| Aspect |
Description |
| Permission |
Reset Password |
| Functionality |
Reset user password |
| Access |
Reset Password button on user row |
| Aspect |
Description |
| Permission |
View User Profile |
| Functionality |
View user profile details |
| Access |
Profile button on user row |
Roles Management
View Roles Feature
| Aspect |
Description |
| Permission |
View Role Permissions |
| Functionality |
View list of all roles |
| Access |
Roles sidebar button |
Create New Role Feature
| Aspect |
Description |
| Permission |
Create Roles |
| Functionality |
Add new roles to the system |
| Access |
Add New Role button on all roles page |
Delete Role Feature
| Aspect |
Description |
| Permission |
Delete Role |
| Functionality |
Remove roles from the system |
| Access |
Delete button on role row |
Permission Categories
View Categories Feature
| Aspect |
Description |
| Permission |
View Roles |
| Functionality |
View all permission categories |
| Access |
Permission Categories sidebar button |
Permissions Management
View Permissions Feature
| Aspect |
Description |
| Permission |
View Permission |
| Functionality |
View all available permissions |
| Access |
Permissions Management sidebar button |
Assign Permission Feature
| Aspect |
Description |
| Permission |
Assign Permission to Role |
| Functionality |
Assign permissions to roles |
| Access |
Assign Permission button on Permissions list |
Remove Permissions Feature
| Aspect |
Description |
| Permission |
Remove Permission from Role |
| Functionality |
Remove permissions from roles |
| Access |
Assign Permission button, then Remove Permission button on assign permission |
Organization Units
View Units Feature
| Aspect |
Description |
| Permission |
View Organizational Units |
| Functionality |
View organizational units and their descriptions |
| Access |
Organization Units sidebar button |
Create New Organizational Unit Feature
| Aspect |
Description |
| Permission |
Create Organizational Unit |
| Functionality |
Add new organizational unit |
| Access |
Add New Organization button on all organizational units page |
Edit Organizational Unit Details Feature
| Aspect |
Description |
| Permission |
Update Organizational Unit |
| Functionality |
Modify unit information |
| Access |
Edit button on unit row |
Delete Organizational Unit Feature
| Aspect |
Description |
| Permission |
Delete Organizational Unit |
| Functionality |
Remove units |
| Access |
Delete button on unit row |
User Profile
View Profile Feature
| Aspect |
Description |
| Permission |
View Own Profile |
| Functionality |
View personal information |
| Access |
Profile sidebar button |
Change Password Feature
| Aspect |
Description |
| Permission |
Change Own Password |
| Functionality |
Update personal password |
| Access |
Change Password button |
Translations
View Translations Management Feature
| Aspect |
Description |
| Permission |
Translation |
| Functionality |
View all language translations |
| Access |
Translations sidebar button |
Add Translation Feature
| Aspect |
Description |
| Permission |
Translation |
| Functionality |
Add new language keys |
| Access |
Add Translation button on all translations page |
Update Translation Feature
| Aspect |
Description |
| Permission |
Translation |
| Functionality |
Update translation content |
| Access |
Edit button on translation row |
Delete Translation Feature
| Aspect |
Description |
| Permission |
Translation |
| Functionality |
Delete language keys |
| Access |
Delete button on translation row |
Access Logs
View Logs Feature
| Aspect |
Description |
| Permission |
Audit Log |
| Functionality |
View system activity logs |
| Access |
Access Logs sidebar button |
Filter Logs Feature
| Aspect |
Description |
| Permission |
Audit Log |
| Functionality |
Filter logs by various criteria |
| Access |
Filter options in Access Logs page |
Common Features Across All Routes
Authentication & Authorization
- All routes require valid authentication
- Permission-based access control
- Two-factor authentication support
- Session management with automatic logout on session expiry
- Automatic logout after 3 minutes with no interaction with the system
User Interface
- Responsive tables with search functionality
- Form validation with error messages
- Toast notifications for action feedback
- Confirmation dialogs for critical actions
- Loading states for async operations
Data Management
- Real-time data updates
- Optimistic UI updates
- Form validation
- Error handling with user feedback
Internationalization
- Multi-language support
- Dynamic translation loading
- Language switching capability