문서 유출은 ‘권한 관리 실패’에서 시작된다 Google Drive의 공유 구조와 보안 위협 이해 Google Drive 공유 이력 수집을 위한 스크립트 설계 이상 권한 탐지 및 자동 알림 시스템 구성 Google Workspace 기반 확장 전략: 감사 로그 + Chat 연동 보안은 시스템이 감시해야 유지된다
문서 유출은 ‘권한 관리 실패’에서 시작된다
조직이 Google Drive를 파일 저장소로 사용하면서 가장 경계해야 할 문제는 바로 문서 접근 권한 관리 실패다. 공유된 링크가 외부로 유출되거나, 내부 직원이 퇴사 후에도 파일을 계속 열람할 수 있는 사례는 생각보다 많다.
문서가 많아질수록 파일별 접근 권한을 개별적으로 확인하는 건 사실상 불가능하다. 하지만 Google Workspace Admin Console과 Apps Script를 함께 활용하면 파일 공유 내역과 접근 기록을 자동 수집하고, 이상 패턴을 탐지하여 즉시 알림을 주는 시스템을 구축할 수 있다.
이번 글에서는 Google Drive의 공유 설정과 사용자 접근 이력을 분석하고, 비정상 공유(예: 외부 이메일, 전체 공개, 퇴사자 접근 등)를 탐지해 Google Chat 또는 Gmail로 자동 알림을 보내는 보안 모니터링 시스템을 만드는 방법을 설명한다.
Google Drive의 공유 구조와 보안 위협 이해
Google Drive는 파일이나 폴더 단위로 세밀한 공유 설정이 가능하지만, 현업에서는 다음과 같은 보안 위험이 자주 발생한다.
주요 보안 위협 사례 유형 설명 전체 공개 링크 누구나 열람 가능한 설정으로 변경됨 외부 도메인 공유 회사 외부 이메일에 실수로 파일 공유 퇴사자 접근 계정 삭제 누락으로 파일 열람 지속 과도한 권한 부여 단순 조회가 아닌 편집/관리 권한 부여
이러한 사례는 Google Workspace Admin이 매일 로그를 확인하거나, Drive 사용 현황을 직접 추적하지 않는 이상 파악이 어렵다.
그래서 필요한 것이 접근 로그 자동 분석과 이상 권한 탐지 시스템이다.
Google Drive 공유 이력 수집을 위한 스크립트 설계
DriveApp에서는 파일의 공유 상태를 확인할 수 있다. Apps Script를 통해 조직 내 특정 폴더 또는 전체 문서에 대해 공유 대상 이메일, 권한 수준, 공개 범위 등을 수집할 수 있다.
예제 스크립트 – 공유 설정 수집 javascript 복사 편집 function scanDrivePermissions() { const folder = DriveApp.getFolderById("폴더ID"); const files = folder.getFiles(); const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("공유현황"); sheet.clearContents(); sheet.appendRow(["파일명", "URL", "공유 대상", "권한", "비고"]);
if (file.getSharingAccess() === DriveApp.Access.ANYONE) { sheet.appendRow([file.getName(), file.getUrl(), "전체 공개", "주의", "공개 설정"]); } } } ▶ 이 스크립트를 정기적으로 실행하면, 어떤 문서가 누구에게 공유되었는지, 전체 공개 여부를 자동으로 시트에 기록할 수 있다.
이상 권한 탐지 및 자동 알림 시스템 구성
공유 데이터를 수집했다면, 이제는 조직 정책에서 벗어나는 권한을 탐지하고 관리자에게 알림을 보내는 구조를 만들 수 있다.
이상 권한 예시 조건 이메일 도메인이 회사 외 (예: @gmail.com, @naver.com) 전체 공개 공유 항목 존재 퇴사자 이메일 리스트와 일치 이상 공유 탐지 및 Gmail 알림 발송 스크립트 javascript 복사 편집 function alertAbnormalSharing() { const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("공유현황"); const data = sheet.getDataRange().getValues();
for (let i = 1; i < data.length; i++) { const [name, url, email, role] = data[i];
if (email.includes("@gmail.com") || email.includes("전체 공개")) { const subject = `[보안 알림] Google Drive 공유 이상 탐지`; const body = ` 문서명: ${name} URL: ${url} 공유 대상: ${email} 권한: ${role}
즉시 공유 설정을 검토해 주세요. `;
MailApp.sendEmail("admin@회사.com", subject, body); } } } ▶ 이 스크립트는 일일 또는 주간 단위로 실행되며, 조직 보안 담당자에게 잠재적 위험 공유 항목을 자동 알림한다.
Google Workspace 기반 확장 전략: 감사 로그 + Chat 연동
Google Workspace에서는 Admin Console을 통해 Drive 감사 로그도 확인할 수 있다. Apps Script 외에도 BigQuery 연동 또는 Admin Reports API를 활용해 더 정밀한 분석도 가능하다.
확장 구성 전략 기능 설명 Google Chat Webhook 연동 이상 공유 탐지 시 Chat 채널로 실시간 알림 BigQuery + Data Studio 장기 보안 로그 시각화 및 주간 리포트 생성 Google Calendar 연동 보안 점검 주기 자동 예약 (예: 매주 수요일 9시) Google Groups 부서별 보안 관리자 그룹 자동 통보 시스템
이렇게 구성하면 단순한 공유 확인을 넘어 보안 체계 전반을 자동화된 모니터링 시스템으로 전환할 수 있다.
보안은 시스템이 감시해야 유지된다
Google Drive는 협업에 매우 강력한 도구지만, 그만큼 공유 관리가 느슨해지면 정보 유출 리스크가 급격히 증가한다. 사람이 직접 하나하나 확인하는 방식으로는 이 문제를 예방할 수 없다.
Google Workspace에서 제공하는 Apps Script, Gmail, Chat, Admin SDK 등을 활용하면 문서 공유 이력 수집, 권한 이상 탐지, 자동 알림까지 가능한 실시간 보안 감시 시스템을 구축할 수 있다.
지금 이 글에서 제시한 구조를 팀 드라이브 또는 주요 문서 폴더에 적용해 보자. 한 번의 자동화 설정이 조직 전체의 보안 수준을 실질적으로 끌어올리는 결과로 이어질 것이다.