Restrict user access to certain records in reports

Restrict user access to certain records in reports

I have multiple users from multiple facilities accessing the database.  I don't want all users to see all records from all facilities.  How can I restrict the records in a report to one or more facilities, depending on the user trying to view the report? 

For example, John creates records for the Middletown Facility.  Debbie creates records for the Milwaukee facility.  Jane creates records for the Denver facility.   Sara supervises John and Debbie but not Jane.  Sara shouldn't be able to view Jane's records.  

How do I execute this?