다음을 통해 공유


Microsoft Sentinel 리포지토리를 사용하여 사용자 지정 콘텐츠 관리(공개 미리 보기)

Microsoft Sentinel 리포지토리 기능은 Sentinel 콘텐츠를 코드로 배포하고 관리할 수 있는 중앙 환경을 제공합니다. 리포지토리를 사용하면 CI/CD(연속 통합 및 지속적인 업데이트)를 위해 외부 원본 제어에 연결할 수 있습니다. 이 자동화는 작업 영역 전체에서 사용자 지정 콘텐츠를 업데이트하고 배포하는 수동 프로세스의 부담을 제거합니다. Sentinel 콘텐츠에 대한 자세한 내용은 Microsoft Sentinel 콘텐츠 및 솔루션 정보를 참조하세요.

Important

Microsoft Sentinel 리포지토리 기능은 현재 미리 보기로 제공됩니다. 베타, 미리 보기 또는 아직 일반 공급으로 릴리스되지 않은 Azure 기능에 적용되는 추가 법적 용어는 Microsoft Azure 미리 보기에 대한 추가 사용 약관을 참조하세요.

리포지토리 연결 계획

Microsoft Sentinel 리포지토리는 작업 영역에서 연결하려는 리포지토리(repo)에 대한 적절한 권한이 있는지 확인하기 위해 신중한 계획이 필요합니다. 기여자 액세스 권한이 있는 GitHub 및 Azure DevOps 리포지토리에 대한 연결만 현재 지원됩니다. Microsoft Sentinel 애플리케이션에는 리포지토리에 대한 권한 부여가 필요하고 GitHub에 사용하도록 설정된 Actions 및 Azure DevOps에 사용하도록 설정된 Pipelines가 있어야 합니다.

리포지토리에는 Microsoft Sentinel 작업 영역이 포함된 리소스 그룹의 소유자 역할이 필요합니다. 이 역할은 Microsoft Sentinel과 원본 제어 리포지토리 간의 연결을 만드는 데 필요합니다. 환경에서 소유자 역할을 사용할 수 없는 경우 사용자 액세스 관리자Sentinel 기여자 역할의 조합을 대신 사용하여 연결을 만들 수 있습니다.

기여자가 아닌 퍼블릭 리포지토리에서 콘텐츠를 찾는 경우 먼저 해당 콘텐츠를 리포지토리로 가져와야 합니다. 이 작업은 콘텐츠를 기여자인 리포지토리로 가져오거나, 포크하거나, 복제하여 수행할 수 있습니다. 그런 다음, 리포지토리를 Sentinel 작업 영역에 연결할 수 있습니다. 자세한 내용은 리포지토리에서 사용자 지정 콘텐츠 배포를 참조하세요.

콘텐츠 유효성 검사

리포지토리 연결을 통해 배포할 수 있는 Microsoft Sentinel 콘텐츠 형식은 다음과 같습니다.

  • Analytics 규칙
  • 자동화 규칙
  • 헌팅 쿼리
  • 파서
  • 플레이북
  • 통합 문서

이 문서에서는 이러한 형식의 콘텐츠를 처음부터 만드는 방법을 설명하지 않습니다. 자세한 내용은 각 콘텐츠 형식과 관련된 Microsoft Sentinel GitHub wiki를 참조하세요.

리포지토리 콘텐츠는 ARM 템플릿으로 저장해야 합니다. 리포지토리 배포는 콘텐츠가 올바른 JSON 형식인지 확인하는 경우를 제외하고는 콘텐츠의 유효성을 검사하지 않습니다.

콘텐츠의 유효성을 검사하는 첫 번째 단계는 Microsoft Sentinel 내에서 해당 콘텐츠를 테스트하는 것입니다. 또한 Microsoft Sentinel GitHub 유효성 검사 프로세스 및 도구를 적용하여 유효성 검사 프로세스를 보완할 수 있습니다.

샘플 리포지토리는 위에 나열된 각 콘텐츠 형식에 대한 ARM 템플릿에서 사용할 수 있습니다. 또한 리포지토리에서 리포지토리 연결의 고급 기능을 사용하는 방법도 보여 줍니다. 자세한 내용은 Sentinel CICD 리포지토리 샘플을 참조하세요.

