There are a couple of different approaches you could use. You could either define a new property or override an existing property, or you could build an event handler to dynamically handle your problem, or both.
(1) Create a new property
You could create a new property (e.g., "RestrictedEmployees" or "RestrictedEmployeeGraph") that would provide a ReadOnly EntityList or an EntityGraph of those employees that the current user had access to.
(2) Override an existing property
For example, the property Employee.DirectReports currently provides a ReadOnly list of all direct reports . You could override this property to provide the subset of Employees that should be visible to the user. You could also use an EntityGraph to capture a hierarchy of Employees. One advantage of an override is that this approach might be implemented with the least amount of code.
(3) Use an event handler
You could use an event (e.g., button click, or double-click on a row in the grid) and then provide an event handler to dynamically process the event. For example, it could discover the currently selected Employee, and then compute the list of Employees that could be seen.