There are good security reasons not to share information about other people's permissions--are you sure that's what you want to do?
If that's what you want, you're going to have to write some code. Access won't let a user see another user's permissions, and your code is normally limited to what your user can do. To get around that, you'll have to create a private DAO Workspace object, and use it to log in as an administrator. The downside is that to do this, you'll have to record the administrator's password somewhere, most likely in the database. To keep it safe from compromise, you'll need to encrypt the database, and make sure that whatever it's recorded in (a table or a module) is not reachable in the application by anybody other than your code.
Once you've created the administrator's Workspace, you can open a Database object on it and use that to access the Document objects to get the permissions bits via the AllPermissions properties. Then you'll have to interpret the permissions bits into text for the report. This is all very tedious and complicated. I hope you can use some of the code from the Security Manager.
BTW, you can only get permissions informations for users and groups defined in the current workgroup (.mdw file). If your security is set up for users in different workgroups, you'll have to log on separately using each workgroup to get all the permissions. (The reason is that user and group names aren't stored in the database, they're stored in the workgroup file, so you have no way of knowing who the permissions belong to if you're not connected to the workgroup they're defined in. Since a program has to ask for the permissions by providing the user or group name, you'll never see the permissions for a user or group not defined in the current workgroup.) Rick Sprague
Want the best answers? See faq181-2886
To write a program from scratch, first create the universe. - Paraphrased from Albert Einstein