private void InstallCustomPermissions(SiteInitializer initializer) { SecurityConfig securityConfig = initializer.Context.GetConfig <SecurityConfig>(); ConfigElementDictionary <string, Permission> permissionSetConfig = securityConfig.Permissions; ConfigElementDictionary <string, CustomPermissionsDisplaySettingsConfig> customPermissionsDisplaySettings = securityConfig.CustomPermissionsDisplaySettings; //Add the set if (!permissionSetConfig.ContainsKey(AgentsConstants.Security.PermissionSetName)) { var agentsPermissionSet = new Permission(permissionSetConfig) { Name = AgentsConstants.Security.PermissionSetName, Title = "AgentsPermissions", Description = "AgentsPermissionsDescription", ResourceClassId = typeof(AgentsResources).Name }; permissionSetConfig.Add(agentsPermissionSet); agentsPermissionSet.Actions.Add(new SecurityAction(agentsPermissionSet.Actions) { Name = AgentsConstants.Security.View, Type = SecurityActionTypes.View, Title = "ViewAgents", Description = "ViewAgentsDescription", ResourceClassId = typeof(AgentsResources).Name }); agentsPermissionSet.Actions.Add(new SecurityAction(agentsPermissionSet.Actions) { Name = AgentsConstants.Security.Create, Type = SecurityActionTypes.Create, Title = "CreateAgents", Description = "CreateAgentsDescription", ResourceClassId = typeof(AgentsResources).Name }); agentsPermissionSet.Actions.Add(new SecurityAction(agentsPermissionSet.Actions) { Name = AgentsConstants.Security.Modify, Type = SecurityActionTypes.Modify, Title = "ModifyAgents", Description = "ModifyAgentsDescription", ResourceClassId = typeof(AgentsResources).Name }); agentsPermissionSet.Actions.Add(new SecurityAction(agentsPermissionSet.Actions) { Name = AgentsConstants.Security.Delete, Type = SecurityActionTypes.Delete, Title = "DeleteAgents", Description = "DeleteAgentsDescription", ResourceClassId = typeof(AgentsResources).Name }); agentsPermissionSet.Actions.Add(new SecurityAction(agentsPermissionSet.Actions) { Name = AgentsConstants.Security.ChangeOwner, Type = SecurityActionTypes.ChangeOwner, Title = "ChangeAgentsOwner", Description = "ChangeAgentsOwnerDescription", ResourceClassId = typeof(AgentsResources).Name }); agentsPermissionSet.Actions.Add(new SecurityAction(agentsPermissionSet.Actions) { Name = AgentsConstants.Security.ChangePermissions, Type = SecurityActionTypes.ChangePermissions, Title = "ChangeAgentsPermissions", Description = "ChangeAgentsPermissionsDescription", ResourceClassId = typeof(AgentsResources).Name }); } //Custom UI views if (!customPermissionsDisplaySettings.ContainsKey(AgentsConstants.Security.PermissionSetName)) { var agentsCustomSet = new CustomPermissionsDisplaySettingsConfig(customPermissionsDisplaySettings) { SetName = AgentsConstants.Security.PermissionSetName }; customPermissionsDisplaySettings.Add(agentsCustomSet); var agentsCustomActions = new SecuredObjectCustomPermissionSet(agentsCustomSet.SecuredObjectCustomPermissionSets) { TypeName = typeof(AgentItem).FullName }; agentsCustomSet.SecuredObjectCustomPermissionSets.Add(agentsCustomActions); var agentCreateAction = new CustomSecurityAction(agentsCustomActions.CustomSecurityActions) { Name = AgentsConstants.Security.Create, ShowActionInList = false, Title = string.Empty, ResourceClassId = string.Empty }; agentsCustomActions.CustomSecurityActions.Add(agentCreateAction); var agentModifyAction = new CustomSecurityAction(agentsCustomActions.CustomSecurityActions) { Name = AgentsConstants.Security.Modify, ShowActionInList = true, Title = "ModifyThisAgent", ResourceClassId = typeof(AgentsResources).Name }; agentsCustomActions.CustomSecurityActions.Add(agentModifyAction); var agentViewAction = new CustomSecurityAction(agentsCustomActions.CustomSecurityActions) { Name = AgentsConstants.Security.View, ShowActionInList = true, Title = "ViewThisAgent", ResourceClassId = typeof(AgentsResources).Name }; agentsCustomActions.CustomSecurityActions.Add(agentViewAction); var agentDeleteAction = new CustomSecurityAction(agentsCustomActions.CustomSecurityActions) { Name = AgentsConstants.Security.Delete, ShowActionInList = true, Title = "DeleteThisAgent", ResourceClassId = typeof(AgentsResources).Name }; agentsCustomActions.CustomSecurityActions.Add(agentDeleteAction); var agentChangeOwnerAction = new CustomSecurityAction(agentsCustomActions.CustomSecurityActions) { Name = AgentsConstants.Security.ChangeOwner, ShowActionInList = true, Title = "ChangeOwnerOfThisAgent", ResourceClassId = typeof(AgentsResources).Name }; agentsCustomActions.CustomSecurityActions.Add(agentChangeOwnerAction); var agentChangePermissionsAction = new CustomSecurityAction(agentsCustomActions.CustomSecurityActions) { Name = AgentsConstants.Security.ChangePermissions, ShowActionInList = true, Title = "ChangePermissionsOfThisAgent", ResourceClassId = typeof(AgentsResources).Name }; agentsCustomActions.CustomSecurityActions.Add(agentChangePermissionsAction); } }
protected virtual void InitializeDefaultPermissions() { #region Create Custom Set var productsPermissionSet = new Permission(this.Permissions) { Name = ProductsConstants.Security.PermissionSetName, Title = "ProductsPermissions", Description = "ProductsPermissionsDescription", ResourceClassId = typeof(ProductsResources).Name }; this.Permissions.Add(productsPermissionSet); productsPermissionSet.Actions.Add(new SecurityAction(productsPermissionSet.Actions) { Name = ProductsConstants.Security.View, Type = SecurityActionTypes.View, Title = "ViewProducts", Description = "ViewProductsDescription", ResourceClassId = typeof(ProductsResources).Name }); productsPermissionSet.Actions.Add(new SecurityAction(productsPermissionSet.Actions) { Name = ProductsConstants.Security.Create, Type = SecurityActionTypes.Create, Title = "CreateProducts", Description = "CreateProductsDescription", ResourceClassId = typeof(ProductsResources).Name }); productsPermissionSet.Actions.Add(new SecurityAction(productsPermissionSet.Actions) { Name = ProductsConstants.Security.Modify, Type = SecurityActionTypes.Modify, Title = "ModifyProducts", Description = "ModifyProductsDescription", ResourceClassId = typeof(ProductsResources).Name }); productsPermissionSet.Actions.Add(new SecurityAction(productsPermissionSet.Actions) { Name = ProductsConstants.Security.Delete, Type = SecurityActionTypes.Delete, Title = "DeleteProducts", Description = "DeleteProductsDescription", ResourceClassId = typeof(ProductsResources).Name }); productsPermissionSet.Actions.Add(new SecurityAction(productsPermissionSet.Actions) { Name = ProductsConstants.Security.ChangeOwner, Type = SecurityActionTypes.ChangeOwner, Title = "ChangeProductsOwner", Description = "ChangeProductsOwnerDescription", ResourceClassId = typeof(ProductsResources).Name }); productsPermissionSet.Actions.Add(new SecurityAction(productsPermissionSet.Actions) { Name = ProductsConstants.Security.ChangePermissions, Type = SecurityActionTypes.ChangePermissions, Title = "ChangeProductsPermissions", Description = "ChangeProductsPermissionsDescription", ResourceClassId = typeof(ProductsResources).Name }); #endregion #region Custom Permission Display Settings #region General Permission Set var customPermissionsDisplaySettings = this.CustomPermissionsDisplaySettings; var generalCustomSet = new CustomPermissionsDisplaySettingsConfig(customPermissionsDisplaySettings) { SetName = SecurityConstants.Sets.General.SetName }; customPermissionsDisplaySettings.Add(generalCustomSet); var productsCustomActions = new SecuredObjectCustomPermissionSet(generalCustomSet.SecuredObjectCustomPermissionSets) { TypeName = typeof(ProductItem).FullName }; generalCustomSet.SecuredObjectCustomPermissionSets.Add(productsCustomActions); var productCreateAction = new CustomSecurityAction(productsCustomActions.CustomSecurityActions) { Name = SecurityConstants.Sets.General.Create, ShowActionInList = false, Title = string.Empty, ResourceClassId = string.Empty }; productsCustomActions.CustomSecurityActions.Add(productCreateAction); var productModifyAction = new CustomSecurityAction(productsCustomActions.CustomSecurityActions) { Name = SecurityConstants.Sets.General.Modify, ShowActionInList = true, Title = "ModifyThisItem", ResourceClassId = typeof(SecurityResources).Name }; productsCustomActions.CustomSecurityActions.Add(productModifyAction); var productViewAction = new CustomSecurityAction(productsCustomActions.CustomSecurityActions) { Name = SecurityConstants.Sets.General.View, ShowActionInList = true, Title = "ViewThisItem", ResourceClassId = typeof(SecurityResources).Name }; productsCustomActions.CustomSecurityActions.Add(productViewAction); var productDeleteAction = new CustomSecurityAction(productsCustomActions.CustomSecurityActions) { Name = SecurityConstants.Sets.General.Delete, ShowActionInList = true, Title = "DeleteThisItem", ResourceClassId = typeof(SecurityResources).Name }; productsCustomActions.CustomSecurityActions.Add(productDeleteAction); var productChangeOwnerAction = new CustomSecurityAction(productsCustomActions.CustomSecurityActions) { Name = SecurityConstants.Sets.General.ChangeOwner, ShowActionInList = true, Title = "ChangeOwnerOfThisItem", ResourceClassId = typeof(SecurityResources).Name }; productsCustomActions.CustomSecurityActions.Add(productChangeOwnerAction); var productChangePermissionsAction = new CustomSecurityAction(productsCustomActions.CustomSecurityActions) { Name = SecurityConstants.Sets.General.ChangePermissions, ShowActionInList = true, Title = "ChangePermissionsOfThisItem", ResourceClassId = typeof(SecurityResources).Name }; productsCustomActions.CustomSecurityActions.Add(productChangePermissionsAction); #endregion #region Products Permission Set var productsCustomSet = new CustomPermissionsDisplaySettingsConfig(CustomPermissionsDisplaySettings) { SetName = ProductsConstants.Security.PermissionSetName }; CustomPermissionsDisplaySettings.Add(productsCustomSet); var productsCustomSetActions = new SecuredObjectCustomPermissionSet(productsCustomSet.SecuredObjectCustomPermissionSets) { TypeName = typeof(ProductItem).FullName }; productsCustomSet.SecuredObjectCustomPermissionSets.Add(productsCustomSetActions); var productSetCreateAction = new CustomSecurityAction(productsCustomSetActions.CustomSecurityActions) { Name = ProductsConstants.Security.Create, ShowActionInList = false, Title = string.Empty, ResourceClassId = string.Empty }; productsCustomSetActions.CustomSecurityActions.Add(productSetCreateAction); var productSetModifyAction = new CustomSecurityAction(productsCustomSetActions.CustomSecurityActions) { Name = ProductsConstants.Security.Modify, ShowActionInList = true, Title = "ModifyThisProduct", ResourceClassId = typeof(ProductsResources).Name }; productsCustomSetActions.CustomSecurityActions.Add(productSetModifyAction); var productSetViewAction = new CustomSecurityAction(productsCustomSetActions.CustomSecurityActions) { Name = ProductsConstants.Security.View, ShowActionInList = true, Title = "ViewThisProduct", ResourceClassId = typeof(ProductsResources).Name }; productsCustomSetActions.CustomSecurityActions.Add(productSetViewAction); var productSetDeleteAction = new CustomSecurityAction(productsCustomSetActions.CustomSecurityActions) { Name = ProductsConstants.Security.Delete, ShowActionInList = true, Title = "DeleteThisProduct", ResourceClassId = typeof(ProductsResources).Name }; productsCustomSetActions.CustomSecurityActions.Add(productSetDeleteAction); var productSetChangeOwnerAction = new CustomSecurityAction(productsCustomSetActions.CustomSecurityActions) { Name = ProductsConstants.Security.ChangeOwner, ShowActionInList = true, Title = "ChangeOwnerOfThisProduct", ResourceClassId = typeof(ProductsResources).Name }; productsCustomSetActions.CustomSecurityActions.Add(productSetChangeOwnerAction); var productSetChangePermissionsAction = new CustomSecurityAction(productsCustomSetActions.CustomSecurityActions) { Name = ProductsConstants.Security.ChangePermissions, ShowActionInList = true, Title = "ChangePermissionsOfThisProduct", ResourceClassId = typeof(ProductsResources).Name }; productsCustomSetActions.CustomSecurityActions.Add(productSetChangePermissionsAction); #endregion #endregion }
private void InstallCustomPermissions(SiteInitializer initializer) { SecurityConfig securityConfig = initializer.Context.GetConfig <SecurityConfig>(); ConfigElementDictionary <string, Telerik.Sitefinity.Security.Configuration.Permission> permissionSetConfig = securityConfig.Permissions; ConfigElementDictionary <string, CustomPermissionsDisplaySettingsConfig> CustomPermissionsDisplaySettings = securityConfig.CustomPermissionsDisplaySettings; //Add the set if (!permissionSetConfig.ContainsKey(RealEstateConstants.Security.PermissionSetName)) { var realEstatePermissionSet = new Telerik.Sitefinity.Security.Configuration.Permission(permissionSetConfig) { Name = RealEstateConstants.Security.PermissionSetName, Title = "RealEstatePermissions", Description = "RealEstatePermissionsDescription", ResourceClassId = typeof(RealEstateResources).Name }; permissionSetConfig.Add(realEstatePermissionSet); realEstatePermissionSet.Actions.Add(new SecurityAction(realEstatePermissionSet.Actions) { Name = RealEstateConstants.Security.View, Type = SecurityActionTypes.View, Title = "ViewItems", Description = "ViewItemsDescription", ResourceClassId = typeof(RealEstateResources).Name }); realEstatePermissionSet.Actions.Add(new SecurityAction(realEstatePermissionSet.Actions) { Name = RealEstateConstants.Security.Create, Type = SecurityActionTypes.Create, Title = "CreateItems", Description = "CreateItemsDescription", ResourceClassId = typeof(RealEstateResources).Name }); realEstatePermissionSet.Actions.Add(new SecurityAction(realEstatePermissionSet.Actions) { Name = RealEstateConstants.Security.Modify, Type = SecurityActionTypes.Modify, Title = "ModifyItems", Description = "ModifyItemsDescription", ResourceClassId = typeof(RealEstateResources).Name }); realEstatePermissionSet.Actions.Add(new SecurityAction(realEstatePermissionSet.Actions) { Name = RealEstateConstants.Security.Delete, Type = SecurityActionTypes.Delete, Title = "DeleteItems", Description = "DeleteItemsDescription", ResourceClassId = typeof(RealEstateResources).Name }); realEstatePermissionSet.Actions.Add(new SecurityAction(realEstatePermissionSet.Actions) { Name = RealEstateConstants.Security.ChangeOwner, Type = SecurityActionTypes.ChangeOwner, Title = "ChangeItemOwner", Description = "ChangeItemOwnerDescription", ResourceClassId = typeof(RealEstateResources).Name }); realEstatePermissionSet.Actions.Add(new SecurityAction(realEstatePermissionSet.Actions) { Name = RealEstateConstants.Security.ChangePermissions, Type = SecurityActionTypes.ChangePermissions, Title = "ChangeItemPermissions", Description = "ChangeItemPermissionsDescription", ResourceClassId = typeof(RealEstateResources).Name }); } //Custom UI views if (!CustomPermissionsDisplaySettings.ContainsKey(RealEstateConstants.Security.PermissionSetName)) { var realEstateCustomSet = new CustomPermissionsDisplaySettingsConfig(CustomPermissionsDisplaySettings) { SetName = RealEstateConstants.Security.PermissionSetName }; CustomPermissionsDisplaySettings.Add(realEstateCustomSet); var realEstateCustomActions = new SecuredObjectCustomPermissionSet(realEstateCustomSet.SecuredObjectCustomPermissionSets) { TypeName = typeof(RealEstateItem).FullName }; realEstateCustomSet.SecuredObjectCustomPermissionSets.Add(realEstateCustomActions); var itemCreateAction = new CustomSecurityAction(realEstateCustomActions.CustomSecurityActions) { Name = RealEstateConstants.Security.Create, ShowActionInList = false, Title = string.Empty, ResourceClassId = string.Empty }; realEstateCustomActions.CustomSecurityActions.Add(itemCreateAction); var itemModifyAction = new CustomSecurityAction(realEstateCustomActions.CustomSecurityActions) { Name = RealEstateConstants.Security.Modify, ShowActionInList = true, Title = "ModifyThisItem", ResourceClassId = typeof(RealEstateResources).Name }; realEstateCustomActions.CustomSecurityActions.Add(itemModifyAction); var itemViewAction = new CustomSecurityAction(realEstateCustomActions.CustomSecurityActions) { Name = RealEstateConstants.Security.View, ShowActionInList = true, Title = "ViewThisItem", ResourceClassId = typeof(RealEstateResources).Name }; realEstateCustomActions.CustomSecurityActions.Add(itemViewAction); var itemDeleteAction = new CustomSecurityAction(realEstateCustomActions.CustomSecurityActions) { Name = RealEstateConstants.Security.Delete, ShowActionInList = true, Title = "DeleteThisItem", ResourceClassId = typeof(RealEstateResources).Name }; realEstateCustomActions.CustomSecurityActions.Add(itemDeleteAction); var itemChangeOwnerAction = new CustomSecurityAction(realEstateCustomActions.CustomSecurityActions) { Name = RealEstateConstants.Security.ChangeOwner, ShowActionInList = true, Title = "ChangeOwnerOfThisItem", ResourceClassId = typeof(RealEstateResources).Name }; realEstateCustomActions.CustomSecurityActions.Add(itemChangeOwnerAction); var itemChangePermissionsAction = new CustomSecurityAction(realEstateCustomActions.CustomSecurityActions) { Name = RealEstateConstants.Security.ChangePermissions, ShowActionInList = true, Title = "ChangePermissionsOfThisItem", ResourceClassId = typeof(RealEstateResources).Name }; realEstateCustomActions.CustomSecurityActions.Add(itemChangePermissionsAction); } }