기술 이모저모/[AWS] Workshop

[AWS][Macie] S3 Bucket 주민등록번호 찾기

Kobby 2022. 7. 8. 17:43

요즘에는 계속 SAA 자격증을 준비하느라 Examtopic 또는 Udemy만 진행했었는데,

회사 업무함에 있어서 S3 Bucket에 포함하고 있는 고유식별정보를 파악할 필요가 있어서 AWS Macie 서비스에 대해 알아보기로 했다.

 

먼저 AWS Macie 서비스는 S3 내의 민감정보를 식별하기 위해 만들어진 완전관리형의 서비스이다.

온프레미스로 따지면 Privacy-I와 같이 개인정보검출 솔루션과 비슷한 역할을 한다.

AWS Macie 이점

일단 AWS Macie는 30일동안 무료이다.

하지만 30일 지나면 아래와 같은 과금이 발생한다. 언뜻보면 크게 요금이 발생할 것 같지 않지만 기업에서 관리하는 S3양이 매우 많고

1회 점검에 처리되는 데이터의 양에 따라서 과금이 발생하기 때문에 생각보다 많은 요금이 발생할 수 있다.

 

사용방법은 매우 간단하다.

 

1. AWS Macie에서 작업을 만들고, S3 Bucket을 선택한다.

AWS Macie S3 선택

 

2. 데이터 식별자 선택한다.

 1) AWS 관리형 데이터 식별자 선택
https://docs.aws.amazon.com/macie/latest/user/managed-data-identifiers.html

하지만 한국 데이터를 식별하기 위한 식별자는 유의미한게 없다.. 사용자 지정 식별자를 선택해서 만들어야 한다..

AWS Macie 관리형 데이터 식별자

 2) 사용자 지정 식별자 선택

AWS Macie 사용자 지정 식별자
주민등록번호 정규표현식

\d{2}([0]\d|[1][0-2])([0][1-9]|[1-2]\d|[3][0-1])[-]*[1-4]\d{6}

----------------------------------------------------------------------

\d{2} : 맨앞 정수 2자리(생년)는 어떤 정수값이 와도 상관없다.

([0]\d|[1][0-2]) : 첫자리가 0인경우는 뒤에 어떤 정수가 와도 괜찮다. ,, 첫자리가 1인경우 뒷자리는 0,1,2만 올수있다. 

 // (01-12 생월을 표현)

([0][1-9]|[1-2]\d|[3][0-1]) : 생일은 첫자리가 0이면 뒷자리가 0이될경우 0일이 되기 때문에 0다음에는 1-9만 올 수있다.

[-]* : 하이픈은 0개 or 1개다.

[1-4] : 주민번호 뒷자리 첫번째 숫자는 1~4만 갖는다.

\d{6} : 주민번호 첫자리를 제외한 숫자는 총 6자리다.

 

3. 점검 결과를 확인한다.

AWS Macie 점검 결과

 

S3에 개인정보 포함 여부를 확인하는것은 매우매우 중요하다.

개인정보 포함 여부를 알아야지만, 중요 S3를 분류할 수 있고/접근통제 정책을 만들 수 있고/모니터링을 할 수 있다.

 

물론 AWS에서 제공해주는 식별자로는 한국에 특화된 개인정보는 확인하기 어렵지만, 정규표현식으로 식별이 가능하다.

즉, 정규표현식만 짤 수 있으면 얼마든지 활용 가능한 서비스가 된다!!!

 

끝!!