How to implement User roles for specific taxonomies?
It appears to me that there are 2 ways to answer your question. Read on for more details ...

Option 1: The Organic Groups module

Organic Groups is a possible answer to your question. It is probably the module that most users are familiar with.

If you're not familiar (enough/yet) with Organic Groups, then reviewing the amazing set of (free) videos to Learn Organic Groups might help.

Option 2: The Group module

Maybe you want to give it a try to use the Group module, which is like an alternative for Organic Groups. Group allows for creating arbitrary collections of your content and users on your site, and grant access control permissions on those collections. It is available as of D7, and has a D8 version also. The Group module creates groups as entities, making them fully fieldable, extensible and exportable.

Resources:


Community documentation for the Group module.
Video tutorial "How to use the Group module in Drupal 8 to manage editorial access control to different areas of a web site".


Comparing both modules

For more details about how Group compares to Organic Groups, refer to my answer to "What are the features of the Group module versus Organic Group module?".