Security in Access is based on the workgroup model, which is conceptually similar to the user-level security model employed by the Windows operating system. In contrast to database-level security models employed by other desktop database systems, Jet workgroup information is stored in a file that can reside on a network share. Using this approach, the same security system can be shared by many databases, rather than having to create a separate security system for every instance of your database. Using this approach, you simplify security maintenance by adding or removing users and groups, or changing permissions in one centralized file.
Microsoft Jet security is always present and always enabled; it is not something that can be disabled. You just don't notice it because of the default workgroup and several default users and groups.
Because DAO acts only as an interface to Jet security, a detailed discussion of the Jet security model is beyond the scope of this book. For those who want to learn about Jet security in greater detail, there are already several excellent books on the subject that you can read. Therefore, I will restrict this chapter to discussing those aspects of the DAO object model that directly relate to Jet security; specifically how to manage Jet users, groups, and permissions in code.
DAO deals with Jet security in two ways. First, the Workspace object maintains two security-related collections: Groups and Users. Each Group object maintains a Users collection that contains information about all the users who belong to that group. Similarly, each User object contains a Groups collection that lists the groups to which that user belongs. Second, Access and Jet objects (for example, tables, forms, and so on) each have a Permission object that stores information about the permissions a user has to that object.
Was this article helpful?