REST Resource: projects.scanConfigs.scanRuns

리소스: ScanRun

ScanRun은 스캔의 실제 실행을 나타내는 출력 전용 리소스입니다. 다음 ID: 12

JSON 표현
{
  "name": string,
  "executionState": enum (ExecutionState),
  "resultState": enum (ResultState),
  "startTime": string,
  "endTime": string,
  "urlsCrawledCount": string,
  "urlsTestedCount": string,
  "hasVulnerabilities": boolean,
  "progressPercent": integer,
  "errorTrace": {
    object (ScanRunErrorTrace)
  },
  "warningTraces": [
    {
      object (ScanRunWarningTrace)
    }
  ]
}
필드
name

string

출력 전용입니다. ScanRun의 리소스 이름입니다. 이름은 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}' 형식을 따릅니다. ScanRun ID는 시스템에서 생성합니다.

executionState

enum (ExecutionState)

출력 전용입니다. ScanRun의 실행 상태입니다.

resultState

enum (ResultState)

출력 전용입니다. ScanRun의 결과 상태입니다. 이 필드는 실행 상태가 '완료됨'에 도달한 후에만 사용할 수 있습니다.

startTime

string (Timestamp format)

출력 전용입니다. ScanRun이 시작된 시간입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

endTime

string (Timestamp format)

출력 전용입니다. ScanRun이 종료 상태에 도달한 시간입니다. 즉, ScanRun이 완료되었거나 사용자가 중지한 것입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

urlsCrawledCount

string (int64 format)

출력 전용입니다. 이 ScanRun 중에 크롤링된 URL 수입니다. 검사가 진행 중인 경우 이 값은 지금까지 크롤링된 URL 수를 나타냅니다.

urlsTestedCount

string (int64 format)

출력 전용입니다. 이 ScanRun 중에 테스트된 URL 수입니다. 검사가 진행 중인 경우 이 값은 지금까지 테스트된 URL 수를 나타냅니다. 일반적으로 크롤링된 URL은 여러 테스트 페이로드로 테스트되므로 테스트된 URL 수가 크롤링된 URL 수보다 큽니다.

hasVulnerabilities

boolean

출력 전용입니다. 스캔 실행 시 취약점이 발견되었는지 여부입니다.

progressPercent

integer

출력 전용입니다. 총 완료 비율로 0~100 사이의 값입니다. 스캔이 대기열에 있으면 값은 0입니다. 검사가 실행 중인 경우 값의 범위는 0~100입니다. 스캔이 완료되면 값은 100입니다.

errorTrace

object (ScanRunErrorTrace)

출력 전용입니다. resultState가 ERROR인 경우 이 필드는 스캔 종료의 기본적인 이유와 추가 세부정보(제공되는 경우)를 제공합니다.

warningTraces[]

object (ScanRunWarningTrace)

출력 전용입니다. 이 스캔 실행 중에 발생한 경고 목록입니다.

ExecutionState

ScanRun 실행 상태 유형입니다.

열거형
EXECUTION_STATE_UNSPECIFIED 내부 서버 오류로 인한 잘못된 상태를 나타냅니다. 이 값은 반환되지 않아야 합니다.
QUEUED 검사가 대기열에서 대기 중입니다.
SCANNING 스캔이 진행 중입니다.
FINISHED 스캔이 완료되었거나 사용자가 중지했습니다.

ResultState

ScanRun 결과 상태 유형입니다.

열거형
RESULT_STATE_UNSPECIFIED 기본값 ScanRun이 아직 완료되지 않은 경우 이 값이 반환됩니다.
SUCCESS 스캔이 오류 없이 완료되었습니다.
ERROR 스캔이 완료되었으나 오류가 있습니다.
KILLED 사용자가 스캔을 종료했습니다.

ScanRunErrorTrace

출력 전용입니다. ScanRun의 오류 트레이스 메시지를 정의합니다.

