CloudTrail 콘솔을 사용하면 최근 90일간 기록된 이벤트를 확인할 수 있다. 콘솔에서 이벤트를 90일까지 밖에 확인할 수 없기 때문에 초기 CloudTrail를 생성할 때 S3에 이벤트를 저장할 수 있도록 설정한다.
※ CloudTrail 이란?
AWS 계정의 거버넌스, 규정 준수, 운영 감사, 위험 감사를 지원하는 서비스로 CloudTrail을 사용하면 AWS 인프라에서 계정 활동과 관련된 작업을 기록하고 지속적으로 모니터링하며 보관할 수 있습니다.
CloudTrail은 AWS Management Console, AWS SDK, 명령줄 도구 및 기타 AWS 서비스를 통해 수행된 작업을 비롯하여 AWS 계정 활동의 이벤트 기록을 제공하고 이러한 이벤트 기록을 통해 보안 분석, 리소스 변경 추적, 문제 해결을 간소화할 수 있습니다.
다음은, S3에 저장된 90일이 지난 CloudTrail 이벤트 로그를 Athena를 이용하여 확인하는 방법이다.
CloudTrail 이벤트 로그에 대한 쿼리를 실행하려면 먼저 Athena에서 테이블을 만들어야 한다.
1. Athena에 https://console.aws.amazon.com/cloudtrail/에서 CloudTrail 콘솔로 이동
2. Event history 선택
3. Run advanced queries in Amazon Athena 선택
4. Storage location - [CloudTrail 이벤트 로그 저장 S3 버킷명] 선택
5. Create table을 클릭하면 테이블이 작성되며, "Go To Athena" 선택
이벤트 검색은 AWS 에서 제공한 아래 샘플 쿼리를 사용하시면 됩니다.
SELECT
eventname,
eventtime,
eventsource,
requestparameters,
useragent,
useridentity
FROM "Name of the table created e.g cloudtrail-logs"
WHERE eventname= 'ChangeResourceRecordSets'
AND
(eventtime BETWEEN 'yyyy-mm-dd%' AND 'yyyy-mm-dd%')
ORDER By eventtime DESC
LIMIT 100