Screenshot of a successful repository connection. The RepositoriesSampleContent is shown. This screenshot is after the sample was imported from the SentinelCICD repo to a private GitHub repo in the FourthCoffee organization.

최대 연결 수 및 배포 수

  • 각 Microsoft Sentinel 작업 영역은 현재 5개의 리포지토리 연결로 제한됩니다.

  • 각 Azure 리소스 그룹의 배포 기록은 800개로 제한됩니다. 리소스 그룹에 대량의 ARM 템플릿 배포가 있는 경우 Deployment QuotaExceeded 오류가 표시될 수 있습니다. 자세한 내용은 Azure Resource Manager 템플릿 설명서에서 DeploymentQuotaExceeded를 참조하세요.

스마트 배포를 사용하여 성능 향상

GitHub에서 스마트 배포가 작동하도록 하려면 워크플로에 리포지토리에 대한 읽기 및 쓰기 권한이 있어야 합니다. 자세한 내용은 리포지토리에 대한 GitHub Actions 설정 관리를 참조하세요.

스마트 배포 기능은 연결된 리포지토리의 콘텐츠 파일에 대한 수정 사항을 적극적으로 추적하여 성능을 향상시키는 백 엔드 기능입니다. 리포지토리의 '.sentinel' 폴더에 있는 CSV 파일을 사용하여 각 커밋을 감사합니다. 워크플로는 마지막 배포 이후 수정되지 않은 콘텐츠를 다시 배포하지 않습니다. 이 프로세스는 배포 성능을 향상시키고 분석 규칙의 동적 일정 재설정과 같이 작업 영역에서 변경되지 않은 콘텐츠를 변조하지 못하도록 방지합니다.

스마트 배포는 기본적으로 새로 만든 연결에서 사용하도록 설정됩니다. 콘텐츠가 수정되었는지 여부에 관계없이 배포가 트리거될 때마다 모든 원본 제어 콘텐츠를 배포하려는 경우 워크플로를 수정하여 스마트 배포를 사용하지 않도록 설정할 수 있습니다. 자세한 내용은 워크플로 또는 파이프라인 사용자 지정을 참조하세요.

참고 항목

이 기능은 2022년 4월 20일에 퍼블릭 미리 보기로 출시되었습니다. 스마트 배포를 설정하려면 출시 전에 만든 연결을 업데이트하거나 다시 만들어야 합니다.

배포 사용자 지정 옵션에 대한 고려 사항

Microsoft Sentinel 리포지토리를 사용하여 콘텐츠를 배포할 때 다양한 사용자 지정 옵션을 고려할 수 있습니다.

워크플로 또는 파이프라인 사용자 지정

다음 방법 중 하나로 워크플로 또는 파이프라인을 사용자 지정할 수 있습니다.

  • 다양한 배포 트리거 구성
  • 지정된 작업 영역에 대한 특정 루트 폴더의 콘텐츠만 배포
  • 워크플로가 정기적으로 실행되도록 예약
  • 서로 다른 워크플로 이벤트를 모두 결합
  • 스마트 배포 끄기

이러한 사용자 지정은 워크플로 또는 파이프라인과 관련된 .yml 파일에 정의되어 있습니다. 구현하는 방법에 대한 자세한 내용은 리포지토리 배포 사용자 지정을 참조하세요.

배포 사용자 지정

워크플로 또는 파이프라인이 트리거되면 배포는 다음 시나리오를 지원합니다.

  • 리포지토리 콘텐츠의 나머지 부분 전에 배포할 콘텐츠 우선 순위 지정
  • 배포에서 콘텐츠 제외
  • ARM 템플릿 매개 변수 파일 지정

이러한 옵션은 워크플로 또는 파이프라인에서 호출된 PowerShell 배포 스크립트의 기능을 통해 사용할 수 있습니다. 이러한 사용자 지정을 구현하는 방법에 대한 자세한 내용은 리포지토리 배포 사용자 지정을 참조하세요.

다음 단계

Microsoft Sentinel 리포지토리 배포에 대한 더 많은 예제 및 단계별 지침을 확인합니다.