M
Medhat Nasr
Hi all,
I have 4 MS Access .ade projects. Each of these .ades connects to the same centralized SQL Server database and performs its own specialized activities on the relevant portion of the database.
Each .ade has its own Login Form to the Server and the Database using either Windows or SQL Server Authentication.
Further, I used the following additional routine to decide each user permitted activities on the data (Edit, Add, or ReadOnly):
1. The user should provide a specific Password within a Dialog Form to open the selected Form in the selected –data- mode (Edit, Add, or ReadOnly).
2. The required Password to open any Form in a specific –data- mode is stored in a Table within the Database – which is to be DLooked up in VBA code, and the required password is to be assigned temporarily to a Public Variable on which the user input is to be verified.
3. If the Password entered by the user in the Dialog Form matches the Public Variable value, then, the Form selected by the user will open in the selected –data- mode, otherwise, the user will get an Error message.
4. For this VBA code to work, users must be granted – at least - the SELECT Permission on the “PassWords” Table. And to do that without enabling users to open the “PassWords” Table and view all the Pass Words stored there, it was planned that every user should only have MS Access runtime installed on his machine.
My question is: In case that any user could have the full version of MS Access installed on his machine, is it possible to manipulate in code - the current user permission on the “PassWords” Table, so that he is temporarily granted the necessary SELECT permission only when the VBA DLookup Method is needed to run and then, just after the required password value is assigned to the Public Variable, this permission is taken back, so that the user can’t open the “PassWords” Table.
Thanks for being my favorite group.
I have 4 MS Access .ade projects. Each of these .ades connects to the same centralized SQL Server database and performs its own specialized activities on the relevant portion of the database.
Each .ade has its own Login Form to the Server and the Database using either Windows or SQL Server Authentication.
Further, I used the following additional routine to decide each user permitted activities on the data (Edit, Add, or ReadOnly):
1. The user should provide a specific Password within a Dialog Form to open the selected Form in the selected –data- mode (Edit, Add, or ReadOnly).
2. The required Password to open any Form in a specific –data- mode is stored in a Table within the Database – which is to be DLooked up in VBA code, and the required password is to be assigned temporarily to a Public Variable on which the user input is to be verified.
3. If the Password entered by the user in the Dialog Form matches the Public Variable value, then, the Form selected by the user will open in the selected –data- mode, otherwise, the user will get an Error message.
4. For this VBA code to work, users must be granted – at least - the SELECT Permission on the “PassWords” Table. And to do that without enabling users to open the “PassWords” Table and view all the Pass Words stored there, it was planned that every user should only have MS Access runtime installed on his machine.
My question is: In case that any user could have the full version of MS Access installed on his machine, is it possible to manipulate in code - the current user permission on the “PassWords” Table, so that he is temporarily granted the necessary SELECT permission only when the VBA DLookup Method is needed to run and then, just after the required password value is assigned to the Public Variable, this permission is taken back, so that the user can’t open the “PassWords” Table.
Thanks for being my favorite group.