Azure Monitor를 사용하여 보안 이벤트 모니터링
Azure Monitor 활동 로그는 구독 수준 이벤트에 대한 정보를 제공하는 Azure의 플랫폼 로그입니다. 활동 로그에는 리소스가 수정되거나 가상 머신이 시작될 때와 같은 정보가 포함됩니다. Azure Portal에서 활동 로그를 보거나 PowerShell 및 Azure CLI를 사용하여 항목을 검색할 수 있습니다. 이 문서에서는 활동 로그를 보고 다른 대상으로 보내는 방법에 대한 정보를 제공합니다.
더 많은 기능을 사용하려면 다음과 같은 이유로 활동 로그를 이러한 위치 중 하나 이상으로 보내는 진단 설정을 만듭니다.
더 복잡한 쿼리 및 경고를 위해 Azure Monitor 로그로 전송하고 최대 2년 동안 더 오래 보관할 수 있습니다.
Azure 외부로 전달하기 위해 Azure Event Hubs로 보냅니다.
더 저렴하고 장기적인 보관을 위해 Azure Storage로 보냅니다.
활동 로그의 항목은 시스템에서 생성되며 변경하거나 삭제할 수 없습니다.
활동 로그의 항목은 가상 머신 다시 시작과 같은 컨트롤 플레인 변경 내용을 나타내며, 관련되지 않은 항목은 Azure 리소스 로그에 기록되어야 합니다.
보존 기간
활동 로그 이벤트는 90일 동안 Azure에 보관된 후 삭제됩니다. 볼륨에 관계없이 이 시간 동안 항목에 대한 요금이 부과되지 않습니다. 더 긴 보존과 같은 더 많은 기능을 사용하려면 진단 설정을 만들고 필요에 따라 항목을 다른 위치로 라우팅합니다. 이전 섹션의 기준을 참조하세요.
활동 로그 보기
Azure Portal의 대부분의 메뉴에서 활동 로그에 액세스할 수 있습니다. 활동 로그를 여는 메뉴에서 해당 초기 필터가 결정됩니다. 모니터 메뉴에서 열면 구독에 대한 유일한 필터입니다. 리소스 메뉴에서 열면 필터가 해당 리소스로 설정됩니다. 언제든지 필터를 변경하여 다른 모든 항목을 볼 수 있습니다. 필터 추가를 선택하여 필터에 속성을 추가합니다.
활동 로그 다운로드
CSV로 다운로드를 선택하여 현재 보기에 이벤트를 다운로드합니다.
변경 기록 보기
일부 이벤트의 경우 해당 이벤트 시간에 발생한 변경 기록이 표시된 변경 기록을 볼 수 있습니다. 활동 로그에서 더 자세히 보려는 이벤트를 선택합니다. 변경 기록 탭을 선택하여 작업 시간 전후 최대 30분 동안 리소스에 대한 변경 내용을 확인합니다.
이벤트와 관련된 변경 내용이 있는 경우 선택할 수 있는 변경 내용 목록이 표시됩니다. 변경 내용을 선택하면 변경 내용 페이지가 열립니다. 이 페이지는 리소스에 대한 변경 내용을 표시합니다. 다음 예에서는 VM의 크기가 변경된 것을 볼 수 있습니다.
활동 로그 이벤트를 검색하는 다른 방법
다음 방법을 사용하여 활동 로그 이벤트에 액세스할 수도 있습니다.
- Get-AzLog cmdlet을 사용하여 PowerShell에서 활동 로그를 검색합니다. Azure Monitor PowerShell 샘플을 참조하세요.
- az monitor activity-log를 사용하여 CLI에서 활동 로그를 검색합니다. Azure Monitor CLI 샘플을 참조하세요.
- Azure Monitor REST API를 사용하여 REST 클라이언트에서 활동 로그를 검색합니다.
Log Analytics 작업 영역으로 보내기
활동 로그를 Log Analytics 작업 영역으로 보내 Azure Monitor 로그 기능을 사용하도록 설정하려면 다음을 수행합니다.
- Azure Monitor에서 수집한 다른 모니터링 데이터와 활동 로그 데이터의 상관 관계를 지정합니다.
- 함께 분석하기 위해 여러 Azure 구독 및 테넌트의 로그 항목을 하나의 위치로 통합합니다.
- 로그 쿼리를 사용하여 복잡한 분석을 수행하고 활동 로그 항목에 대한 심층적인 인사이트를 확보합니다.
- 더 복잡한 경고 논리를 위해 작업 항목과 함께 로그 경고를 사용합니다.
- 활동 로그 보존 기간보다 더 오래 활동 로그 항목을 저장합니다.
- Log Analytics 작업 영역에 저장된 활동 로그 데이터에 대한 데이터 수집 또는 보존 요금이 부과되지 않습니다.
- Log Analytics의 기본 보존 기간은 90일입니다.
활동 로그 내보내기를 선택하여 활동 로그를 Log Analytics 작업 영역으로 보냅니다. 단일 구독에서 최대 5개의 작업 영역으로 활동 로그를 보낼 수 있습니다.
Log Analytics 작업 영역의 활동 로그 데이터는 Log Analytics에서 로그 쿼리를 사용하여 검색할 수 있는 AzureActivity라는 테이블에 저장됩니다. 이 테이블의 구조는 로그 항목의 범주에 따라 다릅니다.
일부 시나리오에서는 AzureActivity 필드의 값에 해당하는 값과 다른 대/소문자를 가질 수 있습니다. AzureActivity에서 데이터를 쿼리하여 문자열 비교에 대/소문자를 구분하지 않는 연산자를 사용하거나 스칼라 함수를 사용하여 비교 전에 필드를 균일한 대/소문자로 강제 적용할 때 주의해야 합니다. 예를 들어 문자열 비교를 수행할 때 필드의 tolower() 함수를 사용하여 항상 소문자 또는 =~ 연산자로 강제 적용합니다.
Azure Storage에 보내기
감사, 정적 분석 또는 백업을 위해 90일 이상 로그 데이터를 보존하려는 경우 활동 로그를 Azure Storage 계정으로 보냅니다. 이벤트를 90일 이하로 보존해야 하는 경우 스토리지 계정에 대한 보존을 설정할 필요가 없습니다. 활동 로그 이벤트는 90일 동안 Azure 플랫폼에 보존됩니다.
활동 로그를 Azure로 보내면 이벤트가 발생하는 즉시 스토리지 계정에 스토리지 컨테이너가 만들어집니다.
각 PT1H.json Blob에는 Blob URL에 지정된 시간 동안 수신된 로그 파일의 이벤트와 함께 JSON 개체가 포함됩니다. 현재 시간 동안 이벤트는 생성된 시기에 관계없이 수신될 때 PT1H.json 파일에 추가됩니다. URL의 분 값인 m=00은 항상 00입니다. Blob은 시간 단위로 만들어집니다.