After working in MS Access for as many years as we have most of our applications using a combination of MDB encryption and custom MDW workgroup files. Our blank encrypted database template allowed us to set groups, users, and detailed permissions on both data (if stored in Access) and all screens, modules, reports, and other objects. Building the framework took quite a long time, but we had a very good permissions design. User levels prevented changes to the system, except where we specifically designed them.
New versions of MS Access, 2007 and 2010, have changed all that. Not necessarily for the good either.
Access files now only support a single password, for all users. Encryption is better, but once a user is logged in system changes can be made by anyone.
It follows the new direction of Microsoft. Data should be stored in SQL Server or Sharepoint. That’s the stated recommendation. That we agree with, even though there are many times saving data in Access tables makes perfect sense.
However we do need to prevent users from making any mistaken changes to the structure. And that is now more time consuming.
The methods are to set Access to not display any internal features, block the Ribbons, and then create custom menu’s or Ribbons. Replacing the Ribbons correctly is not an easy task. To date Microsoft has not provided any developers tools and pretty much requires XML code.
We do have several third party utilities, and old fashion hand coded XML, that helps. I’m not complaining since this is why companies hire us. But next time we document specs a new line item will be needed.