파이프라인 보안 구현

완료됨

자격 증명과 비밀을 보호하여 코드를 보호하는 것은 기본입니다. 피싱은 점점 더 정교해지고 있습니다. 다음 목록은 팀이 스스로를 보호하기 위해 적용해야 하는 여러 가지 운영 사례입니다.

  • 인증 및 권한 부여. 내부 도메인 간에도 MFA(다단계 인증)를 사용하고, 권한 에스컬레이션으로부터 보호하기 위해 Azure PowerShell JEA(Just Enough Administration)와 같은 Just-In-Time 관리 도구를 사용합니다. 사용자 계정마다 다른 암호를 사용하면 액세스 자격 증명 집합을 도난당한 경우 피해가 제한됩니다.
  • CI/CD 릴리스 파이프라인. 릴리스 파이프라인과 주기가 손상된 경우 이 파이프라인을 사용하여 인프라를 다시 빌드합니다. Azure Resource Manager를 사용하여 IaC(Infrastructure as Code)를 관리하거나 Azure PaaS(Platform as a Service) 또는 유사한 서비스를 사용합니다. 파이프라인이 자동으로 새 인스턴스를 만든 다음 삭제합니다. 공격자가 인프라 내에서 악성 코드를 숨길 수 있는 위치를 제한합니다. Azure DevOps는 파이프라인에서 비밀을 암호화합니다. 다른 자격 증명과 마찬가지로 암호를 회전하는 것이 가장 좋습니다.
  • 권한 관리. 소스 코드의 경우와 마찬가지로 RBAC(역할 기반 액세스 제어)를 사용하여 파이프라인을 보호하는 권한을 관리할 수 있습니다. 그러면 프로덕션에 사용하는 빌드 및 릴리스 정의의 편집에 대한 제어가 유지됩니다.
  • 동적 검사. 알려진 공격 패턴으로 실행 중인 애플리케이션을 테스트하는 프로세스입니다. 릴리스의 일부로 침투 테스트를 구현할 수 있습니다. 또한 OWASP(Open Web Application Security Project) Foundation과 같은 보안 프로젝트를 최신 상태로 유지한 후 이러한 프로젝트를 프로세스에 채택할 수 있습니다.
  • 프로덕션 모니터링. 중요한 DevOps 사례입니다. 침입과 관련된 변칙을 검색하는 특수 서비스를 “보안 정보 및 이벤트 관리”라고 합니다. 클라우드용 Microsoft Defender는 Azure 클라우드와 관련된 보안 인시던트에 중점을 둡니다.

참고

모든 경우에서 Azure Resource Manager 템플릿 또는 다른 코드 기반 구성을 사용합니다. 변경 내용을 추적 가능하고 반복 가능하도록 템플릿에서 변경하는 것과 같은 IaC 모범 사례를 구현합니다. 또한 Azure와 원활하게 통합할 수 있는 DSC(Desired State Configuration), Azure Automation, 기타 타사 도구 및 제품 등의 프로비전 및 구성 기술을 사용할 수 있습니다.