public async Task <ActionResult> ChangeUserPassword(int id, [FromBody] string password)
        {
            if (!IsAuthorizedToAccess(id))
            {
                return(Forbidden("Validation error."));
            }

            User user = await Db.Users.FindAsync(id);

            if (user == null)
            {
                return(NotFound("User not found."));
            }

            PasswordSecurity.SetPassword(password, user);

            Db.Users.Update(user);
            await Db.SaveChangesAsync();

            return(Ok());
        }
        public async Task <ActionResult <string> > CreateUser(CreateUserParameters parameters)
        {
            parameters.EmailAddress = parameters.EmailAddress.ToLower();

            if (Db.Users.Where(o => o.Email == parameters.EmailAddress).Any())
            {
                return(BadRequest("Dit emailadres is al in gebruik."));
            }

            User user = new User()
            {
                FirstName     = parameters.FirstName,
                LastName      = parameters.LastName,
                Email         = parameters.EmailAddress,
                SecurityLevel = SecurityLevel.User,
            };

            PasswordSecurity.SetPassword(parameters.Password, user);

            Db.Users.Add(user);
            await Db.SaveChangesAsync();

            return(AccessToken.Generate(user.Email));
        }