Broker 클라이언트 URL
SCM에서 Snyk으로의 웹훅(webhook)을 통해 SCM 통합이 Snyk과 통신할 수 있습니다. 오픈소스 매니페스트 파일이나 코드 파일이 업데이트되고 개발자가 풀 리퀘스트(pull request)를 생성하면, SCM은 웹훅을 통해 Snyk에 알립니다.
웹훅은 파일이 변경되었음을 나타내기 위해 Snyk에 직접 연결되도록 설정될 수 있으며, Snyk은 Broker를 통해 파일을 요청합니다. 그런 다음 SCM은 해당 파일을 Snyk으로 보내고, Snyk은 통합 설정 및 보유한 제품에 따라 코드, 보안 및 라이선스 문제를 스캔하고 SCM 검사에 대한 통과/실패 여부를 반환합니다.
때때로 인프라가 리포지토리가 프라이빗 클라우드나 데이터 센터 외부로 연결되는 것을 방지하기 때문에 웹훅이 Snyk과 직접 통신할 수 없는 경우가 있습니다. 이때 Broker는 통신을 촉진하여 코드 변경 알림을 보내고, SCM에 파일 요청을 보내며, 파일을 Snyk으로 전달하고 스캔 결과를 반환합니다. 그런 다음 상태를 검토하고, 추가 정보를 요청하고, 인라인 댓글 기능을 사용하는 경우 PR에서 문제를 확인하고 Snyk 포털에서 세부 정보를 보는 등 작업을 계속할 수 있습니다.
동일한 웹훅 메커니즘이 Snyk이 풀 리퀘스트를 생성할 때(예: Snyk 인터페이스에서 문제를 보고 버튼을 사용하여 취약점을 수정할 때) 통신을 촉진하는 데 사용됩니다.
연결을 설정할 때 웹훅 대상 엔드포인트는 broker_client_url 값으로 정의됩니다. 웹훅은 Snyk을 직접 가리키거나 웹훅을 Snyk으로 전달할 Broker 클라이언트 컨테이너를 가리킬 수 있습니다.
기본적으로 SCM 통합은 지역 Snyk API 엔드포인트를 사용합니다. URL 목록은 Broker 클라이언트 URL을 참조하십시오. 그러나 때때로 사용자 환경에서 SCM 웹훅이 프라이빗 클라우드나 데이터 센터를 떠나는 것을 금지할 수 있습니다. 이 경우 웹훅 및 SCM은 사용자 환경에서 실행되는 Snyk Broker 컨테이너를 가리켜야 합니다. 이러한 경우 broker_client_url은 Broker 클라이언트의 호스트 이름과 포트를 반영해야 합니다.
SCM 이외의 통합, 특히 컨테이너 레지스트리 통합은 Broker 클라이언트 URL이 Broker 클라이언트 주소여야 합니다. Snyk은 http://my.broker.client와 같은 DNS 호스트 이름을 사용할 것을 권장하지만, IP 주소(http://192.168.0.1)를 사용할 수도 있습니다. http://my.broker.client:8000과 같이 포트를 추가해야 합니다.
https 웹훅 호출은 TLS 인증서를 가져와 컨테이너에 마운트하기 위해 Broker 클라이언트에서 추가 설정이 필요합니다. 자세한 내용은 Docker를 이용한 Broker 클라이언트용 HTTPS를 참조하십시오.
Last updated