4

Okay, got a internal sharepoint setup for authenticated users (about 3000 users).

This sharepoint has one group that is specifically in one region and a small group in another region overseas (smaller group is approximately 300-400 users). On the same existing sharepoint they all have access to, I want to give the larger group user access to a specific folder for their regional data, and the smaller group access to their own specific folder with their local regional data with out either group being able to see each others data.

I know the typical way is to create specific permissions for folder by adding them to certain groups, but this is a LOT of users to manage - is there a easy way to manage/update this monthly/qtrly when people transition or come aboard?

3 Answers 3

2

You can stop inheriting permissions for the particular folder and remove all existing permissions then add whichever group you need to provide access. Adding through groups is the simpler way.

1
  • Thank you CigarDoug and Paddy, I am now exploring Active Directory group :).
    – chailof
    Commented Jan 29, 2013 at 20:16
1

Use Active Directory groups. If a collection of people is in a specific region, it is likely they are already in a specific Active Directory group for that region. Add the AD group as a member of your SharePoint group for that region's folder, and then add any individual accounts as needed to the SharePoint group.

0

BreakRoleInheritance for the particular folder(list/library) and remove all existing permissions. then grant Permissions to specific groups for that particular List\library

private static void removeAllPermissions(SPList CurrentList)
    {
        CurrentList.BreakRoleInheritance(false);
        SPRoleAssignmentCollection spRoleAssColl = CurrentList.RoleAssignments;
        for (int i = spRoleAssColl.Count - 1; i >= 0; i--)
        {
            spRoleAssColl.Remove(i);
        }
    }
    private static void grantPermission(SPList CurrentList, SPWeb site, SPRoleDefinition spRoledef, SPPrincipal spPrincipal)
    {
        SPRoleDefinition spRDef = spRoledef;
        SPRoleAssignment spRAssign = new SPRoleAssignment(spPrincipal);
        spRAssign.RoleDefinitionBindings.Add(spRDef);
        CurrentList.RoleAssignments.Add(spRAssign);
    }

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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