Separated checks so invalid permissions are reported