A secure database-driven system for managing student academic records while enforcing advanced Database Security concepts including RBAC, MLS, Flow Control, Inference Control, Encryption, and Role Request Management.
Developed as part of the Database Security Course.
SSRMS is a secure academic management system that protects sensitive student information such as:
- Student Profiles
- Grades
- Attendance Records
- User Accounts
- Course Information
The project demonstrates the practical implementation of multiple database security models using Microsoft SQL Server.
- Secure Login System
- Password Hashing
- User Authentication
- Role-Based Access Control (RBAC)
The system supports five different roles:
| Role | Permissions |
|---|---|
| Admin | Full Access |
| Instructor | Manage Grades & Attendance |
| TA | Attendance Management |
| Student | View Own Data |
| Guest | View Public Information |
- SQL Roles
- GRANT / REVOKE / DENY
- Role-based GUI restrictions
- Permission verification
Implemented using Bell-LaPadula Model:
- No Read Up (NRU)
- No Write Down (NWD)
Security Levels:
- Top Secret
- Secret
- Confidential
- Unclassified
- Restricted Views
- Query Set Size Control
- Protection Against Data Disclosure
- Prevents unauthorized movement of classified data
- Blocks data leakage between security levels
Sensitive information is encrypted using AES:
- Passwords
- Student IDs
- Phone Numbers
- Grades
- Students
- Instructors
- Courses
- Grades
- Attendance
- Users
- RoleRequests
| Function | Admin | Instructor | TA | Student | Guest |
|---|---|---|---|---|---|
| View Profile | ✅ | ✅ | ✅ | ✅ | ❌ |
| Edit Profile | ✅ | ✅ | ✅ | ❌ | ❌ |
| View Grades | ✅ | ✅ | ❌ | ❌ | ❌ |
| Edit Grades | ✅ | ✅ | ❌ | ❌ | ❌ |
| View Attendance | ✅ | ✅ | ✅ | Own Only | ❌ |
| Manage Users | ✅ | ❌ | ❌ | ❌ | ❌ |
| View Courses | ✅ | ✅ | ✅ | ✅ | ✅ |
Students can request role upgrades:
- Student → TA
- TA → Instructor
- User submits a request.
- Request is stored in RoleRequests table.
- Status becomes Pending.
- Admin reviews the request.
- Admin approves or denies.
- User role is updated if approved.
- Microsoft SQL Server
- Stored Procedures
- Views
- Triggers
- SQL Roles
- GUI Application
- SQL Server Integration
- RBAC
- MLS
- AES Encryption
- Flow Control
- Inference Control
SSRMS
│
├── Database
│ ├── Tables.sql
│ ├── Views.sql
│ ├── Procedures.sql
│ ├── Roles.sql
│
├── GUI
│
├── Documentation
│
├── Screenshots
│
└── README.md
This project demonstrates:
- Database Design
- SQL Server Security
- Access Control Models
- Data Encryption
- Secure Authentication
- Security-Aware System Design
Database Security Course Project
Faculty of Computer Science and Information Technology
Helwan National University
✔ Role-Based Access Control (RBAC)
✔ Multi-Level Security (MLS)
✔ Inference Control
✔ Flow Control
✔ AES Encryption
✔ Secure Authentication
✔ Role Upgrade Workflow
✔ SQL Server Implementation