My web application is using Spring MVC. Each user has multiple roles. Each role has an access level.The access level defines whether user has access to particular screen or not. Also it defines that on a particular screen which fields it can modify, so based on access level a field can be disabled or enabled.
The relationship between access level, screen and fields is defined in a table right now. Which is really complicated and the only way to Add, remove , update is through scripts.