Can you set security-settings on a per-object basis?

Is it possible to specify, which users (even better: roles) can access an object (table-row, rather than table itself)?
I was thinking that, as a workaround, I may create a proxy-table for each role (“Object_role1”, “Object_role2”) which stores nothing but ObjectIds of Objects, this particular Role may access. This would, of course, not limit the user in what he can see, so that’s why I’d like to know if there is another solution available?

Best Regards,
Fabian