How to control data other than using a role

Is it possible - in a standard way - to control data being collection and reporting against, other than just role. For example if the systems collects a temperature from a machine, this temperature affects the quality of the product being processes. Different companies use the machine therefore only the company that uses the machine at that time can view the data either in real-time or historically.

Company might not the be only meta data that is tagged to the data, it might include the part being processes etc.

I can think of some creative solutions :bulb: but I thought I ask before I go down that path.