SEC11-BP05 패키지 및 종속성 서비스의 중앙 집중화 - AWS Well-Architected Framework

SEC11-BP05 패키지 및 종속성 서비스의 중앙 집중화

빌더 팀이 소프트웨어 패키지 및 기타 종속성을 확보할 수 있도록 서비스를 중앙 집중화하세요. 서비스를 중앙 집중화하면 작성하는 소프트웨어에 포함하기 전에 패키지를 검증할 수 있습니다. 또한 조직에서 사용 중인 소프트웨어 분석에 쓰일 데이터를 하나의 소스에서 얻을 수 있습니다.

원하는 결과: 소프트웨어는 작성 중인 코드 외에 다양한 소프트웨어 패키지 세트로 구성됩니다. 따라서 JSON 구문 분석기 또는 암호화 라이브러리와 같이 반복적으로 사용되는 기능 구현을 간편하게 사용할 수 있습니다. 이러한 패키지 및 종속성에 대한 소스를 논리적으로 중앙 집중화하면 패키지를 사용하기 전에 패키지의 속성을 검증하는 메커니즘을 보안 팀에 제공할 수 있습니다. 또한 이러한 전략은 기존 패키지의 변경이나 빌더 팀(예: 인터넷에서 바로 임의 패키지 다운로드)으로 인해 예상치 못한 문제가 발생할 위험을 줄여줍니다. 수동 및 자동 테스트 흐름과 함께 이 전략을 사용하면 개발 중인 소프트웨어의 품질에 대한 신뢰도를 높일 수 있습니다.

일반적인 안티 패턴:

  • 인터넷의 임의 리포지토리에서 패키지를 가져옵니다.

  • 빌더에게 새 패키지를 제공하기 전에 테스트하지 않습니다.

이 모범 사례 확립의 이점:

  • 구축 중인 소프트웨어에서 어떤 패키지가 사용되고 있는지 효과적으로 이해할 수 있습니다.

  • 누가 무엇을 사용하고 있는지 파악한 후에 패키지를 업데이트해야 할 때 워크로드 팀에 알릴 수 있습니다.

  • 소프트웨어에 문제가 포함된 패키지의 위험을 줄입니다.

이 모범 사례를 따르지 않을 경우 노출 위험도: 중간

구현 가이드

패키지 및 종속성에 대한 중앙 집중식 서비스를 빌더가 쉽게 사용할 수 있는 방식으로 제공합니다. 중앙 집중식 서비스는 단일 시스템으로 구현되기보다는 논리적으로 중앙에 배치될 수 있습니다. 이러한 접근 방식을 통해 빌더의 요구를 충족하는 방향으로 서비스를 제공할 수 있습니다. 업데이트가 발생하거나 새로운 요구 사항이 나타날 때 패키지를 리포지토리에 추가하는 효율적인 방법을 구현해야 합니다. AWS CodeArtifact와 같은 AWS 서비스 또는 이와 유사한 AWS 파트너 솔루션은 이러한 기능을 제공하는 방법을 안내합니다.

구현 단계:

  • 소프트웨어가 개발되는 모든 환경에서 사용할 수 있는 논리적으로 중앙 집중화된 리포지토리 서비스를 구현합니다.

  • 리포지토리에 대한 액세스를 AWS 계정 벤딩 프로세스의 일부로 포함합니다.

  • 패키지를 리포지토리에 게시하기 전에 테스트하는 자동화를 구축합니다.

  • 가장 일반적으로 사용되는 패키지, 언어 및 변경 사항이 제일 많은 팀의 지표를 유지 관리합니다.

  • 빌더 팀이 새 패키지를 요청하고 피드백을 줄 수 있도록 자동화된 메커니즘을 제공합니다.

  • 리포지토리의 패키지를 정기적으로 스캔하여 새로 발견된 문제의 잠재적 영향을 식별합니다.

리소스

관련 모범 사례:

관련 문서:

관련 동영상:

관련 예시: