Regarding the question on restricting the users from accessing specific paths (assuming you need it on author instance), I can think of achieving it in the following way
- Create product profiles on admin console. These profiles will be synced to the author and appear as user groups
- On AEM author, create another set of user groups that map 1 to 1 to these product profile groups
- Assign the required path permissions to the user groups created AEM author (/content/xyz, /apps/xyz). For applying permissions on \apps, you will have to use repoinit scripts
- Now make product profile group a member of user group created on AEM
When a new user is added to a specific product profile in Admin Console, by virtue of the above group relationship, the user will automatically inherit the permissions defined in the user group created on AEM