This sounds like a security issue, and it needs to be resolved using the security features (Section Access). You'll need to link your users to the specific data elements that they have access to, and use the setting "Initial Data Reduction Based on Section Access".
I realize, it may not be as flexible as rducing data based on a bookmark, but then, again, if this is a security issue, it shouldn't require such a great flexibility - you either have access to certain data, or you don't.
The problem with implementing your approach is the the document might be "Open" all day long on the server, and each individual user just open a new session. So, the "On Open" trigger can't be used for that purpose.
What you can do is, you can write a document OnOpen trigger to Lock the selection on that field to the value being passed.
And your application should already have a Field Event Trigger for that field
The field event trigger should be for the "OnUnlock" event of that field. And the Action for that trigger should be "Lock Field" with the same field name as parameter.
That should do the trick.
Now if you want to give access to some of the people and restrict access to others, then you should put that if condition in your OnOpen trigger macro.