기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
에서 웹후크 사용 AWS CodeBuild
AWS CodeBuild 는 GitHub, GitHub 엔터프라이즈 서버, GitLab GitLab 자체 관리형 및 Bitbucket과의 웹후크 통합을 지원합니다.
주제
AWS CodeBuild의 webhook 사용 모범 사례
퍼블릭 리포지토리를 사용하여 webhook를 설정하는 프로젝트의 경우 다음 옵션을 권장합니다.
ACTOR_ACCOUNT_ID
필터 설정-
프로젝트의 webhook 필터 그룹에
ACTOR_ACCOUNT_ID
필터를 추가하여 빌드를 트리거할 수 있는 사용자를 지정합니다. 에 전달되는 모든 웹후크 이벤트에는 작업자의 식별자를 지정하는 발신자 정보가 함께 CodeBuild 제공됩니다. CodeBuild 는 필터에 제공된 정규식 패턴을 기반으로 웹후크를 필터링합니다. 이 필터를 사용하여 빌드를 트리거할 수 있는 특정 사용자를 지정할 수 있습니다. 자세한 내용은 GitHub 웹후크 이벤트 및 Bitbucket Webhook 이벤트 단원을 참조하세요. FILE_PATH
필터 설정-
프로젝트의 webhook 필터 그룹에
FILE_PATH
필터를 추가하여 변경 시 빌드를 트리거할 수 있는 파일을 포함하거나 제외합니다. 예를 들어excludeMatchedPattern
속성과 함께^buildspec.yml$
과 같은 정규 표현식 패턴을 사용하여buildspec.yml
파일 변경에 대한 빌드 요청을 거부할 수 있습니다. 자세한 내용은 GitHub 웹후크 이벤트 및 Bitbucket Webhook 이벤트 단원을 참조하세요. - 빌드 IAM 역할에 대한 권한 범위 축소
-
webhook에 의해 트리거된 빌드는 프로젝트에 지정된 IAM 서비스 역할을 사용합니다. 서비스 역할의 권한을 빌드를 실행하는 데 필요한 최소 권한 세트로 설정하는 것이 좋습니다. 예를 들어 테스트 및 배포 시나리오에서는 테스트용 프로젝트 하나와 배포용 프로젝트 하나를 생성합니다. 테스트 프로젝트는 리포지토리의 webhook 빌드를 수락하지만 리소스에 대한 쓰기 권한은 제공하지 않습니다. 배포 프로젝트는 리소스에 대한 쓰기 권한을 제공하고 webhook 필터는 신뢰할 수 있는 사용자만 빌드를 트리거할 수 있도록 구성됩니다.
- 인라인 또는 Amazon S3 저장 buildspec 사용
-
프로젝트 내에서 buildspec 인라인을 정의하거나 Amazon S3 버킷에 buildspec 파일을 저장하는 경우, buildspec 파일은 프로젝트 소유자만 볼 수 있습니다. 이렇게 하면 풀 요청이 buildspec 파일의 코드를 변경하여 원치 않는 빌드를 트리거하는 것을 방지할 수 있습니다. 자세한 내용은 CodeBuild API 참조 의 ProjectSource.buildspec을 참조하세요.