We have table in database, using Oracle 9i(9.2), we must made policy for SELECT query, some group of users can access for exact row and some cannot, standardly it solved by VIEWs:
- making some VIEW table
- changing table name of origin
But there is a problem, we can’t change table name, it bureaucracy problems.
Finally, is it some mechanism or triggers(there are no triggers for SELECT but just example) to control row access?
Sorry, if question is dummy,I don’t have much experience with DBs.
One option would be to create a Virtual Private Database policy for the table in question.
From a presentation I did a couple years ago
Set up the environment
Create a secure context
Create a policy function
Create the row-level security policy
This query returns 0 rows now
If you log in as William Mayo, however
the same query now returns rows but only those that rows for Mayo’s patients. The other rows continue to be filtered out
Your policy function could drive off the currently logged in user or any other piece of information if you didn’t want or need the secure context.