IT Asset Management is a Windows Forms application for tracking IT assets and running vulnerability audits against a SQL Server database. It supports role-based access, asset registration, employee assignment, and security reporting for vulnerable endpoints.
| Login | Dashboard |
|---|---|
![]() |
![]() |
| Add Asset | Vulnerability Audit |
|---|---|
![]() |
![]() |
- Secure login with SHA-256 password hashing
- Role-based access control:
- Admin: add, delete, and manage assets
- Auditor: run vulnerability audits and export reports
- ReadOnly: view-only access
- Asset management for:
- Laptops
- Routers
- Employee assignment for assets
- Vulnerability detection based on deprecated operating systems
- Security status calculation per asset type
- Audit results with severity highlighting
- Export audit reports to text files
- C# / WinForms
- .NET Framework 4.7.2
- SQL Server Express
- ADO.NET (
System.Data.SqlClient)
Program.cs- application entry pointForms/- UI screens for login, assets, and auditsBusinessLogic/- asset models and security rulesDataAccess/- SQL Server access and audit queriesDatabaseSchema.sql- database creation and seed dataApp.config- connection string and app settings
- Install SQL Server Express or another compatible SQL Server instance.
- Open
DatabaseSchema.sqlin SQL Server Management Studio. - Run the script to create:
ITAssetManagementDBtbl_Userstbl_Employeestbl_Assetstbl_Vulnerabilities
- Update
App.configif your SQL Server instance name is different:
<add name="ITAssetManagementDB"
connectionString="Server=.\SQLEXPRESS;Database=ITAssetManagementDB;Integrated Security=True;TrustServerCertificate=True;"
providerName="System.Data.SqlClient" />- Open
ITAssetManagement.slnxin Visual Studio. - Restore/build the solution.
- Make sure the database is created and seeded.
- Start the app.
The schema script includes:
- sample users
- sample employees
- sample assets
- sample vulnerability definitions
- Users log in through
LoginForm. - Admins can add or delete assets from
MainForm. - Asset details are stored in SQL Server.
AuditFormfinds assets whose OS versions match known vulnerable versions and shows severity levels.- Audit reports can be exported to a
.txtfile.
The application uses built-in rules in the asset models:
- Laptop: checks for deprecated OS versions, disk encryption, and corporate management
- Router: checks for default credentials, firewall status, and firmware tracking
- Passwords are hashed with unsalted SHA-256 (
BusinessLogic/SecurityHelper.cs). This is fine for a local demo/portfolio project, but a production system should use a salted, adaptive hash (e.g. PBKDF2, bcrypt, or Argon2) instead. - Security rules (deprecated OS lists, encryption/firewall checks) are hardcoded in the asset models rather than configurable.
- Add screenshot-based asset inventory
- Support edit/update asset workflows
- Add richer report export formats such as PDF or CSV
- Replace hardcoded security rules with configurable policies
- Move password hashing to a salted, adaptive algorithm (see Known Limitations)
MIT — see LICENSE.



