We have the following structure:
- ReportsDatabase X
- Report Y
- Report Y uses several tables on X
- Several users access Y.
Report Y filters its data for each user using the global variable UserID.
Temporarily we’ve granted these users access to all of X as the data in Y originates from disperate tables in X.
The problem is that if a user knows the address of X then they have access to all the data on there.
My colleague suggests creating a SQL Login and using this in the DataSource of Y, and then deleting the users’ access to X, but still using Users!UserID in the report. Will this work?
why do the users need access to the tables on X?
Are you runnign the report based on the user’s credential?
The report access the DB with the configurations set on the Data Source and I dont think you set the user’s config in there.
Try removing the access to the tables on X from the user that is running the report (but make sure the acc that is set on the data source to connec to the database do have access to the tables on X)