오프라인 구성

제한적이거나 제한된, 또는 간헐적 접근이 가능한 환경에서 self-managed GitLab 인스턴스를 사용할 때, DAST 작업이 성공적으로 실행되기 위해 몇 가지 조정이 필요합니다. 자세한 내용은 오프라인 환경을 참조하세요.

오프라인 DAST 지원 요구 사항

오프라인 환경에서 DAST를 사용하려면 다음이 필요합니다:

GitLab Runner는 기본 pull policy항상로 설정되어 있어, 로컬 복사본이 있어도 GitLab 컨테이너 레지스트리에서 Docker 이미지를 끌어오려고 시도합니다. 오프라인 환경에서는 로컬에서 사용 가능한 Docker 이미지만 사용하려면 GitLab Runner의 pull_policyif-not-present로 설정할 수 있습니다. 그러나 오프라인 환경이 아닐 경우, CI/CD 파이프라인에서 업데이트된 스캐너를 사용하기 위해 pull policy 설정을 항상으로 유지하는 것을 권장합니다.

GitLab DAST 분석기 이미지를 Docker 레지스트리 내에서 사용할 수 있도록 하기

DAST를 위해 registry.gitlab.com에서 다음 기본 DAST 분석기 이미지를 로컬 Docker 컨테이너 레지스트리로 가져옵니다:

  • registry.gitlab.com/security-products/dast:latest

로컬 오프라인 Docker 레지스트리에 Docker 이미지를 가져오는 과정은 귀하의 네트워크 보안 정책에 따라 다릅니다. 외부 리소스를 가져오거나 임시로 접근할 수 있는 승인된 프로세스를 찾기 위해 IT 직원과 상담하세요. 이 스캐너는 정기적으로 업데이트되며, 귀하가 직접 가끔 업데이트를 할 수 있습니다.

Docker 이미지를 파일로 저장하고 전송하는 자세한 내용은 Docker 문서의 docker save, docker load, docker export, 및 docker import을 참조하세요.

DAST CI/CD 작업 변수를 로컬 DAST 분석기를 사용하도록 설정하기

다음 구성을 .gitlab-ci.yml 파일에 추가하세요. image를 로컬 Docker 컨테이너 레지스트리에 호스팅된 DAST Docker 이미지로 참조하도록 변경해야 합니다:

include:
  - template: DAST.gitlab-ci.yml
dast:
  image: registry.example.com/namespace/dast:latest

이제 DAST 작업은 인터넷 접근 없이 코드 스캔 및 보안 보고서 생성을 위해 로컬 복사의 DAST 분석기를 사용해야 합니다.

또는 CI/CD 변수 SECURE_ANALYZERS_PREFIX를 사용하여 dast 이미지의 기본 레지스트리 주소를 재정의할 수 있습니다.