Snyk Broker를 사용하여 Terraform 구성 파일 감지(사용자 지정)
Snyk 브로커에서의 Terraform
기본적으로, 인프라스트럭처-애즈-코드(IaC)에서 사용되는 일부 파일 유형은 활성화되어 있지 않습니다. 예를 들어 Terraform과 같이 브로커가 리포지토리의 IaC 파일에 액세스하도록 허용하려면 환경 변수 ACCEPT_IAC를 추가할 수 있습니다. 가능한 조합으로 tf, yaml, yml, json, tpl을 사용하세요.
예시:
docker run --restart=always \
-p 8000:8000 \
-e BROKER_TOKEN=secret-broker-token \
-e GITHUB_TOKEN=secret-github-token \
-e PORT=8000 \
-e BROKER_CLIENT_URL=http://my.broker.client:8000 \
-e ACCEPT_IAC=tf,yaml,yml,json,tpl
snyk/broker:github-com그렇지 않으면 accept.json을 편집하고 관련 IaC 특정 규칙을 추가하여 사용자 정의 accept 파일을 컨테이너로 로드할 수 있습니다. 별도 폴더의 사용자 지정 accept 파일이 사용된 경우(ACCEPT 환경 변수 사용),ACCEPT_IAC 메커니즘을 사용할 수 없습니다.
Terraform 파일을 Snyk이 스캔할 수 있는 파일로 추가하고자 하는 경우 사용자 정의 허용 목록이 필요한 경우 다음 지침을 따르세요.
설정 작성
Terraform 스캐닝 기능은 리포지토리의 .tf 파일에 액세스해야 합니다. 이를 위해 특정 API 권한이 필요합니다. 이 API 권한은 사용 중인 소스 컨트롤 시스템에 따라 약간 다를 수 있습니다.
소스 컨트롤 시스템에 맞는 accept.json 예시 파일을 찾아 브로커 리포지토리에서 다운로드하세요.
파일 이름을
accept.json으로 변경하고 JSON 파일의 private 배열에 해당 규칙을 추가하세요.브로커 구성에 대한 지침을 따르세요.
GitHub 규칙
Bitbucket 규칙
GitLab 규칙
Azure Repos
다음 파일 확장 목록을 복사하세요:
accept.json에서 values 배열에 확장을 추가하세요:
"//": "파일 유형으로 제한하여 파일 내용 가져오기""//": "파일 유형으로 제한하여 파일 존재 확인하기"
브로커 구성
브로커는 ACCEPT 환경 변수에 추가된 적용 가능한 규칙이 있는 accept.json 파일 경로를 취합니다. 다음은 해당 변수를 GitHub 브로커에 전달하는 예제입니다.
이를 통해 Snyk에게 .tf 파일을 조회할 수 있는 능력을 제공합니다. 더 엄격하게 하려면 앞의 예제에서 경로를 변경하여 특정 프로젝트나 파일 레이아웃에 대해 더 강력한 제한을 설정할 수 있습니다.
Last updated