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;
 }
Ejemplo n.º 3
0
 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;
 }
Ejemplo n.º 4
0
 private SystemRole CreateAdministratorRole()
 {
     var role = new SystemRole
     {
         Id = "AdministratorSystemRole",
         RoleName = "Administrators",
         RoleType = EnumSystemRoleType.Administrator
     };
     return role;
 }
Ejemplo n.º 5
0
  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;
 }
Ejemplo n.º 6
0
 private void VerifyAndSaveAllRolePermissions(SystemRole role, EnumPermissionAccess access)
 {
     if (VerifyAllRolePermissions(role, access))
     {
         _systemRoleRepository.UpdateSystemRole(role.Id, role.RoleName, role.RoleType, role.Permissions, role.Assignments);
     }
 }