I started with vRA 8.4, and a only clean design with Active Directory Groups was successful. With Custom Roles a play a while and have strange effects, no access, no 2-Day Action etc. The same with Roles of vRA, Hard and Soft enforcement. Don't mix that, i was not successful.
Finally i used only 2 Build-in Roles => Members and Full Administrators.
I designt Project as Teamfolder, that's contains Normal Member, Admin-Members (Both vRA Role "Member") and vAA Full Admins (vAA Role Administrator).
The Policy have also Mapped with Active Directory, all Normal Member each Teams are assigned to Policy.
The clue is, you can define Criteria inside Policy, Linux-Admin can only create Snapshots for Linux Machines. You can define Criteria for Catalog Item, or Resources, Tag's or hardcoded Deployment etc.
What a bit tricky is, Criteria with Dynamic Property on a VM/Ressources (Sample PowerOn/OFF) have a delay. I had a Policy thats only Deployment can be deletet by Poweroff Machines. The Delay was not tracebell and longe that 10 Minutes (vCenter Synch). Only Policy entforcments helps. I think the Policy synch are triggered only by changing Members, but not on changing VM-Properties.