Microsoft Online Services 보안 개발 및 운영 소개

완료됨

Microsoft의 SDL(Security Development Lifecycle)은 보안 소프트웨어 개발 및 운영에 초점을 맞춘 보안 보증 프로세스입니다. SDL은 Microsoft의 개발자와 엔지니어에게 상세하고 측정 가능한 보안 요구 사항을 제공하여 제품 및 서비스의 취약성 수와 심각도를 줄입니다. 모든 Microsoft Online Services는 SDL 요구 사항을 따라야 하며, 변화하는 위협 환경, 업계 모범 사례 및 규정 준수 표준을 반영하도록 SDL을 지속적으로 업데이트합니다.

Microsoft SDL의 단계

Microsoft는 보안 및 개인 정보 보호가 제품 및 서비스의 핵심 초점으로 유지되도록 DevOps 모델에 SDL 사례를 구축했습니다. 고객과 Microsoft Online Services 데이터를 보호하기 위해 Microsoft의 모든 개발은 고객 테넌트 액세스 없이 프로덕션 환경과 완전히 분리된 개발 환경에서 이루어집니다. 또한 프로덕션 환경에 대한 액세스는 서비스를 운영하는 엔지니어로 제한되며 이러한 환경은 Microsoft 회사 네트워크와 분리되어 있습니다.

학습, 요구 사항, 설계, 구현, 확인, 릴리스, 대응으로 시작하는 SDL의 프로세스 흐름.

Microsoft의 SDL 프로세스는 5단계의 개발 측면에서 생각할 수 있습니다.

  1. 요구 사항: 보안, 개인 정보 보호 및 기능 요구 사항이 정의되어 서비스가 설계된 기반 역할을 합니다.
  2. 디자인: 서비스 아키텍처는 정의된 요구 사항을 충족하도록 설계되었으며 잠재적 위협을 식별, 분류 및 평가하는 데 도움이 되는 위협 모델이 만들어집니다.
  3. 구현: 코드는 승인된 보안 개발 도구를 사용하여 정의된 디자인 사양에 따라 작성됩니다.
  4. 확인: 서비스 코드는 정의된 요구 사항을 충족하고 코딩 오류 및 보안 결함이 없는지 확인하기 위해 자동으로 그리고 수동으로 검토됩니다.
  5. 릴리스: 승인된 빌드는 내부 테스트 환경부터 시작하여 전체 프로덕션 scope 끝나는 안전한 배포 프로세스를 사용하여 점진적으로 롤아웃됩니다.

위에서 설명한 5가지 핵심 개발 단계 외에도 SDL을 지원하는 두 가지 관련 보안 활동이 있습니다. 제품 및 서비스를 개발하는 Microsoft 직원은 SDL을 이해하고 방어적 사고방식을 육성하기 위해 보안 지향 교육을 완료해야 합니다. 릴리스 후 새 프로덕션 서비스는 Microsoft의 보안 모니터링 및 취약성 관리 프로세스를 통해 모니터링되어 보안 태세가 유지되고 Microsoft가 수명 주기 동안 잠재적 위협에 대응할 수 있도록 합니다.

다음 단원에서는 Microsoft가 다음을 통해 SDL 요구 사항을 구현하는 방법을 살펴봅니다.

  • 보안 인식 및 보안 개발 사례에 대한 교육 요구
  • 보안 및 개인 정보 요구 사항 정의, 최신 위협 모델 유지 관리 및 수동 코드 검토 요구
  • 빌드 프로세스의 일부로 SDL 도구를 자동으로 실행하여 코드에서 보안 문제를 탐지
  • 보안 모범 사례를 유지하기 위해 운영 보안 요구 사항 적용 및 테스트
  • 릴리스 전에 보안 및 개인 정보 검토 수행
  • CG(구성 요소 거버넌스)를 사용하여 오픈 소스 소프트웨어 관리

자세한 정보