SEC11-BP07 정기적으로 파이프라인의 보안 속성 평가
특히 권한 분리에 주의를 기울여 Well-Architected 보안 원칙을 파이프라인에 적용하세요. 파이프라인 인프라의 보안 속성을 정기적으로 평가합니다. 파이프라인의 보안을 효율적으로 관리하면 파이프라인을 통과하는 소프트웨어의 보안을 보장할 수 있습니다.
원하는 결과: 소프트웨어를 구축하고 배포하는 데 사용되는 파이프라인은 환경의 다른 워크로드와 동일한 권장 사례를 따라야 합니다. 파이프라인에서 구현되는 테스트는 이를 사용하는 빌더가 편집할 수 없어야 합니다. 파이프라인은 빌더가 수행 중인 배포에 필요한 권한만 보유해야 하며, 잘못된 환경에 배포되지 않도록 안전 조치를 구현해야 합니다. 파이프라인은 장기 보안 인증 정보에 의존하지 않아야 하며, 구축 환경의 무결성을 확인할 수 있게 상태를 전송하도록 구성해야 합니다.
일반적인 안티 패턴:
-
빌더가 보안 테스트를 우회할 수 있습니다.
-
배포 파이프라인에 대한 권한이 지나치게 광범위합니다.
-
입력을 검증하도록 파이프라인을 구성하지 않습니다.
-
CI/CD 인프라와 관련된 권한을 정기적으로 검토하지 않습니다.
-
장기 또는 하드코딩된 보안 인증 정보를 사용합니다.
이 모범 사례 확립의 이점:
-
파이프라인을 통해 구축 및 배포되는 소프트웨어의 무결성에 대한 신뢰도가 높아집니다.
-
의심스러운 활동이 있을 때 배포를 중지할 수 있습니다.
이 모범 사례를 따르지 않을 경우 노출 위험도: 높음
구현 가이드
IAM 역할을 지원하는 관리형 CI/CD 서비스로 시작하면 보안 인증 정보 유출 위험이 줄어듭니다. CI/CD 파이프라인 인프라에 보안 원칙을 적용하면 보안을 개선할 수 있는 부분을 가려내는 데 도움이 됩니다. CI/CD 환경을 구축하기 시작할 때 AWS 배포 파이프라인 참조 아키텍처
구현 단계
-
먼저 AWS 배포 파이프라인 참조 아키텍처
부터 시작합니다. -
파이프라인에 대한 최소 권한 IAM 정책을 프로그래밍 방식으로 생성하려면 AWS IAM Access Analyzer를 사용하는 것이 좋습니다.
-
파이프라인을 모니터링 및 알림과 통합하여 예기치 않거나 비정상적인 활동이 발생할 경우 알림을 받을 수 있습니다. AWS 관리형 서비스의 경우 Amazon EventBridge
를 사용하면 AWS Lambda 또는 Amazon Simple Notification Service (Amazon SNS)와 같은 대상으로 데이터를 라우팅할 수 있습니다.
리소스
관련 문서:
-
Monitoring AWS CodePipeline(AWS CodePipeline 모니터링)
-
Security best practices for AWS CodePipeline(AWS CodePipeline 보안 모범 사례)
관련 예시:
-
DevOps 모니터링 대시보드
(GitHub)