private void setupNextRoleAssignment(SPDGWeb web, SPDGSecurableObject securableObject) { SPDGPrincipal principal = null; var rnd = SampleData.GetRandomNumber(0, 100); if (rnd < WorkingDefinition.PermissionsPercentForUsers) { principal = _siteSpUsers[SampleData.GetRandomNumber(0, _siteSpUsers.Count - 1)]; } else if (rnd < WorkingDefinition.PermissionsPercentForUsers + WorkingDefinition.PermissionsPercentForSPGroups) { principal = _siteSpGroups[SampleData.GetRandomNumber(0, _siteSpGroups.Count - 1)]; } else { principal = _siteAdGroupSpUsers[SampleData.GetRandomNumber(0, _siteAdGroupSpUsers.Count - 1)]; } var roleAssignment = securableObject.GetRoleAssignmentByPrincipal(principal); if (roleAssignment == null || roleAssignment.RoleDefinitionBindings.All(x => x.IsGuestRole)) { var availableRoledefinitions = web.RoleDefinitions.Where(x => !x.IsGuestRole).ToList(); var selected = availableRoledefinitions[SampleData.GetRandomNumber(0, availableRoledefinitions.Count - 1)]; securableObject.AddRoleAssignment(principal, new List <SPDGRoleDefinition> { selected }); } }
public SPDGServerRoleAssignment(SPDGPrincipal member) : base(member, new List <SPDGRoleDefinition>()) { if (member is SPDGServerUser) { _roleAssignment = new SPRoleAssignment(((SPDGServerUser)member).SPUser); } else { _roleAssignment = new SPRoleAssignment(((SPDGServerGroup)member).Group); } }
public static void AddRoleAssignment(SPSecurableObject securableObject, SPDGPrincipal principal, IEnumerable <SPDGRoleDefinition> roleDefinitions) { SPPrincipal spPrincipal; if (principal is SPDGServerUser) { spPrincipal = ((SPDGServerUser)principal).SPUser; } else { spPrincipal = ((SPDGServerGroup)principal).Group; } SPRoleAssignment roleAss = new SPRoleAssignment(spPrincipal); foreach (var spdgRoleDefinition in roleDefinitions) { var spRoleDef = ((SPDGServerRoleDefinition)spdgRoleDefinition).RoleDefinition; roleAss.RoleDefinitionBindings.Add(spRoleDef); } securableObject.RoleAssignments.Add(roleAss); }
public override void AddRoleAssignment(SPDGPrincipal principal, IEnumerable <SPDGRoleDefinition> roledefinitions) { ClientRoleAssignmentHelper.AddRoleAssignment(_list, _context, principal, roledefinitions); }
public override SPDGRoleAssignment GetRoleAssignmentByPrincipal(SPDGPrincipal principal) { return(ClientRoleAssignmentHelper.GetRoleAssignmentByPrincipal(_list, _context, principal)); }
public SPDGServerRoleAssignment(SPRoleAssignment roleAssignment, SPDGPrincipal member, IEnumerable <SPDGRoleDefinition> roleDefinitionBindings) : base(member, roleDefinitionBindings) { _roleAssignment = roleAssignment; }
public override void AddRoleAssignment(SPDGPrincipal principal, IEnumerable <SPDGRoleDefinition> roledefinitions) { ServerRoleAssignmentHelper.AddRoleAssignment(_item, principal, roledefinitions); }
public override SPDGRoleAssignment GetRoleAssignmentByPrincipal(SPDGPrincipal principal) { return(ServerRoleAssignmentHelper.GetRoleAssignmentByPrincipal(_item, principal)); }
public static SPDGRoleAssignment GetRoleAssignmentByPrincipal(SecurableObject securableObject, ClientContext context, SPDGPrincipal principal) { var principalId = principal.ID; var roleAss = securableObject.RoleAssignments.Where(x => x.PrincipalId == principalId).Include(x => x.RoleDefinitionBindings, x => x.Member, x => x.PrincipalId); var results = context.LoadQuery(roleAss); context.ExecuteQuery(); if (results.Any()) { return(new SPDGClientRoleAssignment(results.First(), principal, results.First().RoleDefinitionBindings.Select(x => new SPDGClientRoleDefinition(x)))); } else { return(null); } }
public static void AddRoleAssignment(SecurableObject securableObject, ClientContext context, SPDGPrincipal principal, IEnumerable <SPDGRoleDefinition> roleDefinitions) { Principal p; if (principal is SPDGClientUser) { p = ((SPDGClientUser)principal).User; } else { p = ((SPDGClientGroup)principal).Group; } var roleDefinitionBindingCollection = new RoleDefinitionBindingCollection(context); foreach (var spdgRoleDefinition in roleDefinitions) { roleDefinitionBindingCollection.Add(((SPDGClientRoleDefinition)spdgRoleDefinition).Definition); } securableObject.RoleAssignments.Add(p, roleDefinitionBindingCollection); context.ExecuteQuery(); }
public static SPDGRoleAssignment GetRoleAssignmentByPrincipal(SPSecurableObject securableObject, SPDGPrincipal principal) { SPPrincipal spPrincipal; if (principal is SPDGServerUser) { spPrincipal = ((SPDGServerUser)principal).SPUser; } else { spPrincipal = ((SPDGServerGroup)principal).Group; } try { var spRoleAss = securableObject.RoleAssignments.GetAssignmentByPrincipal(spPrincipal); return(new SPDGServerRoleAssignment(spRoleAss, principal, spRoleAss.RoleDefinitionBindings.Cast <SPRoleDefinition>().Select(x => (SPDGRoleDefinition) new SPDGServerRoleDefinition(x)))); } catch (Exception) { //ugly but will do return(null); } }
public SPDGClientRoleAssignment(SPDGPrincipal member) : base(member, new List <SPDGRoleDefinition>()) { }