JSON 표현
{
  "code": enum (Code),
  "scanConfigError": {
    object (ScanConfigError)
  },
  "mostCommonHttpErrorCode": integer
}
필드
code

enum (Code)

출력 전용입니다. 오류 이유 코드를 나타냅니다.

scanConfigError

object (ScanConfigError)

출력 전용입니다. 스캔 중에 SCAN_CONFIG_ISSUE 오류가 발생하면 이 필드에 각 스캔 실행 전에 실행되는 스캔 구성 유효성 검사 중에 발생한 오류 메시지가 포함됩니다.

mostCommonHttpErrorCode

integer

출력 전용입니다. 스캔 중에 TOO_MANY_HTTP_ERRORS가 발생하면 이 필드는 가장 일반적인 HTTP 오류 코드(사용 가능한 경우)를 나타냅니다. 예를 들어 이 코드가 404인 경우 스캔에서 NOT_FOUND 응답이 너무 많이 발생했습니다.

코드

출력 전용입니다. 오류 이유 코드를 정의합니다. 다음 ID: 8

열거형
CODE_UNSPECIFIED 기본값은 사용되지 않습니다.
INTERNAL_ERROR 내부 서버 오류로 인해 검사 실행에 실패했음을 나타냅니다.
SCAN_CONFIG_ISSUE 일반적으로 startingUrls 또는 DNS 구성과 같은 오래된 ScanConfig 설정으로 인한 검사 구성 오류를 나타냅니다.
AUTHENTICATION_CONFIG_ISSUE 일반적으로 오래된 ScanConfig 인증 설정으로 인한 인증 오류를 나타냅니다.
TIMED_OUT_WHILE_SCANNING 스캔 작업 시간 초과입니다. 일반적으로 사이트가 매우 방대하여 발생합니다.
TOO_MANY_REDIRECTS 스캔 중에 인증 페이지 또는 스캔 범위 외의 다른 페이지로 과도하게 리디렉션되었음을 나타냅니다.
TOO_MANY_HTTP_ERRORS 스캔 중에 웹사이트 페이지에서 오류가 너무 많이 발생했음을 나타냅니다. 가능한 경우 mostCommonHttpErrorCode 필드는 검사 중에 발생한 가장 일반적인 HTTP 오류 코드를 나타냅니다.
STARTING_URLS_CRAWL_HTTP_ERRORS 스캔 중에 일부 시작 웹 URL이 HTTP 오류를 반환했음을 나타냅니다.

ScanConfigError

스캔 구성 유효성 검사에 실패할 때 CreateScanConfig 및 UpdateScanConfig API에서 사용하는 맞춤 오류 메시지를 정의합니다. 스캔 구성 오류로 인해 스캔 유효성 검사에 실패하면 ScanRunErrorTrace 메시지의 일부로 보고됩니다.

JSON 표현
{
  "code": enum (Code),
  "fieldName": string
}
필드
code

enum (Code)

출력 전용입니다. 구성 실패의 이유 코드를 나타냅니다.

fieldName

string

출력 전용입니다. 이 오류를 트리거하는 ScanConfig 필드의 전체 이름을 나타냅니다(예: 'scanConfig.max_qps'). 이 필드는 문제 해결 목적으로만 제공되며 실제 값은 향후 변경될 수 있습니다.

코드

출력 전용입니다. 오류 이유 코드를 정의합니다. 다음 ID: 45

