Move validate_user to a separate service