Item permissions on based on AD groups in Sharepoint Online List

Brass Contributor

Hi SharePoint Online Users,

I have the below security/permission requirement and want to know whether this is possible in SharePoint Online.

There is a list having users from different countries. The permissions are given through AD groups (each country having their own AD group, one for each edit, read etc..).
The end user should be able to see only the items specific to his country and the global items(common to all) and not the items from other countries.
Is it posible to acheive this even through code? With the SharePoint Modern interface and Microsoft discouraging coding to an extent, is it possible? Or can this be done with the OOTB features, am i missing something?

 

Regards,

Kevin

 

4 Replies

Hi @kevingeorget, short answer is yes you can do what you're describing. Effectively you're describing breaking permissions inheritance on each list item, and removing the groups that don't want accessing that. This is achievable through the UI, Flow, Code, SPD workflows. Removing permissions means that the rest of the data is security trimmed, therefore achieving the desired effect.

 

However, I would not recommend this approach, as creating a huge number of unique list item permissions will make the administration of the system extremely difficult. Also, by using Active Directory Groups, you can't see the membership of the group from SharePoint, therefore you'll need to cross reference group memberships with Active Directory or buy your AD Admins a pack of biscuits and ask them to do it for you.

 

Personally I don't like breaking permission inheritance below list/library level, so if possible I would consider other options for how to store my data.

@Matt WestonThanks a lot for the reply. I'll keep this in mind and will probably need to change my approach.

@Matt Weston 

May I ask what you would suggest to prevent users in a given country from seeing items entered by users in a different country?

 

I've thought of separate lists altogether and merge them into a single one for analysis, but that overhead may be similar to managing different groups.

 

Thank you very much

Leonel

 

Hi @Leonel GUZMAN , there's not an easy answer to this that I'm aware of. My personal approach would be, that if I need to have that separation of countries then I'd have either completely separate lists or separate sites altogether. The choice will depend on what the ramifications are with regards to having different countries within the same site.

 

Depending on what you want to do, you could maintain a master list somewhere, with Flow copying data to it, which goes against the principal of "one version of the truth", or depending on the data you could use something like PowerBI to pull all of you data sources together into a single dashboard.