How to restrict user posting a node in certain circumstances
You can use the Node access user reference module:


  Gives content access permissions to users for content that references
  the users with User reference or Entity reference.
  
  This is great if you want your content authors to be able to choose
  additional authors, or choose who can view their content, as well as
  being able to display the list of authors or viewers within your
  content, or in views displays.