리포지토리에서 사용자 지정 콘텐츠 배포(공개 미리 보기)

사용자 지정 콘텐츠를 만들 때 사용자 고유의 Microsoft Sentinel 작업 영역 또는 외부 원본 제어 리포지토리에서 콘텐츠를 관리할 수 있습니다. 이 문서에서는 Microsoft Sentinel과 GitHub 또는 Azure DevOps 리포지토리를 연결하고 관리하는 방법을 설명합니다. 콘텐츠를 외부 리포지토리에서 관리하면 Microsoft Sentinel 외부에서 해당 콘텐츠를 업데이트하고 작업 영역에 자동으로 배포할 수 있습니다. 자세한 내용은 리포지토리 연결을 사용하여 사용자 지정 콘텐츠 업데이트를 참조하세요.

Important

  • Microsoft Sentinel 리포지토리 기능은 현재 미리 보기로 제공됩니다. 베타 또는 미리 보기로 제공되거나 아직 일반 공급으로 릴리스되지 않은 Azure 기능에 적용되는 추가 약관은 Microsoft Azure 미리 보기에 대한 추가 사용 약관을 참조하세요.
  • Microsoft Sentinel은 Microsoft Defender 포털에서 통합 보안 운영 플랫폼의 공개 미리 보기의 일부로 사용할 수 있습니다. 자세한 내용은 Microsoft Defender 포털의 Microsoft Sentinel을 참조하세요.

필수 조건 및 범위

Microsoft Sentinel은 현재 GitHub 및 Azure DevOps 리포지토리에 대한 연결을 지원합니다. Microsoft Sentinel 작업 영역을 원본 제어 리포지토리에 연결하기 전에 다음 조건을 갖추고 있는지 확인합니다.

  • Microsoft Sentinel 작업 영역이 포함된 리소스 그룹의 소유자 역할 또는 연결을 만들기 위한 사용자 액세스 관리자Sentinel 기여자 역할의 조합
  • GitHub 리포지토리에 대한 협력자 액세스 또는 Azure DevOps 리포지토리에 대한 프로젝트 관리자 액세스
  • GitHub에 대해 사용하도록 설정된 작업 및 Azure DevOps에 대해 사용하도록 설정된 파이프라인
  • Azure DevOps 애플리케이션 연결 정책에 대해 사용하도록 설정된 OAuth를 통한 타사 애플리케이션 액세스입니다.
  • 작업 영역에 배포하려는 사용자 지정 콘텐츠 파일이 관련 ARM(Azure Resource Manager) 템플릿에 있는지 확인합니다.

자세한 내용은 콘텐츠 유효성 검사를 참조하세요.

리포지토리 연결

이번 절차에서는 GitHub 또는 Azure DevOps 리포지토리를 Microsoft Sentinel 작업 영역에 연결하는 방법을 설명합니다.

각 연결은 분석 규칙, 자동화 규칙, 헌팅 쿼리, 파서, 플레이북 및 통합 문서를 비롯한 여러 유형의 사용자 지정 콘텐츠를 지원할 수 있습니다. 자세한 내용은 Microsoft Sentinel 콘텐츠 및 솔루션 정보를 참조하세요.

단일 Microsoft Sentinel 작업 영역에서 동일한 리포지토리 및 분기를 사용하여 중복 연결을 만들 수 없습니다.

연결 만들기:

  1. 연결에 사용하려는 자격 증명을 사용하여 원본 제어 앱에 로그인했는지 확인합니다. 현재 다른 자격 증명을 사용하여 로그인한 경우 먼저 로그아웃합니다.

  2. Azure Portal의 Microsoft Sentinel에서는, 콘텐츠 관리에서 리포지토리를 선택합니다.
    Defender 포털의 Microsoft Sentinel에서는, Microsoft Sentinel>콘텐츠 관리>리포지토리를 선택합니다.

  3. 새로 추가를 선택한 다음, 새 배포 연결 만들기 페이지에서 연결에 대한 의미 있는 이름과 설명을 입력합니다.

  4. 원본 제어 드롭다운에서 연결하려는 리포지토리 유형을 선택한 다음, 권한 부여를 선택합니다.

  5. 연결 형식에 따라 다음 탭 중 하나를 선택합니다.

    1. GitHub 자격 증명을 입력하라는 메시지가 표시되면 입력합니다.

      연결을 처음 추가하면 Microsoft Sentinel에 대한 연결 권한을 부여하라는 메시지가 표시됩니다. 동일한 브라우저에서 GitHub 계정에 이미 로그인한 경우 GitHub 자격 증명이 자동으로 채워집니다.

    2. 이제 연결할 기존 리포지토리를 선택할 수 있는 새 배포 연결 만들기 페이지에 리포지토리 영역이 표시됩니다. 목록에서 리포지토리를 선택한 다음, 리포지토리 추가를 선택합니다.

      특정 리포지토리에 처음으로 연결하면 리포지토리에 Azure-Sentinel 앱을 설치하라는 새 브라우저 창 또는 탭이 표시됩니다. 여러 리포지토리가 있는 경우 Azure-Sentinel 앱을 설치할 리포지토리를 선택하고 설치합니다.

      앱 설치를 계속할 수 있도록 GitHub로 이동됩니다.

    3. Azure-Sentinel 앱이 리포지토리에 설치되면 새 배포 연결 만들기 페이지의 분기 드롭다운이 사용자의 분기로 채워집니다. Microsoft Sentinel 작업 영역에 연결하려는 분기를 선택합니다.

    4. 콘텐츠 형식 드롭다운에서 배포할 콘텐츠 형식을 선택합니다.

      • 파서와 헌팅 쿼리는 저장된 검색 API를 사용하여 Microsoft Sentinel에 콘텐츠를 배포합니다. 이러한 콘텐츠 형식 중 하나를 선택하고 분기에 다른 형식의 콘텐츠도 있는 경우 두 콘텐츠 형식이 모두 배포됩니다.

      • 그 외의 콘텐츠 형식은 새 배포 연결 만들기 창에서 콘텐츠 형식을 선택하면 해당 콘텐츠만 Microsoft Sentinel에 배포됩니다. 다른 형식의 콘텐츠는 배포되지 않습니다.

    5. 만들기를 선택하여 연결을 만듭니다. 예시:

      새 GitHub 리포지토리 연결 스크린샷.

