S3 버킷 액세스 로깅 점검

필요한 S3 요청 기록을 수집하고 전달 상태·보존 기간을 확인하세요.

설명

S3 서버 액세스 로그는 버킷에 대한 요청과 응답 상태를 조사하는 데 도움이 됩니다. 필요한 요청 기록을 보관하지 않으면 비정상 접근이나 운영 오류를 분석하기 어려울 수 있습니다.

서버 액세스 로그는 최선 노력 방식으로 전달되며 일부 기록이 지연되거나 누락될 수 있습니다. 모든 요청의 완전한 감사 기록이나 접근 통제를 대신하지 않습니다.

잠재적 영향

  • 요청 경위나 오류 원인을 조사할 자료가 부족할 수 있습니다.
  • 접근·보존 관리가 부족한 로그에서 요청 정보가 노출될 수 있습니다.

해결 방법

LoggingConfiguration으로 필요한 액세스 로그를 수집하세요. S3 대상 버킷은 원본과 같은 계정·리전에 별도로 준비하고 로그 전달 권한을 부여하세요. 로그 접근과 보존 기간을 제한하고, 요청을 보낸 뒤 전달 지연을 고려해 실제 수집을 확인하세요.

예시

AccessLogBucketName은 실제 로그 대상 버킷 이름입니다. 대상 버킷과 로그 전달 서비스 권한은 별도로 준비하세요. 버전 관리와 액세스 로깅은 서로 다른 기능입니다.

변경 전

yaml
Resources:
  MyBucket:
    Type: AWS::S3::Bucket
    Properties:
      VersioningConfiguration:
        Status: Enabled

서버 액세스 로그 대상이 설정되어 있지 않습니다. 필요한 기록이 다른 감사 체계에서 수집되는지도 함께 확인하세요.

변경 후

yaml
Resources:
  MyBucket:
    Type: AWS::S3::Bucket
    Properties:
      VersioningConfiguration:
        Status: Enabled
      LoggingConfiguration:
        DestinationBucketName: !Ref AccessLogBucketName
        LogFilePrefix: loga/

별도 S3 버킷에 서버 액세스 로그를 저장하도록 구성합니다. 모든 요청이 즉시 기록된다는 보장은 아닙니다.

참조