public void Deploy_SecurityRoles() { // Step 1, define security groups var customerSupport = new SecurityRoleDefinition { Name = "Customer support role", Description = "Customer support team." }; var customerReviewers = new SecurityRoleDefinition { Name = "Customer reviewers role", Description = "Customer reviewers team." }; // Step 2, define web model and artifact relationships - add security groups t the web var model = SPMeta2Model .NewSiteModel(site => { site .AddSecurityRole(customerSupport) .AddSecurityRole(customerReviewers); }); // Step 3, deploy model DeploySiteModel(model); }
//[SampleMetadataTag(Name = BuiltInTagNames.SampleHidden)] public void CanDeploySimpleSecurityRoleDefinition() { var customerEditors = new SecurityRoleDefinition { Name = "Customer editors", BasePermissions = new Collection <string> { BuiltInBasePermissions.EditListItems, BuiltInBasePermissions.UseClientIntegration } }; var customerApprovers = new SecurityRoleDefinition { Name = "Customer approvers", BasePermissions = new Collection <string> { BuiltInBasePermissions.EditListItems, BuiltInBasePermissions.DeleteListItems, BuiltInBasePermissions.UseClientIntegration } }; var model = SPMeta2Model.NewSiteModel(site => { site .AddSecurityRole(customerEditors) .AddSecurityRole(customerApprovers); }); DeployModel(model); }
public override ModelNode ReverseSingleHost(object reverseHost, ReverseOptions options) { var item = (reverseHost as SecurityRoleReverseHost).HostRole; var def = new SecurityRoleDefinition(); def.Name = item.Name; def.Description = item.Description; var allPermissionNames = Enum.GetNames(typeof(PermissionKind)); foreach (var permissionName in allPermissionNames) { var permissionValue = (PermissionKind)Enum.Parse(typeof(PermissionKind), permissionName, true); if (item.BasePermissions.Has(permissionValue)) { if (permissionValue != PermissionKind.EmptyMask) { def.BasePermissions.Add(permissionName); } } } return(new SecurityRoleModelNode { Options = { RequireSelfProcessing = true }, Value = def }); }
public static ModelNode AddSecurityRoleLink(this ModelNode model, SecurityRoleDefinition definition, Action <ModelNode> action) { var roleLinkDefinition = new SecurityRoleLinkDefinition { SecurityRoleName = definition.Name }; return(model.AddDefinitionNode(roleLinkDefinition, action)); }
public static SecurityRoleDefinition GetSecurityRoleTestTemplate(string groupRolePrefix, Action <SecurityRoleDefinition> action) { var result = new SecurityRoleDefinition { Name = string.Format("{0}Role{1}", groupRolePrefix, Environment.TickCount), Description = string.Format("{0}description{1}", groupRolePrefix, Environment.TickCount) }; if (action != null) { action(result); } return(result); }
public static ModelNode AddSecurityRole(this ModelNode model, SecurityRoleDefinition definition, Action <ModelNode> action) { return(model.AddDefinitionNode(definition, action)); }
public static ModelNode AddSecurityRole(this ModelNode model, SecurityRoleDefinition definition) { return(AddSecurityRole(model, definition, null)); }
public static TModelNode AddSecurityRole <TModelNode>(this TModelNode model, SecurityRoleDefinition definition, Action <SecurityRoleModelNode> action) where TModelNode : ModelNode, ISiteModelNode, new() { return(model.AddTypedDefinitionNode(definition, action)); }
public static TModelNode AddSecurityRole <TModelNode>(this TModelNode model, SecurityRoleDefinition definition) where TModelNode : ModelNode, ISiteModelNode, new() { return(AddSecurityRole(model, definition, null)); }