My joy didn't last much. While this worked for a few minutes, it stopped working. I'm back to square one.
Here's the situation:
I have two datasets A and B. B is a child of A. Both are shared with the exact same respective names for the SMB shares.
I have two Windows domain groups: Advanced and Basic. (Advanded is for a higer rank group of employees, while Basic corresponds to a lower ranked group.)
Both datasets A and B have user:group as root:wheel, which is fine to deal with SSH access.
Now I select a restricted ACL preset, then add Full Control permission to group Advanced and check both "Apply permissions recursively" and "Apply permissions to child datasets". Now I check on a Windows workstation and everything is working as expected.
Next, I go with share B. Open its Filesystem ACL, where I find the previously given permissions for group Advanced, then add full control to group Basic too.
This should provide full control to the whole of A, (including share B, since it's a child of A) to Advanced users, but also access to B for Basic users.
But it doesn't.
First, when checking permissions of A on Windows, I can see the Basic group has not been given Full Control permission, but all the rest are checked. I check Full Control and apply. Go back to TrueNAS GUI and nothing seems to have changed there. At first, B got access from this operation (that's when I thanked you for your help), but a few minutes later, it had no more access.
I don't know if there's a bug in TrueNAS or I'm doing something wrong.
Since Advanced seems to have full access to the A share and it worked from the beginning just fine, I'm tempted to simply move B outside A and reshare, but I'm not sure how that would change things, since B will still need to have permissions for two different groups (Advanced and Basic), unless I make the whole group Advanced a member of group Basic (which I haven't tried, honestly).
Sorry for the winding explanation. I hope I made myself clear, but if not, please don't hesitate to ask.
Thanks in advance.