Perhaps
In addition to creating an accde and other steps, why not create a custom ribbon that doesn't include those functions you don't want available?The user does not need to but they still can click the link table wizard.
This what I'm try to prevent. I want to disable the link table/external data button.
Of course I didn't even think of thatwhy not create a custom ribbon that doesn't include those functions you don't want available?
Yes, you made a point that I didn't even consider. Someone can open up a blank access file and try to link to the server. How do you normally deal with that?As I said, locking down your application, while good practice, will not actually solve the problem if you are worried that the users are smart enough to create a new, empty Access app and just try to link to the SQL Server tables.
You could break their fingers so they can't use a keyboard.Yes, you made a point that I didn't even consider. Someone can open up a blank access file and try to link to the server. How do you normally deal with that?
Well one time, I linked to a clocking machine system table and changed my credentials to admin and I was able to make changes to the clock in/out data.What is your obsession with hiding the system tables? The users can't do any damage with those.
A question if you don’t mind.One way to handle this is to not use Windows authentication but instead to create a separate account for each user. Use the user's own login ID but use a different password. You can use code to generate a password that you can reconstruct based on user info plus some known characters. Then, the app logs on when the user opens the app and uses the reconstructed password.
As I suggested, this is only partly an IT problem....Well one time, I linked to a clocking machine system table and changed my credentials to admin and I was able to make changes to the clock in/out data.
The IT Department controls were sub-par at best.
Where can I find some tutorials?You can always link the tables on the fly with credentials and use dsn-less tables. and a sql auth account
You can open a blank database, from vba create an Access object, open the database, loop through table def and read their connect string. Which takes us back to first point. If You can not hide the password, then I don’t see how Pat’s method can help.I don't really see people being able to get that connect string,
Pat's approach seems to be basically the one demoed back then, although in retrospect my demo was a bit crude, IIRC.I've been looking for the code. I haven't watched the videos George posted but they might have the answer. When I had to solve this problem, I used code that logged into the server separate from the table links which did not include the password. Once I was logged in, the links without the password were fine.
Alternatively, if you hide the linked tables they cannot be seen by other databases so you cannot see the connection strings.