열거형
CODE_UNSPECIFIED 오류가 없습니다.
OK 오류가 없습니다.
INTERNAL_ERROR 내부 서버 오류를 나타냅니다. 근본 원인을 알 수 없는 경우가 아니라면 이 오류 코드를 사용하지 마세요.
APPENGINE_API_BACKEND_ERROR 시드 URL 중 하나가 App Engine URL이지만 App Engine API 백엔드 오류로 인해 검사 설정을 검증할 수 없습니다.
APPENGINE_API_NOT_ACCESSIBLE 시드 URL 중 하나가 App Engine URL이지만 App Engine API에 액세스하여 스캔 설정을 검증할 수 없습니다.
APPENGINE_DEFAULT_HOST_MISSING 시드 URL 중 하나가 App Engine URL이지만 App Engine의 기본 호스트가 설정되지 않았습니다.
CANNOT_USE_GOOGLE_COM_ACCOUNT Google 기업 계정은 스캔에 사용할 수 없습니다.
CANNOT_USE_OWNER_ACCOUNT 스캔 작성자의 계정은 스캔에 사용할 수 없습니다.
COMPUTE_API_BACKEND_ERROR 이 스캔은 Compute Engine을 타겟팅하지만 Compute Engine API 백엔드 오류로 인해 스캔 설정을 검증할 수 없습니다.
COMPUTE_API_NOT_ACCESSIBLE 이 스캔은 Compute Engine을 타겟팅하지만 Compute Engine API에 액세스하여 스캔 설정을 검증할 수 없습니다.
CUSTOM_LOGIN_URL_DOES_NOT_BELONG_TO_CURRENT_PROJECT 맞춤 로그인 URL이 현재 프로젝트에 속하지 않습니다.
CUSTOM_LOGIN_URL_MALFORMED 맞춤 로그인 URL 형식이 잘못되었습니다 (파싱할 수 없음).
CUSTOM_LOGIN_URL_MAPPED_TO_NON_ROUTABLE_ADDRESS 커스텀 로그인 URL이 DNS에서 라우팅 불가능한 IP 주소에 매핑되어 있습니다.
CUSTOM_LOGIN_URL_MAPPED_TO_UNRESERVED_ADDRESS 맞춤 로그인 URL이 현재 프로젝트에 예약되지 않은 IP 주소에 매핑되어 있습니다.
CUSTOM_LOGIN_URL_HAS_NON_ROUTABLE_IP_ADDRESS 맞춤 로그인 URL에 라우팅 불가능한 IP 주소가 있습니다.
CUSTOM_LOGIN_URL_HAS_UNRESERVED_IP_ADDRESS 맞춤 로그인 URL에 현재 프로젝트에 예약되지 않은 IP 주소가 있습니다.
DUPLICATE_SCAN_NAME 이름이 동일한 스캔 (대소문자 구분)이 이미 있습니다.
INVALID_FIELD_VALUE 필드가 잘못된 값으로 설정됩니다.
FAILED_TO_AUTHENTICATE_TO_TARGET 검사 대상에 인증하려고 시도하는 중에 오류가 발생했습니다.
FINDING_TYPE_UNSPECIFIED 발견 유형 값이 발견 항목 목록 요청에 지정되지 않았습니다.
FORBIDDEN_TO_SCAN_COMPUTE 스캔 대상이 Compute Engine이지만 현재 프로젝트가 Google Compute Engine 스캔 알파 액세스를 위해 허용 목록에 추가되지 않았습니다.
FORBIDDEN_UPDATE_TO_MANAGED_SCAN 사용자가 관리 스캔을 업데이트하려고 함
MALFORMED_FILTER 제공된 필터의 형식이 잘못되었습니다. 예를 들어 파싱할 수 없거나 표현식에 필터 유형이 없거나 동일한 필터 유형이 두 번 이상 표시됩니다.
MALFORMED_RESOURCE_NAME 제공된 리소스 이름의 형식이 잘못되었습니다 (파싱할 수 없음).
PROJECT_INACTIVE 현재 프로젝트가 활성화 상태가 아닙니다.
REQUIRED_FIELD 필수 입력란이 설정되지 않았습니다.
RESOURCE_NAME_INCONSISTENT 프로젝트 ID, scanconfig ID, scanrun ID 또는 발견 ID가 리소스 이름에서 서로 일치하지 않습니다.
SCAN_ALREADY_RUNNING 시작을 요청한 스캔이 이미 실행 중입니다.
SCAN_NOT_RUNNING 중지하도록 요청된 검사가 실행되지 않습니다.
SEED_URL_DOES_NOT_BELONG_TO_CURRENT_PROJECT 시드 URL 중 하나가 현재 프로젝트에 속하지 않습니다.
SEED_URL_MALFORMED 시드 URL 중 하나가 잘못되었습니다 (파싱할 수 없음).
SEED_URL_MAPPED_TO_NON_ROUTABLE_ADDRESS 시드 URL 중 하나가 DNS에서 라우팅 불가능한 IP 주소에 매핑되었습니다.
SEED_URL_MAPPED_TO_UNRESERVED_ADDRESS 시드 URL 중 하나가 현재 프로젝트에 예약되지 않은 IP 주소에 매핑되어 있습니다.
SEED_URL_HAS_NON_ROUTABLE_IP_ADDRESS 시드 URL 중 하나에 라우팅 가능한 IP 주소가 있습니다.
SEED_URL_HAS_UNRESERVED_IP_ADDRESS 시드 URL 중 하나에 현재 프로젝트에 예약되지 않은 IP 주소가 있습니다.
SERVICE_ACCOUNT_NOT_CONFIGURED 프로젝트에 Web Security Scanner 서비스 계정이 구성되어 있지 않습니다.
TOO_MANY_SCANS 프로젝트에서 최대 스캔 수에 도달했습니다.
UNABLE_TO_RESOLVE_PROJECT_INFO 현재 프로젝트의 세부정보를 확인할 수 없습니다.
UNSUPPORTED_BLACKLIST_PATTERN_FORMAT 하나 이상의 블랙리스트 패턴이 잘못된 형식입니다.
UNSUPPORTED_FILTER 제공된 필터가 지원되지 않습니다.
UNSUPPORTED_FINDING_TYPE 제공된 발견 유형이 지원되지 않습니다. 예를 들어 Google에서는 지정된 발견 항목 유형의 발견 항목을 제공하지 않습니다.
UNSUPPORTED_URL_SCHEME 제공된 URL 중 하나 이상에 지원되지 않는 URL 스키마가 있습니다.
CLOUD_ASSET_INVENTORY_ASSET_NOT_FOUND CAI에서 애셋을 나열할 수 없습니다.

