I'm building a bsite that needs pretty stringent permissions. I have already created the (4) user roles for the site, but not sure the best way to handle viewing permissions.

I see that when creating Views it is pretty simple to assign which roles have permission to view, but what about for my content that is straight up page/nodes?


I was able to accomplish this using Permissions By Term (https://www.drupal.org/project/permissions_by_term). After I installed, I completed the following steps:

  • define member/student/guest roles in People > Roles
  • define Taxonomy structure (I named the vocabulary 'Page View Permissions')
  • In order to apply these permissions to Basic Pages, edit the Content Type of Basic Page to add section to set the permissions when creating a Basic Page. (Create new Entity Reference field.) Set default to Public.

Sorry to disagree with your own (accepted) answer, but just in case you want to consider your solution described in your answer: This seems like a perfect usecase for the Group module.

Check it out, do some homework (experiments) with it, browse some of the question. Or checkout some of these questions.

For sure you'll understand what I mean. After you agree, you may reconsider your own answer ...

  • Thanks! After not hearing from anyone for a couple days, I tried my earlier attempt at Permissions By Term and actually got it working, so posted that info. I'm also only supposed to use modules that are covered by the Security Advisory Policy (should have mentioned that) which greatly limits it. But I'll check out Groups on my local and see how it also gets the job done, and maybe simpler. Jan 18 '19 at 20:16
  • @DriveItLikeYouStoleIt Merci for the "thanks". Make sure to provide some sort of feedback (extra comment?) after you finish your local review of it (and then maybe even change your accepted answer?). PS: Group, not Groups ... Jan 18 '19 at 20:39

Not the answer you're looking for? Browse other questions tagged or ask your own question.