arrow_back 설계로그 목록
ADR-0025
공통
설계중
검증하려고 남긴 기록의 수명 — 로그도 자료다
작성 2026-07-26 · 최종 갱신 2026-07-26
이 로그는 개입 로그·근거 기록·순차공개 로그·결함 이력·무결성 상태를 남기라고 요구해 왔다. 그런데 ADR-0005 는 감정 자료의 수명만 정했고, 그 기록들 자체의 보존 기간과 접근 권한은 어디에도 없다. 로그를 세 종류로 나누어 종류별로 수명을 정하고, 기간을 정하지 못한 종류는 만들지 않는다.
info이 문서는 연구·설계 기록이며, 현재 제공 중인 서비스가 아닙니다. 각 항목의 상태 표기를 함께 확인해 주세요.
help맥락
검증을 요구할 때마다 기록이 하나씩 늘었다. ADR-0003 은 사람의 판단과 사유를, ADR-0009 는 참조한 근거를, ADR-0014 는 무엇을 언제 공개했는지를, ADR-0015 는 결함 이력을, ADR-0024 는 산출 시점의 게이트 상태를 남기게 했다.
ADR-0005 는 감정 자료의 수명을 정하면서 재현 자료를 파생물로 재정의했다. 그러나 그 기록의 대상은 감정 자료이지 위 기록들이 아니다. ADR-0009 는 근거 기록이 개인정보를 담을 수 있다고 적고 ADR-0005 의 적용을 받는다고만 했는데, 그 기록의 기준은 감정 자료를 전제로 쓰여 있어 로그에 그대로 얹히지 않는다.
기간이 정해지지 않은 기록은 영구 보관된다. 지우자고 결정한 사람이 없으면 남는 것이 기본값이기 때문이다. 검증을 위해 만든 기록이 그 자체로 또 하나의 개인정보 축적이 된다.
법도 두 방향으로 요구한다. 한쪽에서는 접속기록을 보관하고 위조·변조를 막으라 하고, 다른 쪽에서는 목적을 달성하면 지체 없이 파기하라고 한다. 종류를 나누지 않으면 이 긴장은 해소되지 않는다.
alt_route검토한 대안
대안 A기각
검증 기록은 모두 장기 보존한다.
ADR-0005 대안 A 와 같은 이유로 기각한다. 내부의 검증 요구는 「개인정보 보호법」 제21조 제1항 단서가 말하는 '다른 법령'이 아니며, 보존의 근거가 되지 못한다.
대안 B기각
로그를 하나의 범주로 보고 단일 기간을 정한다.
성격이 다른 것을 묶으면 짧은 쪽에 맞추면 검증이 무너지고 긴 쪽에 맞추면 파기 의무가 무너진다. 결함 이력과 개인의 판단 기록을 같은 기간으로 두는 것은 어느 쪽으로도 틀린다.
대안 C채택
로그를 종류로 나누고 종류별로 수명과 접근 권한을 따로 정한다.
보관하라는 요구와 파기하라는 요구가 서로 다른 대상을 향한다는 점을 설계에 반영한다. 개인을 식별하지 않는 기록은 남기고, 식별하는 기록은 원본의 수명을 따르게 한다.
gavel결정
- 로그를 세 종류로 나눈다. 절차 로그(누가 언제 무엇을 판단·승인했는가), 근거 로그(무엇을 참조했는가), 무결성 로그(어떤 버전과 상태로 산출했는가). 종류마다 보존 기간·접근 권한·삭제 전파 여부를 따로 정한다.
- 로그의 기본형도 원본이 아니라 파생물이다(ADR-0005 결정 1 과 같은 원리). 근거 로그는 참조한 자산의 식별자와 해시로 남기고 사건의 내용을 옮겨 적지 않는다.
- 로그에 개인 식별자를 넣지 않는다. 사건과 사용자는 그 시스템 안에서만 해석 가능한 대체 식별자로 남기며, 대체 식별자와 실제 신원의 연결은 기관이 보유하고 우리는 받지 않는다(ADR-0008 결정 2).
- ADR-0005 결정 4 의 삭제 전파 대상에 절차 로그와 근거 로그를 포함한다. 무결성 로그와 결함 이력은 남긴다. 남길 수 있는 이유는 그것이 개인을 식별하지 않기 때문이며, 식별 가능한 형태가 되면 남기지 않는다.
- 로그 열람 자체를 기록한다. 다만 그 기록은 열람자·시각·대상 종류까지만 남긴다. 감사 기록의 감사 기록을 무한히 만들지 않기 위해서다.
- 보존 기간을 정하지 못한 종류의 로그는 생성하지 않는다. 기간 없는 기록은 영구 보관이며, 영구 보관은 결정이 아니라 결정하지 않은 상태다.
menu_book근거
- 두 요구가 서로 다른 대상을 향한다는 것이 이 기록의 출발점이다. 「개인정보 보호법 시행령」 제30조 제1항 제5호는 침해사고 대응을 위한 접속기록의 보관과 위조·변조 방지 조치를 요구하고, 같은 법 제21조 제1항은 목적을 달성한 개인정보를 지체 없이 파기하도록 하면서 예외를 '다른 법령에 따라 보존하여야 하는 경우'로 한정한다. 앞의 요구는 시스템의 안전을 향하고 뒤의 요구는 개인의 정보를 향한다. 종류를 나누면 둘 다 지킬 수 있다.
- 결정 3(대체 식별자)의 근거는 같은 법 제3조 제7항이다. 익명처리로 목적을 달성할 수 있으면 익명으로, 그렇지 않으면 가명으로 처리하도록 한다. 로그의 목적은 대개 '같은 판단이 있었는가'를 확인하는 것이지 '누구였는가'를 아는 것이 아니다.
- 결정 4 가 무결성 로그와 결함 이력을 남기는 이유는 ADR-0015 때문이다. 그 기록은 어느 버전에 어떤 결함이 있었고 언제 확인·통지·수정되었는지를 외부에서 조회할 수 있게 했다. 그 이력이 사건과 함께 지워지면 ADR-0004 결정 2 의 버전 기재는 확인할 대상을 잃는다.
- 결정 2 는 근거 로그가 사건 내용의 사본이 되는 것을 막는다. 어떤 자산을 참조했는지가 사건의 내용을 드러낼 수 있다는 점은 ADR-0009 가 이미 한계로 적었다. 식별자와 해시만 남기면 '무엇을 근거로 삼았는가'는 확인되고 '사건이 무엇이었는가'는 남지 않는다.
- 결정 6 의 금지가 필요한 이유는 기본값 때문이다. ADR-0022 가 승격에서 확인한 것과 같다. 정하지 않으면 실무는 가장 저항이 적은 쪽으로 흐르고, 기록에서 그 방향은 언제나 '남긴다'이다.
- 「개인정보 보호법」 제28조는 개인정보취급자의 범위를 최소한으로 제한하고 관리·감독하도록 한다. 결정 5 의 열람 기록은 그 감독이 사후에 확인 가능하도록 하는 최소한의 장치다.
warning이 결정이 만드는 한계
- 종류를 나누면 운영이 복잡해진다. 한 사건에 관한 기록이 서로 다른 수명을 갖게 되므로, 삭제 시점에 무엇이 남고 무엇이 사라지는지 설명할 수 있어야 한다.
- 대체 식별자는 재식별 위험을 완전히 없애지 못한다. 로그의 조합이 사건을 특정할 수 있으며, 이 기록은 그 위험을 줄일 뿐 없앴다고 말하지 않는다.
- 근거 로그에 사건 내용을 남기지 않으면 사후 분석이 약해진다. 왜 그런 산출이 나왔는지 되짚을 때 식별자만으로는 재구성되지 않는 국면이 있으며, 이는 ADR-0005 가 해시에 대해 적은 것과 같은 교환이다.
- 결정 6 은 기능 추가를 늦춘다. 새 기록을 만들려면 먼저 그 수명을 정해야 하므로, 급한 디버깅 목적의 임시 로그를 만들 수 없다.
- 이 기록은 기간의 구체적 값을 정하지 못했다. 종류와 원칙만 정했으며, 값은 운용 형태가 정해질 때 개정으로 채운다. 그전까지는 결정 6 에 따라 해당 종류의 로그를 생성하지 않는다.
event_repeat폐기 조건
- 각 종류의 보존 기간을 실제 값으로 정할 수 있게 될 때 — 이 기록을 개정해 값을 적는다.
- 「개인정보 보호법 시행령」 제30조 또는 관련 고시가 개정되어 보관 요구가 달라질 때.
- 로그 조합으로 재식별이 가능하다는 것이 확인될 때 — 결정 3 의 방식을 재작성한다.
- ADR-0005 가 로그를 포함하도록 개정될 때 — 두 기록의 경계를 다시 긋는다.
balance근거자료
인용 법령
참고자료
법령 문언과 이 로그의 앞선 결정에만 근거한다. 로그 보존 기간에 관한 업계 관행을 인용하지 않은 이유는, 관행을 근거로 삼으면 그 관행이 곧 기준이 되기 때문이다. 값은 운용 형태가 정해질 때 근거와 함께 적는다.
hub담당 리더
마디L60
시스템 총괄 · Master API Gateway
대한민국 변호사급 / 법원행정처 전산정보국장 출신급
설계로그는 특정 법률 분야가 아니라 시스템 전체의 설계 결정을 다룬다. 개별 도메인 리더가 아니라 60명 리더 시스템의 운영·품질을 총괄하는 리더가 담당한다.
리더 프로필 보기 arrow_forward