연결을 만들면 리포지토리에 새 워크플로 또는 파이프라인이 생성됩니다. 리포지토리에 저장된 콘텐츠는 Microsoft Sentinel 작업 영역에 배포됩니다.

배포 시간은 배포하는 콘텐츠의 양에 따라 달라질 수 있습니다.

배포 상태 보기

GitHub: 리포지토리의 작업 탭에서 워크플로 .yaml 파일을 선택하면 자세한 배포 로그 및 관련 오류 메시지에 액세스할 수 있습니다.

Azure DevOps: 리포지토리의 파이프라인 탭에서 배포 상태를 봅니다.

배포가 완료되면:

  • 리포지토리에 저장된 콘텐츠가 Microsoft Sentinel 작업 영역의 관련 Microsoft Sentinel 페이지에 표시됩니다.

  • 리포지토리 페이지의 연결 세부 정보는 연결 배포 로그의 링크와 마지막 배포의 상태 및 시간으로 업데이트됩니다. 예시:

    GitHub 리포지토리 연결의 배포 로그 스크린샷.

기본 워크플로는 리포지토리에 대한 커밋을 기반으로 마지막 배포 이후 수정된 콘텐츠만 배포합니다. 하지만 스마트 배포를 해제하거나 다른 사용자 지정을 수행할 수 있습니다. 예를 들어, 다른 배포 트리거를 구성하거나 특정 루트 폴더의 콘텐츠만 배포할 수 있습니다. 자세한 내용은 리포지토리 배포 사용자 지정을 참조하세요.

콘텐츠 편집

원본 제어 리포지토리에 대한 연결을 성공적으로 만들면 콘텐츠가 Sentinel에 배포됩니다. 연결된 리포지토리에 저장된 콘텐츠는 Microsoft Sentinel이 아닌 리포지토리에서만 편집하는 것이 좋습니다. 예를 들어 분석 규칙을 변경하려면 GitHub 또는 Azure DevOps에서 직접 변경합니다.

Microsoft Sentinel에서 콘텐츠를 대신 편집하는 경우 다음에 리포지토리 콘텐츠가 작업 영역에 배포될 때 변경 내용을 덮어쓰지 않도록 원본 제어 리포지토리로 내보내야 합니다.

콘텐츠 삭제

리포지토리에서 콘텐츠를 삭제해도 Microsoft Sentinel 작업 영역에서는 삭제되지 않습니다. 리포지토리를 통해 배포된 콘텐츠를 제거하려면 해당 리포지토리와 Microsoft Sentinel에서 모두 삭제해야 합니다. 예를 들어, 원본 이름을 기준으로 콘텐츠에 대한 필터를 설정하면 리포지토리에서 콘텐츠를 보다 쉽게 식별할 수 있습니다.

리포지토리의 원본 이름으로 필터링된 분석 규칙의 스크린샷.

리포지토리 연결 제거

이 절차에서는 Microsoft Sentinel에서 원본 제어 리포지토리에 대한 연결을 제거하는 방법을 설명합니다.

연결을 제거하려면 다음을 수행합니다.

  1. Microsoft Sentinel의 콘텐츠 관리에서 리포지토리를 선택합니다.
  2. 표에서 제거할 연결을 선택하고 삭제를 선택합니다.
  3. 를 선택하여 삭제를 확인합니다.

연결을 제거한 후, 이전에 연결을 통해 배포된 콘텐츠는 Microsoft Sentinel 작업 영역에 유지됩니다. 연결을 제거한 후 리포지토리에 추가된 콘텐츠는 배포되지 않습니다.

연결을 삭제할 때 문제 또는 오류 메시지가 발생하는 경우 소스 제어를 확인하는 것이 좋습니다. 연결 관련 GitHub 워크플로 또는 Azure DevOps 파이프라인이 삭제되어 있는지 확인합니다.

GitHub 리포지토리에서 Microsoft Sentinel 앱 제거하기

GitHub 리포지토리에서 Microsoft Sentinel 앱을 삭제하려는 경우 먼저 Microsoft Sentinel 리포지토리 페이지에서 연결된 모든 연결을 제거하는 것이 좋습니다.

설치된 각 Microsoft Sentinel 앱에는 연결을 추가하고 제거할 때 사용되는 고유한 ID가 있습니다. 이 ID가 누락되었거나 변경된 경우 나중에 콘텐츠가 배포되지 않도록 Microsoft Sentinel 리포지토리 페이지에서 연결을 제거하고 GitHub 리포지토리에서 워크플로를 수동으로 제거합니다.

다음 단계

기본 제공 콘텐츠를 사용하는 것과 동일한 방식으로 Microsoft Sentinel에서 사용자 지정 콘텐츠를 사용합니다.

자세한 내용은 다음을 참조하세요.