public SystemRole CreateSystemRole(string roleName, EnumSystemRoleType roleType, SystemRolePermissions permissions, SystemRoleAssignments assignments) { if(string.IsNullOrEmpty(roleName)) { throw new ArgumentNullException("Missing role name"); } permissions = permissions ?? new SystemRolePermissions(); assignments = assignments ?? new SystemRoleAssignments(); if(_documentSession.QueryNoCache<SystemRole>().Any(i=>i.RoleName == roleName)) { throw new ArgumentException(string.Format("Role with role name {0} already exists", roleName)); } string systemRoleId = Guid.NewGuid().ToString(); var role = new SystemRole { Id = systemRoleId, RoleName = roleName, Assignments = assignments, Permissions = permissions, RoleType = roleType }; role.SetCreatedFields(_userIdentity.UserName); return _documentSession.StoreSaveEvict(role); }
public static SqlSystemRole FromDto(SystemRole role) { var returnValue = AutoMapper.Mapper.Map(role, new SqlSystemRole()); if(role.Permissions != null) { returnValue.PermissionsJson = role.Permissions.ToJson(); } if (role.Assignments != null && role.Assignments.UserNameList != null) { returnValue.SystemRoleUserList = role.Assignments.UserNameList.Select(i=>new SqlSystemRoleUser { UserName=i }).ToList(); } return returnValue; }
private SystemRole CreateEveryoneRole() { var role = new SystemRole { Id = "EveryoneSystemRole", RoleName = "Everyone", RoleType = EnumSystemRoleType.Everyone }; role.Permissions.EditSystemPermissionsAccess = EnumPermissionAccess.Grant; role.Permissions.EditUsersAccess = EnumPermissionAccess.Grant; role.Permissions.EditDeploymentCredentialsAccess = EnumPermissionAccess.Grant; role.Permissions.EditBuildPurgeRulesAccess = EnumPermissionAccess.Grant; return role; }
private SystemRole CreateAdministratorRole() { var role = new SystemRole { Id = "AdministratorSystemRole", RoleName = "Administrators", RoleType = EnumSystemRoleType.Administrator }; return role; }
private bool VerifyAllRolePermissions(SystemRole role, EnumPermissionAccess access) { bool anyChange = false; if(role.Permissions.EditSystemPermissionsAccess != access) { role.Permissions.EditSystemPermissionsAccess = access; anyChange = true; } if(role.Permissions.EditUsersAccess != access) { role.Permissions.EditUsersAccess = access; anyChange = true; } if(role.Permissions.EditDeploymentCredentialsAccess != access) { role.Permissions.EditDeploymentCredentialsAccess = access; anyChange = true; } if(role.Permissions.EditDeploymentToolsAccess != access) { role.Permissions.EditDeploymentToolsAccess = access; anyChange = true; } if(role.Permissions.EditBuildPurgeRulesAccess != access) { role.Permissions .EditBuildPurgeRulesAccess = access; anyChange = true; } return anyChange; }
private void VerifyAndSaveAllRolePermissions(SystemRole role, EnumPermissionAccess access) { if (VerifyAllRolePermissions(role, access)) { _systemRoleRepository.UpdateSystemRole(role.Id, role.RoleName, role.RoleType, role.Permissions, role.Assignments); } }