ScanRunWarningTrace

출력 전용입니다. ScanRun의 경고 트레이스 메시지를 정의합니다. 경고 트레이스는 고객에게 검사 프로세스를 더 효과적으로 만드는 데 도움이 되는 유용한 정보를 제공합니다.

JSON 표현
{
  "code": enum (Code)
}
필드
code

enum (Code)

출력 전용입니다. 경고 코드를 나타냅니다.

코드

출력 전용입니다. 경고 메시지 코드를 정의합니다. 다음 ID: 6

열거형
CODE_UNSPECIFIED 기본값은 사용되지 않습니다.
INSUFFICIENT_CRAWL_RESULTS 스캔 중에 예상외로 적은 URL이 발견되었음을 나타냅니다. 복잡한 탐색 기능을 사용하거나 단일 URL을 여러 페이지에 사용하는 경우 이 문제가 발생할 수 있습니다.
TOO_MANY_CRAWL_RESULTS 스캔 중에 테스트할 URL이 너무 많거나 중복 URL이 과도하게 발견되었음을 나타냅니다.
TOO_MANY_FUZZ_TASKS 스캔에서 너무 많은 테스트가 생성되었음을 나타냅니다. 고객은 시작 URL 수를 줄이거나, QPS 비율을 높이거나, 제외된 패턴을 사용하여 스캔 범위를 좁혀야 합니다.
BLOCKED_BY_IAP IAP에 의해 검사가 차단되었음을 나타냅니다.
NO_STARTING_URL_FOUND_FOR_MANAGED_SCAN 스캔에 시드가 없음을 나타냅니다.

메서드

get

ScanRun을 가져옵니다.

list

지정된 ScanConfig 아래의 ScanRun을 ScanRun 종료 시간의 내림차순으로 나열합니다.

stop

ScanRun을 중지합니다.