기밀 정보 보안과 고객의 개인 데이터 보호는 모든 기업의 중요한 목표이다. 회사에서는 다양한 규정에서 요구하는 보고서도 즉시 생성할 수 있어야 한다. 그와 동시에 내부적으로는 직원들과 외부적으로는 고객 및 비즈니스 파트너와 비즈니스 정보를 공유해야 한다. IBM Optim Data Redaction은 이처럼 충돌의 여지가 있는 모든 목표를 해결하는 솔루션이다. IBM Optim Data Redaction의 자동화된 개정 기능을 통해 구조화되지 않은 개인정보 관련 정보를 손쉽게 효율적으로 보호할 수 있다.
종이 문서에 있는 개인 정보를 제거하는 한 가지 방법으로 펜을 사용하여 검게 칠하는 방법이 있다. 전자 문서의 경우 워드 프로세서 애플리케이션을 사용하여 유사한 조치를 취할 수 있다. 하지만 이 경우에는 주의를 기울여야 한다. 왜냐하면 정보가 디스플레이 화면과 출력물에서 마스킹되어 표시되더라도 문서 파일에서 숨겨진 데이터로 유지될 수 있기 때문이다. 따라서 개인 정보를 안전하게 제거하는 방법을 사용할 필요가 있다. 또 하나 중요한 고려사항은 회사 내 여러 위치에 있는 수많은 문서를 효율적으로 처리할 수 있어야 한다는 것이다.
이 기사에서는 IBM Optim Data Redaction의 자동화된 개정 기능에 대한 개요를 살펴본 후 제어된 방식의 개정을 위한 GUI 클라이언트인 검토 도구를 사용하여 반자동 방식으로 문서를 개정하는 방법에 대해 설명한다.
그림 1에서 보듯이 IBM Optim Data Redaction v.1.1.1에는 개정 서버 및 검토 도구가 있다. 개정 서버에서는 문서에서 개인정보 관련 정보를 자동으로 추출하고 제거한 후 지정된 형식으로 결과를 제공한다. 이 서버에서는 검토 도구 및 기타 사용자 정의 애플리케이션을 위해서도 이러한 개정 서비스를 제공한다. 검토 도구는 대화식 개정을 수행하고 일괄처리 방식으로 개정된 문서를 검토할 수 있는 Flex 기반 웹 애플리케이션이다.
그림 1. IBM Optim Data Redaction의 컴포넌트
그림 2에서는 검토 서버의 자동화된 개정 프로세스와 관련된 주요 개념을 보여 준다.
그림 2. 자동화된 개정 프로세스
첫 번째 단계에서는 시스템이 그래픽 및 텍스트 문서 표현이 결합되어 있는 문서를 내부 형식으로 변환한다. 내부 형식으로 변환하게 되면 다양한 유형의 문서에 동일한 분석 방법을 사용할 수 있다. 그런 다음 IBM Research의 SystemT 프로젝트의 고급 엔티티 추출 기능을 사용하여 현재 문서에서 마스킹할 후보 단어를 선택한다.
엔티티 추출 대상을 정의하기 위해 정교한 SQL 형태의 언어를 개발 도구와 함께 사용할 수 있다.
엔티티 추출 기능의 한 부분은 마스킹해야 하는 단어 목록에 기반을 두고 있다. 이 목록은 개인, 위치 또는 조직과 같은 카테고리별로 준비된다. 목록에 있는 단어와 일치하는 단어가 마스킹되도록 선택된다.
또한 정규식을 사용하여 전화번호, 신용카드번호, 주민등록번호 등과 같은 단어나 패턴을 찾는 기술도 지원된다. 정규식의 패턴과 일치하는 단어가 마스킹되도록 선택된다.
사전 및 표현식 기술과 함께 컨텍스트 및 구문을 사용하는 정교한 패턴 인식 기술이 결합되어 있는 SystemT는 업계 최고 수준의 정확도를 자랑한다. 텍스트 문서 표현에서 선택된 중요 데이터는 그래픽 문서 표현에 맵핑된다. 문서 페이지별로 중요 데이터가 마스킹 처리된 형태의 이미지가 작성된다. 선택적으로 시맨틱 카테고리 이름이나 중요 데이터에 대한 또 다른 레이블을 개정된 영역의 상단에 인쇄할 수 있다. 마지막으로 수정된 페이지 이미지는 지원되는 형식의 개정된 출력 문서로 재생성된다. PDF, Microsoft Word, TIFF 또는 일반 텍스트 문서가 입력 데이터로 지원되며, 입력 문서의 형식과 상관 없이 이러한 형식 중 하나를 출력 형식으로 지정할 수 있다.
Optim Data Redaction에서는 사용자가 요구사항에 적합한 출력을 얻을 수 있도록 지원하기 위해 정책 모델을 사용한다. 정책 모델은 문서에서 마스킹되어야 하는 시맨틱 엔티티의 종류를 정의한다. 이 모델에서는 지정된 역할(예: 관리 담당자)이 지정된 엔티티 유형(예: 주민등록번호, 전화번호 또는 주소)을 볼 수 있는지 여부를 기술한다. 표 1에서는 의료 레코드의 개정에 사용되는 엔티티 유형 및 역할의 예제를 보여 준다.
표 1. 엔티티 유형 및 역할 예제
| 엔티티 유형 | 1차 진료 의사 역할 | 상담 의사 역할 | 관리 담당자 |
|---|---|---|---|
| SSN | 예 | 아니오 | 예 |
| 전화번호 | 예 | 아니오 | 예 |
| 주소 | 예 | 아니오 | 예 |
| 의료 기록 | 예 | 예 | 아니오 |
| 키 | 예 | 예 | 아니오 |
| 무게 | 예 | 예 | 아니오 |
1차 진료 의사는 환자의 의료 레코드에 있는 모든 필드를 볼 수 있다. 소견을 듣기 위해 레코드를 다른 의사에게 보낼 경우 의료 기록, 키 및 몸무게 등은 상담 의사에게 중요한 항목인 반면 SSN, 전화번호 또는 주소는 필요하지 않은 항목이다. 이에 반해 병원에서 근무하는 관리 담당자도 결제 처리를 위해 이 레코드를 보기는 하지만 SSN, 전화번호 및 주소 정보만 필요하다. 1차 진료 의사가 받는 사람의 역할을 지정하여 적절한 단어를 마스킹하는 방법을 통해 받는 사람 각자에게 적합한 버전의 문서를 준비할 수 있다.
스캐닝된 양식에 적합한 또 다른 개정 방법인 템플리트를 사용할 수도 있으며, 이 방법을 사용할 경우에는 마스킹을 위한 시맨틱 분석이 필요하지 않다. 템플리트에는 문서와 마스킹 위치를 식별하는 데 사용되는 정보가 있다. 마스킹 위치는 마스킹 사각형의 좌표와 크기로 지정되며, 시스템에서 기울기나 배율 등으로 인한 스캐닝 오차를 처리해야 한다. 따라서 이 방법은 필드의 위치가 고정된 양식의 스캐닝된 이미지에 가장 적합하다. 템플리트를 사용한 양식 개정에 대한 자세한 정보는 템플리트 작성하기 섹션을 참조한다.
저장소는 입출력 문서와 작업 파일을 저장하기 위한 디렉토리 그룹이다. 저장소가 단순히 디스크에 있을 수도 있지만 해당 커넥터 API를 사용하여 Enterprise Content Management 시스템을 개정 서버에 연결할 수도 있다.
저장소에는 두 종류가 있다. 첫 번째 유형은 일괄처리 저장소이다. 개정 서버에서는 일괄처리 디렉토리를 모니터링하여 처리할 수신 문서를 발견한다. 문서가 단순히 일괄처리 저장소의 입력 디렉토리에 복사된 경우 서버에서는 문서를 자동으로 개정한 후 결과를 출력 디렉토리에 저장한다(그림 3 참조).
그림 3. 저장소를 통한 일괄처리 프로세스
역할 및 출력 형식과 같은 다양한 속성을 지원하기 위해 각기 별도로 구성된 여러 저장소를 정의한다. 예를 들어, 이렇게 하면 다양한 역할의 독자에게 적합한 다양한 출력이 작성된다. 이전 섹션에서 살펴본 의료 레코드 예제의 경우 상담 의사 및 관리 담당자 역할에 적합한 문서를 준비하기 위해 각 역할에 대한 별도의 저장소가 있어야 한다.
다른 유형의 저장소는 검토 도구나 Java 또는 SOAP API를 사용하는 클라이언트 애플리케이션을 비롯하여 클라이언트 애플리케이션별로 개정할 문서를 제공하는 데 사용된다. 이러한 API를 사용하면 원격 시스템에 있는 사용자 정의 애플리케이션에서 요청을 전송하여 저장소의 문서나 클라이언트가 전송한 문서를 개정할 수 있다(그림 4 참조).
그림 4. 문서 저장소를 통해 클라이언트에게 제공되는 개정 서비스
IBM Optim Data Redaction 버전 1.1.1에서는 영어, 독일어, 프랑스어 및 스페인어 문서가 지원된다. 하지만 사용자 인터페이스는 영어로만 제공된다.
검토 도구는 문서를 개정하기 위해 웹 브라우저를 통해 개정 서버에 액세스하는 데 사용되는 클라이언트 애플리케이션이다. 이 도구를 사용하여 문서를 열면 창에 개정된 문서의 이미지가 표시된다. 그런 다음 GUI를 사용하여 문서를 추가로 개정할 수 있다. 그리고 검토 도구를 사용하여 템플리트를 작성하고 일괄처리 프로세스의 결과를 검토할 수도 있다. 검토 도구의 조작에 대해서는 섹션 3에서 자세히 설명한다.
검토 도구를 사용하면 원격 클라이언트 시스템의 웹 브라우저를 통해 개정 서버에 액세스할 수 있다. 이 브라우저에서는 검토 도구와 원격 클라이언트 시스템에서 문서를 개정하는 데 필요한 GUI를 제공한다.
검토 도구의 조작에 대해 설명하는 이 섹션에서는 먼저 서버에 로그인하여 문서 선택 메뉴를 확인하는 과정부터 시작한다(그림 5 참조).
그림 5. 문서 선택 메뉴
Redact documents or create template 단추를 클릭하여 문서 선택 패널을 시작할 수 있다. 그리고 Repository 탭을 클릭하면 저장소에 있는 샘플 문서의 목록이 표시된다(그림 6 참조).
그림 6. 문서 선택 목록
Optim Data Redaction에는 Person, Location 및 Organization과 같은 13가지의 주요
카테고리에 대해 사전 정의된 정책 유형이 있다. 샘플 General 및 Restricted
역할이 기본적으로 제공되기는 하지만 조직의 요구에 가장 적합한 사용자 정의 역할을 작성할 수도 있다.
이 패널에서 문서를 선택하고 열면 선택한 역할을 기반으로 서버에 의해 문서가 자동으로
개정된다. 그런 다음 결과가 문서 개정 화면에 표시된다. 그림 7에서는 General
역할을 사용하여 개정된 샘플 문서를 보여 준다.
그림 7. 문서 개정 화면
Person, Social Security Number 및 Phone Number가 General
역할에 마스킹되어야 하는 엔티티 유형으로 지정되어 있다는 것을 알 수 있다. 이러한 엔티티 유형의
텍스트는 밝은 파란색 사각형으로 마스킹된 상태로 화면에 표시된다. 이 개정된 문서를 저장하면 해당
단어가 개정 사각형으로 대체된다. 이 화면에서 추가 마스크를 작성할 수 있으며 불필요한 마스크를
제거할 수도 있다. 마우스 커서로 단어를 선택하면 해당 단어가 개정된다. Find를
클릭하여 문서 전체에서 해당 단어를 개정할 수 있다. 그리고 마우스 커서로 전체 단락, 이미지 및
페이지를 강조표시하여 개정할 수도 있다. 특성 패널의 속성 옵션을 변경하여 선택한 오브젝트를 템플리트
ID로 설정할 수 있다. 자세한 정보는 템플리트 작성하기 섹션을 참조한다.
Preview/Print 단추를 클릭하여 출력 문서의 모습을 검사할 수 있다. 그림 8에서 보듯이 선택한 단어 또는 영역 대신 검은색 사각형이 표시된다.
그림 8. Preview 화면
개정이 완료되면 Submit를 클릭하여 문서를 저장할 수 있다. 이 예제에서는 원본 문서가 개정 서버의 저장소에서 로드되며, 출력이 같은 저장소에 저장된다. 또한 원격 클라이언트의 로컬 파일 시스템에서 문서를 열고 저장할 수도 있다.
양식을 개정하기 위해 검토 도구를 통해 템플리트를 작성하여 양식에 있는 관련 엔티티를 표시할 수 있다(그림 9 참조).
그림 9. 템플리트 작성
템플리트를 작성하려면 검토 도구에서 예제 양식을 열어야 한다. 이 양식은 일반적으로 PDF 또는 TIFF 형식이다. 이 예제는 비어 있거나 채워져 있을 수 있다. 그런 다음에는 서버에서 다양한 양식의 인스턴스를 구별할 수 있도록 양식에서 적어도 두 영역을 템플리트 ID로 표시해야 한다. 템플리트 ID는 양식의 제목, 문서 ID 번호 또는 기업 로고와 같이 이 양식의 모든 사본에 존재하는 단어나 그래픽이어야 한다. 마우스를 끌어서 마스킹할 영역을 강조표시한 다음 Create a new template를 클릭하여 템플리트 파일로 저장한다.
템플리트를 작성한 후에는 검토 도구를 열고 Apply template를 클릭하여 동일한 양식을 사용하면서 내용이 이미 채워져 있는 다른 문서에 템플리트를 적용할 수 있다. 이제 서버에서 템플리트의 문서 ID와 검토 도구에 현재 열려 있는 문서를 비교한다. 비교 결과가 일치하면 문서 페이지의 지정된 영역이 마스킹된다. 화면에서 결과를 확인할 수 있다.
템플리트는 양식을 일괄처리 프로세스로 개정할 때 특히 유용하다. 예를 들어, 저장소가 적합한 템플리트를 사용하여 구성되어 있다면 수기로 작성되었거나 기계를 통해 인쇄된 후 스캐닝한 대량의 양식을 사용자 간섭 없이 일괄처리 방식으로 처리할 수 있다(그림 10 참조).
그림 10. 템플리트를 사용하는 자동화된 개정 프로세스
개정 서버에 의해 자동으로 개정된 문서의 경우 눈으로 직접 확인할 필요가 있을 수도 있다. 출력 디렉토리에 저장하기 전에 검토하기 위해 개정된 문서를 임시로 보류하도록 서버를 구성할 수 있다. 그런 다음 검토 도구에서 Review batch-redacted documents를 클릭한 다음 개정된 문서를 필요에 따라 수정 또는 조정하여 보류 중인 각 문서를 검토할 수 있다. 검토를 마친 다음에는 Submit를 클릭하여 각 문서를 출력 디렉토리에 저장할 수 있다. 그런 다음에는 검토할 다음 보류 문서가 자동으로 열린다. 그림 11에서는 지속적으로 빠르게 진행되는 반자동 검토 조작을 보여 준다. 개정된 결과에 대한 전체 검사 또는 무작위 샘플링을 지원하는 방법으로 보류할 문서 또는 검토 없이 저장할 문서의 양을 백분율(0%-100%)로 지정할 수 있다.
그림 11. 일괄처리 결과에 대한 검토
문서를 처리하는 데 사용할 수 있는 여러 가지 워크플로우 옵션이 있다. 예를 들어, 필요에 따라 한 번에 하나의 문서를 개정할 수도 있지만 회사에 대량의 아카이브 문서가 이미 있을 경우에는 일괄처리 프로세스를 사용하여 개정할 수도 있다. 문서가 주기적으로 또는 비주기적으로 작성되는 경우에는 문서가 작성될 때마다 문서를 개정해야 한다. 그런 다음 그러한 수신 문서를 지속적으로 감시하면서 자동으로 개정하도록 서버를 구성할 수 있다.
자동화된 개정 프로세스에서 템플리트 준비 단계를 기본 워크플로우로 추가하고 검토 워크플로우를 사후 처리로 추가할 수 있다.
또한 Optim Data Redaction이 회사의 엔터프라이즈 컨텐츠 관리 시스템과 통합되어 있는 경우에는 이러한 워크플로우를 비즈니스 프로세스의 일부로서 시스템에 포함시킬 수 있다(그림 12 참조).
그림 12. ECM 시스템과 통합된 개정 워크플로우
IBM Optim Data Redaction은 구조화되지 않은 문서 및 양식의 중요한 정보를 효율적으로 보호하는 솔루션이다. 검토 서버에서는 고급 엔티티 추출 소프트웨어 및 템플리트를 사용하여 문서를 자동으로 개정한다. 검토 도구에서는 개정된 문서에 대한 수동 개정 및 검토를 지원한다. 이 기사에서는 자동화된 개정 기능에 대한 개요를 설명하고 검토 도구를 이용한 개정 조작 예제를 살펴보았다.
이 기사를 검토하고 소중한 조언을 준 Optim Data Redaction 개발팀의 Joshua Fox와 Michael Pelts에게 감사의 뜻을 전한다.
- 구조화되지 않은 컨텐츠에 대한 분석 및 검색과
관련된 두 가지 주요 연구 주제를 다루는 IBM의
SystemT 프로젝트에 대해 알아보자.
-
IBM
Optim Data Redaction: 문서 및 양식에 있는 중요 컨텐츠를 자동으로 인식하고 제거한다.
- IBM
Optim Data Redaction: Reconciling openness with privacy: 이 백서에서는 전체 자동화된 개정 솔루션의 특징에 대해 설명한다.