연동 · 규제 · 보안 요구사항
닥터팔레트(Dr.Palette) 분석 결과(A1
A7 · V1V9) 가운데 외부 연동과 법·제도 요구를 모아, 우리 앱이 무엇을 직접 만들고 무엇을 어댑터 뒤로 미룰지 정한 문서다. 상태: 초안 v0.1 (2026-09-30) · MVP 기준docs/product/mvp-scope.md· 설계docs/design/architecture.md§6(어댑터),docs/design/domain-model.md법령·고시 내용은 A7 이 법제처 DRF 원문(2026-09-30 조회본)을 요약한 것이다. 이 문서는 법률 자문이 아니다. "해석 필요"로 적은 항목은 출시 전 자문을 받는다.
읽는 법
| 항목 | 규칙 |
|---|---|
| 출처 태그 | A7:C3 = A7 의 C3 절 · L8·S19 = A7 출처 목록의 법령(L)·언론(S) 번호 · news#<idx> = 닥터팔레트 제품소식 · A2·V7:0155 = 분석 파일(영상은 프레임 번호) |
| 확신도 | 확인 = 원문·화면에 직접 있음 · 추정 = 정황 판단 · 미확인 = 자료로 확정 못 함 |
| Phase | P1 = MVP · P2 = 운영 고도화 · P3 = 보험·외부 연동·AI · 제외 = 계획 없음 (mvp-scope.md 기준) |
| MVP 전략 | 직접 = 우리 코드로 완결 · 어댑터+샌드박스 = 포트 인터페이스 + Fake 구현(로그·가짜 응답), 계약 후 실구현 교체 · 대체 = 다른 수단으로 같은 목적 달성 · 제외 |
- 입력 파일 16개 중 이 문서의 주 입력: A7(외부 조사 전체), A5(청구 규칙 R-42
R-49·V-01V-43), 각 파일의장비·외부 연동·권한·동의·본인확인·CID·결제단말기절. - 새로 판독한 이미지는 없다. 데모 환자·직원 실명은 쓰지 않는다.
1. 핵심 결론
- 법이 EMR 자체에 요구하는 것은 P1 에서 직접 만든다. 기록 수정 시 원본 보존과 수정 이력, 기록 단위 전자서명, 보존기간, 조회 포함 접속기록 2년, 주민번호 암호화, 개인별 계정·최소권한, 광고 수신동의가 여기에 든다. 계약 없이 우리 코드만으로 충족할 수 있고, 나중에 붙이면 데이터 모델을 갈아엎어야 한다. [A7:C1·C11] (확인)
- 현재
mvp-scope.md에는 1번 중 일부가 빠져 있다. 차트는 "자동 저장·충돌 감지"만 있고 원본 보존형 수정 이력·전자서명이 없다. 동의도 등록 시 체크만 있고 버전·철회·재확인 이 없다. → §8 갭 표에서 P1 편입을 제안한다. - 외부 기관·파트너 연동은 전부 포트/어댑터 + 샌드박스로 둔다. 이미
architecture.md§6 이 같은 원칙이다. 이 문서는 포트를 16종으로 넓히고 공통 규칙(외부 ID·멱등·연동 로그·비용 계측)을 정한다. [A7 우리 앱 MVP 함의 2)] - 급여 진료를 넣는 순간 출시 게이트가 바뀐다. 청구SW 검사(60일), DUR 연계, 공단 자격조회가 출시 전 필수가 된다. 1차 타깃(비급여 피부·성형)을 지키면 P1 에서는 셋 다 필요 없다. [A7:C3~C5, 결정 리스크 1]
- 로컬 장치가 필요한 연동이 많다 — 결제 단말(VAN), CID, 네모닉, QR 리더, DUR 모듈·공동인증서, PACS/DICOM. 닥터팔레트도 GNB 에
에이전트 설치메뉴가 있다. → 원내 브리지 에이전트를 아키텍처 자리로 예약해 두고, P1 은 수기 입력으로 대체한다. [A2 종합 3, A3, A6:S39] (추정) - 외부 예약 채널은 기술보다 제휴가 관문이다. 네이버는 공개 API 가 없고 제휴사에만 연동을 준다. 구글은 Appointments Redirect 로 바뀌어 자체 예약 페이지가 전제다. → 공통 예약 모델(
channel·externalId·요청→확정/거절)과 자체 예약 페이지를 먼저 만든다. [A7:D, A3] - AI(녹취·STT·LLM·번역)는 동의 게이트와 데이터 위치가 핵심이다. 녹음은 민감정보 별도 동의가 사실상 필수이고, 해외 API 는 국외이전 동의와 "EMR·백업 국내 한정" 고시 요건과 부딪힐 수 있다(해석 필요). [A7:C1-6, C11, C13]
- 2026-12-24 의료법 개정 시행(비대면진료 제도화, 마약·향정 처방 시 DUR 확인 의무, EMR 공급자의 비대면 처방제한 반영 의무)은 P3 로드맵에 날짜로 박아 둔다. [A7:C4·C7]
2. 연동 대상 표
닥터팔레트가 연동한 대상과 우리 앱이 연동을 검토해야 할 공공 연계를 한 표로 모았다. 난이도는 제휴·인증 난이도 / 기술 난이도 순이다.
2.1 메시징·환자 접점
| 대상 | 목적 | 닥터팔레트 사례 | 방식(공개 정보) | 계약·인증 | 난이도 | 우리 전략 · Phase | 출처 · 확신도 |
|---|---|---|---|---|---|---|---|
| 카카오 알림톡 | 예약·접수 자동 알림(정보성) | 2022-11 CRM 출시, 알림톡 20원/건, 알림톡 실패 시 문자 대체 | 카카오 공식 딜러사 API. 병원별 발신프로필, 템플릿 사전 검수(2~3영업일) | 딜러사 계약, 병원별 카카오 채널 | 하 / 하 | 어댑터+샌드박스(MessageSender) P1 → 실연동 P2 초. 딜러 계약이 쉬워 가장 먼저 실연동 |
news#13437124, A7:C12·D, L28 · 확인 |
| SMS·LMS | 알림톡 대체 발송, 알림톡 미사용 병원 | SMS 25원·LMS 50원(2022). 12월 실패 20건 ↔ LMS 16건 → 대체는 LMS 로 간 것으로 보임 | 문자 게이트웨이 API, 발신번호 사전등록 | 게이트웨이 계약, 병원 번호 등록 | 하 / 하 | 위와 같은 포트, 같은 시점 | news#13437124, V6, A7:C12 · 확인(단가) / 추정(대체 규칙) |
| 카카오 브랜드메시지(구 친구톡) | 광고성 메시지 | 광고성 CRM(세그먼트 발송) 2023~ | 딜러사. (광고)·수신거부 자동 삽입, 발송 08:00~20:50 |
위와 같음 + 의료광고 심의 해당성 검토 | 중 / 하 | P2(광고 메시지와 함께). 발송 시간 가드 필수 | A7:C12, L28 · 확인(정책은 2차 출처) |
| 크레딧(선불 충전) | 발송 비용 정산 | 2023-11 선불형, 10만 원 이상 충전 시 최대 60% 보너스 | 자체 원장 | — | — / 하 | 직접. P1 은 잔액·월 비용 리포트, 충전 결제는 P2 | news#16946665, A5 · 확인 |
| SNS 상담 채널(LINE·Instagram·WeChat·WhatsApp) | 외국인 환자 상담 인박스 | 메디톡 플러스(2025-12 베타, 2026-01 유료). "최대 8개 채널" | 각 플랫폼 비즈니스 메시징 API(Meta·LINE·WeChat) | 플랫폼별 비즈 계정·앱 심사 | 중 / 중 | P3. 포트 ConversationChannel |
A3, A6:S22, news#168869295 · 확인(채널) / 미확인(API 방식) |
| 번역 엔진 | 상담 메시지 자동 번역(한·영·중·일) | 메디톡 플러스 자동번역 토글, 발신 언어 변환 |
미공개 | 모델 사업자 계약, 국외이전 검토 | 중 / 하 | P3. 포트 Translator |
A3, A6 · 미확인(엔진) |
| 환자 앱(메디패스) | 예약·문진·증명서·실손 청구 | 위버케어 자사 앱. 2023-07 연동 | 내부 연동 | — | 해당 없음 | 대체: 우리 환자 웹(예약 페이지·문진·알림 링크·영수증). 진료기록 원문 열람은 제외(의료법 제21조) | news#15602444, A7:A5, V9 · 확인 |
| 카카오헬스케어(파스타, 혈당) | CGM 데이터 차트 조회 | 2024-08 1차의료 EMR 독점 MOU, 2024-12 완료 | MOU 기반, 공개 API 없음 | 독점 | 불가 | 제외 | news#59371815, A7:D · 확인 |
| CI 기반 진료기록 조회 | 환자 본인이 모바일로 기록 조회 | 2024-10-17 ICT 규제 샌드박스 실증특례 | 본인확인기관 CI 매칭 | 실증특례 필요 | 상 | 제외(특례 없이는 법적 리스크) | A7:A5, news#125369709 · 확인 |
2.2 예약 채널
| 대상 | 목적 | 닥터팔레트 사례 | 방식 | 계약·인증 | 난이도 | 우리 전략 · Phase | 출처 · 확신도 |
|---|---|---|---|---|---|---|---|
| 네이버 예약 | 스마트플레이스 예약을 플래너로 | 2024-02 "공식 병의원 제휴사". 플래너에 요청 카드 → 확정/거절, 채널 필터 N. 설정에 "유료서비스 부가세 별도" |
병원이 스마트플레이스·파트너센터 가입 → 연동 업종코드 → 네이버에 연동 요청. 양방향 | 네이버 사업 제휴 필수, 공개 API 없음 | 상 / 중 | 어댑터+샌드박스(BookingChannel) P1 = 수동 등록 화면 + Fake 요청 주입. 실연동 P3 + 사업개발 병행 |
news#18116344, A2, A3, A7:D·L41·S37 · 확인(흐름) / 미확인(역동기화 범위) |
| 구글 예약(Google Business) | 검색·지도 Book 버튼, 외국인 유입 |
2025-07 "국내 EMR 최초". 요청 1건 1만 원·월 최대 10만 원(VAT 별도). 서비스 탭은 파트너만 등록 | 구 End-to-End 는 2024-07-01 종료 → Appointments Redirect: 가맹점별 action link(자체 예약 페이지) + Entity·Action·Services 피드 + 전환추적 | Actions Center 파트너 승인 | 중상 / 중 | P3. 자체 예약 페이지(P2)가 전제이므로 그것을 먼저. 닥터팔레트 화면에 "Provided by Simple Salon" → 제3자 파트너 경유 추정 | news#166983116, A3, A7:D·L40 · 확인(과금) / 추정(경유 구조) |
| 여신티켓 | 피부시술 예약 앱 | 2025-08. 접수·확정·취소·시간변경을 EMR 에서 처리. 광고비 지원 프로모션 동반 | 비공개 | 사업 제휴 | 중 / 중 | P3 | news#167189934, A3 · 확인 / 미확인(API) |
| 강남언니 | 성형·피부 예약 앱 | 미연동(제휴 CRM 5종 목록에 없음) | 파트너센터 'CRM 연동 신청', 양방향·즉시확정 | 제휴 CRM 한정 | 중 / 중 | P3 후보(타깃 시장 입점 조건. 사업개발 과제) | A7:B3·D, S28 · 확인 |
| 파트너사 연동 허브 | 채널별 요청 처리 한 화면 | 플래너 > 파트너사: 카드(미사용/사용중, 연동하기), 연동Key 발급일, 연동스케줄, 탭 요청 확정 완료 취소 |
자체 UI | — | — / 중 | 직접 P3(채널 실연동과 함께). 데이터 모델(channel·externalId·상태)은 P1 예약 모델에 미리 둔다 |
A3, A6:S21 · 확인 |
2.3 원내 장비
| 대상 | 목적 | 닥터팔레트 사례 | 방식 | 계약·인증 | 난이도 | 우리 전략 · Phase | 출처 · 확신도 |
|---|---|---|---|---|---|---|---|
| 결제 단말기(VAN) | 수납 금액 단말 자동 입력, 승인·취소 수신 | 2024-06 실시간 연동(금액 오입력 방지), 카드사별 일일 정산 알림톡("한국결제시스템") | 로컬 에이전트: VAN사·단말 제조사가 배포하는 Windows 서비스에 금액 전달 → CAT 단말 통신 | VAN사별 협약, 가맹점 MID, 여신협회 등록 단말만(보안인증 유효 5년) | 중상 / 중상 | P1 = 대체(승인번호·카드사 수기 입력 + 정산 대사). 실연동 P3(PaymentTerminal) |
news#28542401, A2, A7:D·L37b·L38 · 확인(기능) / 추정(에이전트 방식) |
| CID(발신자 표시) | 전화 수신 시 환자 팝업 → 예약·차트 | 2024-03, KT·LGU+·SK 인터넷전화. CID 모달 활성화 PC 단위 토글, 같은 번호 다환자 목록, 무료체험 배지 |
통신사 인터넷전화 오픈API(KT 통화매니저 API, LGU+ 오픈API, SKB 오픈API) | 병원이 회선별 부가서비스 가입 | 중 / 중 | P3(CallerIdSource). P1 에 Fake(번호 주입) 로 팝업 UI 만 검증 가능 |
news#18302977, A2, A7:D·L39 · 확인 |
| 네모닉(점착 메모 프린터) | 상담·처방 요약을 메모지로 출력 | 2024-11. 레이아웃 #차트번호 이름 / [상담] / [진단 및 처방]. 카트리지 할인 판매 |
미공개(블루투스/USB, 로컬 브리지 추정) | 기기 구매 | 하 / 중 | P3. 대체: 브라우저 인쇄(라벨 크기 CSS) | news#128596590, A2 · 확인 / 추정(연결) |
| QR·바코드 리더 | 모바일 건강보험증 QR 입력 | 본인확인 모바일 건강보험증 버튼 → 스캔 → 번호 자동 입력 |
키보드 에뮬레이션(HID) 추정 | — | 하 / 하 | 급여 진료와 함께 P3. HID 리더는 텍스트 입력으로 동작하므로 에이전트 불필요(추정) | A2 · 추정 |
| PACS(DICOM) | 영상 조회, 영상 오더 전달 | 헤더 + PACS·PACS열기, 판독소견 패널, 오더 줄 PACS 연동합니다. 체크 |
원내 게이트웨이 경유 또는 웹 뷰어 호출(환자ID·검사일 파라미터). 오더는 DICOM MWL(추정) | PACS 벤더 협의. PACS SW 는 2등급 의료기기 | 상 / 상 | 1차 타깃 밖 → P3 이후. 포트 PacsViewer(URL 호출) |
A2, V2, V7:0155, A7:D·L36 · 확인(진입점) / 추정(방식) |
| 마크뷰(Mark-Vu) 등 피부 촬영 장비 | 피부 분석 영상 차트 연결 | 헤더 + 마크뷰, 설정 토글 |
미공개 | 벤더 협의 | 중 / 중 | P3. P1 은 파일 업로드로 대체 | A2, A4 · 확인(버튼) / 미확인(방식) |
| ENT 내시경·웹캠 | 캡처·다중 선택 저장·비교 | 다크 뷰어, 2×2 비교 격자, 7/30 |
브라우저 카메라(getUserMedia) 추정 | — | 하 / 중 | P2 후보(웹캠 캡처는 브라우저로 가능). 내시경 전용 장비는 제외 | A6:S37 · 확인(UI) |
| 캐논 DSLR(CCAPI) | 고화질 사진을 모바일 차트에서 바로 업로드 | 2025-11. 조건: CCAPI 활성화, 카메라·폰 같은 Wi-Fi | Canon Camera Control API(로컬 HTTP REST) | 캐논 활성화 툴(무료) | 하 / 중 | P3. 모바일 차트(P2) 이후 | news#168546074, A3 · 확인 |
| 이브랩(Eve) AI 피부 분석기 | 분석 결과를 이미지 패널로 | 2025-08 MOU | 미공개 | MOU | 중 / 중 | 제외(진단 판단 기능은 의료기기 이슈, §5.13) | news#167290451, A3 · 추정(출시 여부 미확인) |
| 약 조제기(JVM) | 원내 처방 내복약 자동 조제 | ▷ 약 조제 전송 |
미공개 | 벤더 | 중 / 중 | 제외(피부·성형 원내조제 적음) | A2, V9 · 확인(버튼) |
| 수탁검사기관 | 외부 검사 결과 불러오기 | 검사결과 불러오기, 최근 갱신일자 |
미공개 | 기관별 계약 | 중 / 중 | 제외(1차 타깃 밖). 필요 시 파일 업로드 | V2 · 확인(UI) |
2.4 공공 연계 (급여·법정 보고)
| 대상 | 목적 | 닥터팔레트 사례 | 방식 | 계약·인증 | 난이도 | 우리 전략 · Phase | 출처 · 확신도 |
|---|---|---|---|---|---|---|---|
| 공단 수진자 자격조회 | 자격 종류·급여제한·산정특례 확인 | 2021 출시 때부터 "공단 서버 연동". 접수 시 자동 조회(추정), ITS 부가 알림 팝업 | 공단 요양기관정보마당 'OCS 개발자 지원' 등록, M1 레이아웃 | 개발자 등록, 요양기관 인증서 | 중 / 중 | P3(EligibilityService). P1 = 고정 응답 Fake |
S1, A1, A5 R-42, A7:C5·L14 · 확인 |
| 본인확인 기록 | 신분증·모바일건보증 확인 기록, 6개월 재확인 | 2024-06: ❗ 본인확인 필요 배너, 실물 신분증·모바일 건강보험증·예외환자, 이력 모달 |
기록은 자체, 검증은 공단 QR 처리 | QR 처리는 공단 개발 공지 | 하 / 하 | 기록·판정 로직은 직접. 급여 진료가 들어오는 P3 에 켠다(비급여만이면 의무 적용 범위 해석 필요 → 08 문서 OQ-D05) | news#30160105, A2, A7:C5 · 확인 |
| 심평원 DUR | 병용·연령·임부 금기, 동일성분 중복 경고 | 툴바 DUR 점검 → DUR 통과. 공지 DUR 알리미 |
심평원 DUR 모듈 PC 상주 + 공동인증서. 청구SW 검사 범위에 포함 | 공동인증서, 청구SW 검사 | 상 / 상 | P3(DurService). 클라우드에서는 로컬 에이전트나 서버측 인증서 보관이 필요할 가능성(추정) |
V3, A4, A7:C4·L11 · 확인(버튼) / 미확인(DP 방식) |
| 심평원 청구포털 | 요양급여 청구 송신 | 원청구서 생성·점검·제외·발급(.ghp 파일 내려받기). 앱 안 송신은 없어 보임(2023-05) |
KT EDI 2026-03-31 종료 → 청구포털 100%. SW 송신 규격 vs 파일 업로드는 미확인 | 청구SW 신규검사(60일+30일), 요양기관 인증서 | 상 / 상 | P3(ClaimGateway). 명세서 데이터 생성·자체 점검은 급여 도입 시 직접 |
V8, A5, A7:C3·L8·L10 · 확인 |
| 식약처 NIMS | 마약류 취급 보고, 투약이력 조회 | GNB 마약류▾, 툴바 마약류조회 |
개발자센터 연계 API / 파일 업로드, SW 검사 | SW 검사 | 중 / 중 | P3(NimsGateway). 식욕억제제(향정) 처방이 많은 비만·피부 클리닉엔 사실상 필요 → 데이터(품목 플래그·투약 원장)는 P2 |
A4, A5, A7:C8·L17 · 확인(메뉴) / 미확인(DP 기능) |
| 질병청 감염병 자동신고 | 법정감염병 신고서 자동 작성 | 기능 목록에 감염병신고 |
자동신고지원시스템 API, 방역통합정보시스템 토큰 | 토큰 발급 | 중 / 중 | 제외(1차 타깃) → 일반의원 확장 시 P3 | features.html, A7:C9·L18 · 확인(목록) |
| 예방접종통합관리시스템 | 접종 등록·비용상환 | 툴바 예방접종, 라이브러리 예방접종아이템 |
연계 규격 미확인 | — | 중 / 중 | 제외 → 확장 시 P3 | V2, V7, A7:C10 · 미확인(규격) |
| 실손24(보험개발원) | 영수증·세부내역서 보험사 전자 전송 | 환자앱에서 증명서 → 실손 청구(카피). EMR 참여 여부 미확인 | 전송대행기관이 EMR 에서 서류 수신. 의원은 2025-10-25 시행 | 보험개발원 연계 | 중 / 중 | P3(InsuranceClaimGateway). 표준 전자서식 생성이 선행 → 영수증·세부내역서 구조화 데이터는 P1 문서에서 미리 |
V9, A7:C6·L16 · 확인(제도) / 미확인(DP 참여) |
| 전자처방전·비대면진료 지원시스템 | 비대면 처방 전달, 처방 제한 반영 | 2022 시범사업 대응(A1) | 2026-12-24 시행, 하위법령안 공개 단계. 표준 규격 미확인 | 미정 | 상 / 중 | P3 이후, 하위법령 확정 후. 처방에 channel(대면/비대면) 필드만 P1 에 둔다 |
A1, A7:C7·L37 · 확인(법) / 미확인(규격) |
| 비급여 보고(공단) | 연 1회 3월 진료분 보고 | 자료 없음 | 요양기관정보마당 '비급여보고', 공단 자동추출 프로그램 | — | 하 / 하 | P2: 3월분 추출(보고 코드 매핑 필드는 P1 가격표에 둔다) | A7:C14·L30 · 확인 |
2.5 인프라·기타
| 대상 | 목적 | 닥터팔레트 사례 | 방식 | 요구 | 우리 전략 · Phase | 출처 · 확신도 |
|---|---|---|---|---|---|---|
| 클라우드 호스팅 | EMR 외부 보관 | 100% AWS, 자동 업데이트 | — | ISMS + ISO 27017 보유 클라우드(또는 CSAP) + 이중화 네트워크 + EMR·백업 국내 한정 | 직접 P1: 서울 리전, 멀티 AZ, 백업도 국내 | A7:A4·C1-6, L4 · 확인 |
| STT·LLM(AI 상담) | 받아쓰기, 요약, 시술 추천 | 2026-06 AI 상담. 모델 토글 `Flash | Pro`(추정) | 미공개 | 재위탁 동의, 국외이전 검토, AI 기본법 고지 | P3(SttProvider·LlmProvider). 동의 엔진은 P1 에 먼저 |
| 타사 EMR·CRM 데이터 이전 | 교체 도입 장벽 해소 | "의X랑, 베X스 등" 이전, 무료 프로모션(120만·150만 원 상당) | 수작업·스크립트(추정) | 원 병원 동의, 개인정보 위탁 | P2(가져오기 도구: 환자·예약·회차권 잔여 CSV) | news#16091779, A1 · 확인(제공) / 미확인(범위) |
| 원격 지원·채널톡 | CS | 채널톡으로 연동·구매 신청 접수 | — | 상담 중 화면 공유 시 개인정보 노출 주의 | 운영 정책(P2) | A2 · 확인 |
3. 포트(어댑터) 설계
architecture.md §6 의 5종을 기준으로 이름을 맞추고, 빠진 것을 더한다. 모든 포트는 backend 쪽 인터페이스이며, 병원별로 어떤 구현을 쓸지는 ClinicIntegration 설정이 정한다.
| 포트 | 책임(주요 연산) | 샌드박스(Fake) 동작 | 실연동 전제 | Phase(Fake → 실) |
|---|---|---|---|---|
MessageSender |
send(template, to, vars, kind=정보성/광고성) → 발송 결과·비용. 알림톡 실패 시 SMS/LMS 대체 |
로그 저장 + 성공 응답, 단가표로 비용 계산, 실패율 주입 옵션 | 딜러사 계약, 발신프로필, 템플릿 검수, 발신번호 등록 | P1 → P2 |
BookingChannel |
pullRequests(), confirm/reject/cancel/reschedule(externalId), publishAvailability() |
수동 등록 화면 + 가짜 요청 주입 버튼 | 채널별 사업 제휴 | P1 → P3 |
PaymentTerminal |
charge(amount, installments), void(approvalNo) → 승인번호·카드사 |
수기 승인번호·카드사 입력 폼 | VAN 협약, 로컬 에이전트, 등록 단말 | P1 → P3 |
EligibilityService |
check(patient, date) → 자격 종류·급여제한·산정특례·부가 알림 |
고정 응답(건강보험·제한 없음) | 공단 OCS 개발자 등록 | P1(Fake) → P3 |
DurService |
precheck(prescription) → 경고 목록, submit(prescription, reasons) |
항상 통과 + 샘플 약쌍 경고 | 심평원 모듈·공동인증서·청구SW 검사 | P3 |
ClaimGateway |
submit(claimFile), fetchResults() → 접수·심사조정(사유코드 A~S) |
파일 생성만, 송신 Fake | 청구SW 신규검사 | P3 |
NimsGateway |
report(handlingEvents), queryDosingHistory(patient) |
보고 큐 + 파일 export | NIMS SW 검사 | P3 |
InsuranceClaimGateway |
deliver(receipt, itemizedBill)(실손24) |
PDF + 구조화 JSON 저장 | 보험개발원 연계 | P3 |
CallerIdSource |
수신 이벤트 스트림 onCall(number) |
번호 주입 시뮬레이터 | 통신사 오픈API 가입 | P3 |
ConversationChannel |
SNS 메시지 수신·발신 | 가짜 대화 생성 | 플랫폼 비즈 계정 | P3 |
Translator |
translate(text, from, to) |
원문 그대로 + [번역] 접두 |
모델 사업자 | P3 |
SttProvider · LlmProvider |
받아쓰기, 요약·추천 | 로컬 Fake 전사·고정 요약 | 모델 위치·재위탁 동의 | P3 |
PacsViewer |
openUrl(patientId, studyDate) |
외부 URL 목업 | PACS 벤더 | P3 이후 |
LabelPrinter |
print(layout)(네모닉 등) |
브라우저 인쇄 | 로컬 에이전트 | P3 |
InfectiousReportGateway · VaccinationGateway |
신고서·접종 등록 | 초안 생성 + 외부 링크 | 질병청 토큰·규격 | 제외(확장 시 P3) |
EPrescriptionGateway |
비대면 처방 전달 | 없음 | 하위법령 확정 | 2027 이후 |
모든 포트에 공통으로 적용할 규칙 (P1 에서 MessageSender·BookingChannel·PaymentTerminal 로 먼저 검증)
| 규칙 | 내용 |
|---|---|
| 외부 식별자 | 외부에서 온 레코드는 (channel, externalId) 유니크. 예약·결제·메시지 모두 같은 규칙 |
| 멱등 | 송신 요청마다 idempotencyKey. 재시도해도 이중 발송·이중 결제가 없어야 한다 |
| 연동 로그 | IntegrationEvent{clinicId, port, direction, requestRef, status, errorCode, latencyMs, at} — 장애 분석과 CS 대응용. 개인정보는 마스킹 |
| 비용 계측 | 건당 과금 연동(메시지, 구글 예약 요청 1만 원·월 상한)은 BillingEvent 로 쌓아 월 리포트 |
| 병원 설정 | ClinicIntegration{port, provider, status(미사용/사용중/오류), credentialRef, keyIssuedAt} — 비밀값은 KMS/시크릿 저장소 참조만 |
| 장애 시 동작 | 외부 실패가 원내 업무를 막지 않는다(예: 알림 실패해도 예약 저장). 실패는 재시도 큐 + 화면 배지 |
| 단말 단위 설정 | CID 팝업처럼 PC 마다 켜고 끄는 기능은 DeviceSetting{deviceId}(브라우저 로컬 ID + 서버 등록) |
3.1 원내 브리지 에이전트 (자리만 예약)
로컬 자원이 필요한 연동: VAN 단말, CID(일부 통신사 방식), 네모닉·라벨 프린터, DUR 모듈·공동인증서, (선택) DICOM. 웹·Flutter 앱만으로는 연결할 수 없다.
- 결정안: 데스크톱 상주 프로세스(macOS/Windows) +
localhostWebSocket. 앱은 에이전트가 있으면 쓰고, 없으면 수기 입력으로 떨어진다.architecture.md다이어그램의 "데스크톱 장비 연동 에이전트 후보"와 같은 자리다. - P1 에서는 만들지 않는다. 대신 위 포트의 Fake 가 "에이전트 없음" 경로를 실제 동작으로 제공한다.
- 근거: 닥터팔레트 GNB 의
에이전트 설치(A3·A6:S39, 추정), VAN 에이전트 방식(A7:D·L38, 2차 출처), DUR 모듈 PC 상주(A7:C4·L11).
4. 규제·인증 요구 체크리스트
형식: 요구 → 근거 → 적용 조건 → 우리 구현 → Phase. 강제는 시스템이 하는 방식(차단/경고/자동/기록)이다.
4.1 의료법 — 전자의무기록
| ID | 요구 | 근거 | 우리 구현 | 강제 | Phase |
|---|---|---|---|---|---|
| LAW-01 | 진료기록은 전자서명이 기재된 전자문서로 작성·보관. 서명 검증 가능 | 의료법 제23조①, 시행규칙 제16조①, 전자서명법 제2조 | 기록 단위 서명(서명자·시각·내용 해시). 특정 인증서로 한정되지 않으므로 계정 인증 + 서버 서명으로 시작, 검증 화면 제공 | 자동(서명 확정 시) | P1(갭) |
| LAW-02 | 추가기재·수정 시 수정 전 원본 보존, 수정 접속기록 별도 보관. 거짓 작성·고의 수정 금지 | 제22조②③, 제23조④, 시행규칙 제16조② | append-only 버전(supersedesId, 수정 사유·수정자·시각·원본 해시). 서명된 기록은 덮어쓰기 금지, 새 버전만 |
차단(덮어쓰기) + 기록 | P1(갭) |
| LAW-03 | 진료기록부 필수 기재: 인적사항, 주된 증상, 진단결과·진단명, 진료경과, 치료 내용(주사·투약·처치), 진료 일시 | 시행규칙 제14조 | 차트 스키마가 여섯 항목을 모두 담는지 점검. 진료 일시는 서버 시각 | 경고(서명 시 누락 항목) | P1 |
| LAW-04 | 보존기간: 환자명부 5 · 진료기록부 10 · 처방전 2 · 수술기록 10 · 검사기록 5 · 방사선 사진·소견서 5 · 간호기록 5 · 진단서 부본 3년, 1회 연장 가능 | 시행규칙 제15조 | 기록 유형별 retentionUntil. 기간 내 물리 삭제 금지(소프트 삭제·숨김만). 만료 도래 목록과 파기 기록은 P2 |
차단(기간 내 삭제) | P1(차단) · P2(파기) |
| LAW-05 | 기록 열람·사본은 본인 원칙. 예외(배우자·직계가족 동의서, 대리인, 공단·심평원, 수사 등) | 제21조 | 사본 발급 요청 기록(요청자·관계·증빙·발급 항목), "수정 전 원본 포함" 옵션 | 기록 | P2 |
| LAW-06 | 진료정보 침해사고(유출·랜섬웨어 등) 시 의료기관이 복지부에 즉시 통지 | 제23조의3, 시행령 제10조의11 | 우리(수탁자)가 탐지 → 고객 병원 즉시 통보 런북 + 통지 문안 템플릿 | 운영 절차 | P1(런북) |
| LAW-07 | EMR 외부(클라우드) 보관 시설 기준. 특례: ISMS + ISO 27017 클라우드(또는 CSAP) 사용 시 이중화 네트워크와 EMR·백업 국내 위치 한정만 추가 | 고시 2023-245 제7조②, 별표 2 | 서울 리전 단일, 멀티 AZ, 백업 국내. 클라우드 인증서 사본·구성도 증빙 문서 준비. AWS ISMS 갱신 유효성은 재확인 필요 | 인프라 | P1 |
| LAW-08 | 수탁자(우리)도 '전자의무기록 관리자'에 포함. 훼손·유출 시 즉시 의료기관 통보 | 고시 2023-245 제2조3호, 별표 1 3.4 | LAW-06 과 같은 런북 | 운영 | P1 |
4.2 EMR 시스템 인증 (임의)
| ID | 요구 | 근거 | 우리 대응 | Phase |
|---|---|---|---|---|
| CERT-01 | 인증은 임의. 미인증도 판매 가능, 인증 표시만 금지. 유효 3년, 약 3개월 소요 | 의료법 제23조의2, 고시 2026-112 | 취득은 후순위. 닥터팔레트도 미보유(154건 목록에 없음) | 이후 |
| CERT-02 | 2주기 기준(2025-01~2027-12): 기능성 27 · 상호운용성 22 · 보안성 12. 약물알레르기 경고 필수, 마약류 투약이력 조회 신설 | 인증기준 v1.2(2026-06-30) | 보안성 12개(접근관리·정보보호·접속기록·백업/외부보관)를 설계 체크리스트로 P1 부터 적용. 알레르기 경고는 P1 특이사항(알러지)과 연결 | P1(체크리스트) |
4.3 건강보험 청구·자격·DUR (급여 도입 시)
| ID | 요구 | 근거 | 우리 대응 | Phase |
|---|---|---|---|---|
| INS-01 | 청구SW 검사 없이 청구하면 반송될 수 있음. 60일 내 결정(+30일), 보안기능 유효 3년, 고시 개정 시 변경검사 | 고시 2025-112 제8조① | 급여 도입 = 검사 일정이 출시 게이트. 로드맵에 검사 기간 포함 | P3 |
| INS-02 | 청구SW 보안기능 5종: 담당자별 계정·접근통제, 내부 저장 개인정보 암호화, 접근·수정·삭제 접속기록, 보유기간 경과 파기, 원장 고시 사항 | 고시 2025-112 제2조의2 | §6 보안 요구와 같다 → P1 에서 이미 충족하도록 | P1(선충족) |
| INS-03 | 청구 경로는 2026-04 부터 청구포털 100%(KT EDI 종료) | L10 | ClaimGateway 는 청구포털 기준. 송신 규격은 미확인 |
P3 |
| INS-04 | 명세서 서식 고시 수시 개정(최근 2026-08-31), 상병 KCD-9(2026-01-01) | 고시 2026-183, L34 | 코드 마스터(상병·수가·약가·재료)는 적용일자 기간 버전. 차트 상병 검색은 P1 부터 KCD-9 | P1(KCD-9) · P3(청구) |
| INS-05 | 요양기관 본인확인 의무(2024-05-20): 신분증·모바일건보증 QR 확인. 예외(19세 미만, 6개월 내 재진, 응급, 의뢰·회송 등). 사본·캡처 불인정. 과태료 30/60/100만 원 | 국민건강보험법 제12조④, 시행규칙 제7조·7조의2 | IdentityVerification{method, 번호 일부, verifiedBy, verifiedAt, exemptReason, validUntil=+6개월} + 접수 모달 배너·이력. 닥터팔레트 UI 그대로 참고 가능 |
P3(급여와 함께). 비급여만이면 해석 필요 |
| INS-06 | 처방 시 의약품정보 사전 확인(DUR). 2026-12-24 부터 마약·향정 처방 시 DUR 확인 명시 의무 | 의료법 제18조의2 | DurService + 경고·사유 입력 UI. 사유·결과를 처방 레코드에 저장 |
P3 |
| INS-07 | DUR SW 조건: 매일 정보 수신, 경고 화면, 부득이 처방 시 사유 기재, 암호화·인증서 실시간 전송 | 고시 2025-112 제5조 | 위와 같음 | P3 |
| INS-08 | 쿠폰·포인트·할인을 급여 본인일부부담금에 적용 금지(환자 유인) | 의료법 제27조③(A5 V-41) | 할인 적용 대상 = 비급여 한정. P1 수납에서 이미 "포인트는 비급여에만" | P1(차단) |
4.4 실손·전자처방·마약류·감염병
| ID | 요구 | 근거 | 우리 대응 | Phase |
|---|---|---|---|---|
| ETC-01 | 환자 요청 시 영수증·세부내역서를 보험사에 전자 전송(의원 2025-10-25). EMR 업체 참여 의무는 없다고 보도 | 보험업법 제102조의6·7 | 영수증·세부산정내역을 구조화 데이터로 발급(P1 문서가 PDF 만 만들지 않도록) → 실손24 어댑터는 P3 | P1(데이터) · P3 |
| ETC-02 | 비대면진료 제도화(2026-12-24): 재진 중심, 초진 예외 시 처방 종류·일수 제한, 비대면 비율 상한, 마약·향정 처방 금지, EMR 공급자가 처방 제한을 EMR 에 반영할 의무 | 의료법 제34조의2~9(제21238호) | 처방 channel(대면/비대면) 필드만 P1. 제한 룰셋·비율 통계·전달시스템 연계는 하위법령 확정 후 |
P1(필드) · 이후 |
| ETC-03 | 마약류 취급 보고(품명·수량·일자·상대방 + 환자 주민번호·KCD·처방의 면허번호). 펜타닐 처방 전 1년 투약내역 확인 의무(2024-06-14), 식욕억제제·졸피뎀·프로포폴은 권고 | 마약류관리법 제11조 | 품목 narcoticClass 플래그, 투약·폐기 원장, 보고 상태 필드(P2). NIMS 연계 P3. 보고 기한은 원문 재확인 필요 |
P2 · P3 |
| ETC-04 | 향정 처방 일수 상한(일반 30일, JT014 있어도 92일, 졸피뎀 28일 등) | A5 V-23·V-24(심사 사례) | 처방 입력 시 경고/차단. 급여·비급여 무관하게 안전 규칙으로 유용 | P2 |
| ETC-05 | 감염병 신고(1급 즉시, 2·3급 24시간, 4급 7일), 예방접종 실시 내역 입력 | 감염병예방법 제11조·제33조의4 | 1차 타깃 밖. 상병 입력 시 법정감염병 코드 감지 알림만 저비용으로 P2 후보 | 제외 → P3 |
4.5 개인정보
| ID | 요구 | 근거 | 우리 구현 | 강제 | Phase |
|---|---|---|---|---|---|
| PRV-01 | 건강정보는 민감정보. 진료기록은 의료법 근거, 진료 외 목적(녹취·AI·마케팅)은 별도 동의 | 개인정보보호법 제23조 | 동의 공통 엔진(§4.7) | 차단(동의 없으면 해당 처리 불가) | P1 |
| PRV-02 | 주민번호는 법령 근거 있을 때만 처리, 내부망이어도 암호화 | 제24조의2, 안전성 확보조치 제7조③ | architecture.md §3 그대로: AES-GCM + HMAC(중복 확인) + 마스킹, 원문 조회는 권한 + 감사 로그 |
자동 | P1(설계 반영됨) |
| PRV-03 | 의료기관=처리자, 우리=수탁자. 문서 계약, 수탁자 공개, 재위탁은 위탁자 동의(클라우드·메시지 딜러·STT/LLM) | 제26조 | 위탁계약서 템플릿, 하위 처리자 목록 페이지, 처리방침 문안. 하위 처리자 추가 시 병원 고지·동의 절차 | 운영 | P1(문서) |
| PRV-04 | 국외이전(국외 제공·위탁·보관·조회)은 별도 동의 또는 법정 요건 | 제28조의8 | 해외 API 를 쓰는 포트(Translator·STT·LLM·SNS)는 "국외이전 여부"를 ClinicIntegration 에 표시하고 병원 동의 없이는 켜지 않는다 |
차단 | P3(해당 포트와 함께) |
| PRV-05 | 안전성 확보조치(2026-07-01 개정): 최소권한, 권한 변경 이력 3년, 개인별 계정, 인증 실패 제한, IP 등 접속 제한, 외부 접속 시 OTP 등 안전한 인증, 일정 시간 미사용 시 자동 차단, 접속기록 2년 이상(민감·고유식별정보 시스템), 정기 점검, 출력·복사 최소화 | 개인정보위 고시 2026-9 | §6 보안 요구 표 | 자동 | P1 |
| PRV-06 | ISMS 의무 대상(정보통신 매출 100억 원 또는 일평균 이용자 100만 명 등)은 초기엔 해당 없음 | 정보통신망법 제47조② | 취득은 후순위. 청구SW 보안검사 일부 생략 효과가 있어 급여 도입 시 재검토 | 이후 |
4.6 메시지 발송
| ID | 요구 | 근거 | 우리 구현 | 강제 | Phase |
|---|---|---|---|---|---|
| MSG-01 | 광고성 정보는 사전 명시적 동의. 예외: 거래 종료 후 6개월 내 같은 종류 재화 | 정보통신망법 제50조, 시행령 제61조 | 수신자 필터 = 광고 동의 유효자만 | 차단 | P2(광고 메시지와 함께) |
| MSG-02 | 21:00~08:00 광고 전송은 별도 사전 동의. 카카오 브랜드메시지는 08:00~20:50 | 제50조③, 카카오 정책 | 발송 시간 가드(예약 발송 포함). 야간 동의 플래그 | 차단 | P2 |
| MSG-03 | 전송자 명칭·연락처·수신거부 방법 명시, 수신거부 무료 | 제50조④ | (광고) 접두·수신거부 문구 자동 삽입, 080 또는 링크 |
자동 | P2 |
| MSG-04 | 동의·거부·철회 후 14일 내 처리결과 통지, 2년마다 동의 여부 확인 | 시행령 제62조의2·62조의3 | 동의 엔진 스케줄러 | 자동 | P2(스케줄러) · P1(동의 일시 저장) |
| MSG-05 | 알림톡은 정보성만(할인·프로모션 불가), 템플릿 사전 검수 | 카카오 비즈메시지 정책 | 템플릿에 kind 필드. 정보성 템플릿에 광고 문구 금지 안내. P1 자동 알림 6종은 정보성 |
경고 | P1 |
| MSG-06 | 발신번호 거짓표시 금지, 문자 발신번호 사전등록 | 전기통신사업법 제84조의2 | 병원별 발신번호 등록·인증 상태 | 차단(미등록 번호) | P2 |
| MSG-07 | 병원이 자기 환자에게 보내는 광고 문자·카톡이 의료광고 사전심의 대상인지 | 의료법 제57조 | 해석 필요(법률 자문). 결론 전까지 광고 템플릿에 "심의 필요 여부 확인" 체크를 둔다 | 경고 | P2 |
4.7 동의 관리 공통 엔진 (녹취·AI 포함)
닥터팔레트는 등록 시 개인정보(필수)·마케팅(선택) 체크(V1), 태블릿 접수에서 음성 녹음 및 AI 분석 활용 동의(선택) 를 미리 체크하지 않은 상태로 받고, 기환자는 AI 상담 시작 팝업에서 직원이 구두 동의를 확인한다(A3). 동의 결과는 차트에 동의서로 자동 기록된다. 받아쓰기 기록은 병원 관리자와 해당 상담실장만 열람한다.
| ID | 요구 | 근거 | 우리 구현 | Phase |
|---|---|---|---|---|
| CON-01 | 동의 항목을 버전별로 관리: 개인정보 수집·이용(필수), 민감정보, 마케팅(광고), 야간 광고, 녹취·AI, 국외이전 | PRV-01·MSG-01·PRV-04 | ConsentTemplate{type, version, text, required} · ConsentRecord{patientId, type, version, agreed, channel(등록폼·태블릿·직원확인·서명서식), attestedBy?, at, withdrawnAt?} |
P1(갭: 현재 MVP 는 체크만) |
| CON-02 | 선택 동의는 기본 미체크, 미동의도 기록 | 닥터팔레트 설계(A3), 개인정보보호법 동의 원칙 | UI 규칙 + 테스트 | P1 |
| CON-03 | 녹음은 당사자 녹음만 적법, 제3자(자리에 없는 사람) 녹음은 불법 | 통신비밀보호법 | 녹음 시작은 상담 당사자 계정만. 원격 녹음 기능 금지 | P3 |
| CON-04 | 동의 없으면 녹취 시작 불가(게이트). 원음 보존기간·삭제 정책, 철회 시 처리 | 제23조, A7:C13 | ConsultSession.consentId 필수, 없으면 녹음 버튼 비활성 |
P3(AI) · 엔진 P1 |
| CON-05 | AI 기본법(2026-01-22): 고영향 AI(보건의료)·생성형 AI 사용 사전 고지, 생성물 표시 | AI 기본법 제2조·제31조 | AI 산출물에 "AI 생성" 라벨, 차트 삽입 전 사람 확인, 모델 호출 로그. 시술 추천이 고영향 AI 인지는 해석 필요 | P3 |
4.8 비급여·외국인·의료기기 (피부·성형 타깃에 특히 중요)
| ID | 요구 | 근거 | 우리 대응 | Phase |
|---|---|---|---|---|
| NHI-01 | 비급여 항목·가격을 접수창구 등에 게시, 홈페이지가 있으면 표시. 제증명 수수료 게시 | 의료법 제45조 | 가격표(P1 라이브러리)에서 게시용 출력·공개 페이지 export | P2 |
| NHI-02 | 고시 대상 비급여는 진료 전 항목·가격 직접 설명 | 시행규칙 제42조의2 | 사전설명 기록(설명자·항목·가격·일시, 환자 확인) — 상담 기록 칸과 연결 | P2 |
| NHI-03 | 비급여 보고: 의원은 연 1회 3월 진료분(2026 보고기간 04-13~06-12, 약 1,411항목). 미제출 과태료 | 제45조의2 | 가격표 항목에 보고 코드 매핑 필드(P1), 3월분 추출 파일(P2) | P1(필드) · P2 |
| FOR-01 | 외국인환자 유치 등록(시·도지사), 매년 2월 말 전년 실적 보고 | 의료해외진출법 제6·11조 | 환자 국적·유입경로(에이전시)로 실적 집계 리포트 | P2 |
| FOR-02 | 외국인 미용성형 부가세 환급 특례 2025-12-31 종료, 재도입 법안 발의(미확정) | L32 | 과세 항목 부가세는 P1 대로(과세). 환급 기능은 재도입 확정 시 | 보류 |
| MED-01 | PACS SW 는 2등급 의료기기. 진단·치료 판단 기능(AI 피부진단 등)을 직접 만들면 인허가 이슈 | 식약처 품목 A26430, L36·L43 | 진단 보조 AI 는 만들지 않는다. 외부 기기 결과 표시만 | 원칙 |
5. 닥터팔레트의 보안 기능 (관찰)
| 기능 | 관찰 내용 | 출처 · 확신도 |
|---|---|---|
| 역할 기반 권한 | 역할(소유자·진료·원무·원무관리자·멤버관리자·기본권한*) + 모듈별 세부 동작 체크(차트 삭제, 진료기록·간호기록 조회/수정, 쿠폰·포인트, 수납, 문서발급, 타인 환자기록 수정, 플래너, 통계 매출 조회 등). 역할 변경 시 "해당 멤버 설정이 모두 변경" 경고 |
A4(story 2025-04) · 확인 |
| IP 접근 제한 | 설정 > 병원정보 > 보안관리: 토글, 보안 관리자(IP 제한 예외, 소유자 포함), 허용 IP 최대 100개(장소명: 본점·강남점·원장 자택), 관리 이력 |
A4(story 2024-05) · 확인 |
| 민감정보 권한 | 매출 등은 원장·특정 운영진만 | A2 FAQ · 확인 |
| 개인정보 이력 | 설정 메뉴에 개인정보 조회 이력 | A4 · 확인(메뉴) / 미확인(화면) |
| AI 상담 기록 열람 제한 | 관리자 + 해당 상담실장만("닫힌 기록") | A3 · 확인 |
| 인증 | 2022 에는 ID/PW 만, OTP·IP 제한은 검토 중이었다. 이후 IP 제한 도입. MFA 는 미확인 | A7:A1·S2 · 확인 / 미확인(MFA) |
| 인프라 | 100% AWS, 자동 업데이트. ISMS 보유는 미확인 | A7:A4·A6 · 미확인(ISMS) |
6. 보안 요구 (우리 앱)
architecture.md §3 · domain-model.md 의 AuditLog·권한 키를 기준으로, 법정 요구를 채우기 위해 더할 것을 표시했다.
| ID | 요구 | 구현 | 근거 | Phase | 현 설계 |
|---|---|---|---|---|---|
| SEC-01 | 개인별 계정(공유 금지), 역할 기반 최소권한 | Role = 권한 키 집합, 기본 역할 6종 시드 |
PRV-05, INS-02 | P1 | 반영됨 |
| SEC-02 | 권한 부여·변경·말소 이력 3년 보관, 퇴사자 즉시 말소 | RoleChangeLog(또는 AuditAction.roleChange), 멤버 비활성 시 세션 즉시 폐기 |
PRV-05 | P1 | 추가 필요 |
| SEC-03 | 인증 실패 시 접근 제한 | N회 실패 잠금 + 해제 절차, loginFailed 감사 |
PRV-05 | P1 | 감사만 반영 → 잠금 추가 |
| SEC-04 | 접속 IP 제한(병원 옵션), 보안 관리자 예외, 변경 이력 | IpAllowlist{cidr, label, createdBy} + 이력. 모바일 데이터망 사용자 처리(예외 역할 또는 MFA 로 대체) |
A4, PRV-05 | P1 | 반영됨(이력·예외 확인) |
| SEC-05 | 외부 접속 시 안전한 인증수단(OTP 등) | TOTP MFA. 정책: 허용 IP 밖 접속은 MFA 필수 | PRV-05 | P1 | 추가 필요 |
| SEC-06 | 일정 시간 미사용 시 자동 차단 | 세션 유휴 타임아웃(병원 설정, 기본 30분 제안) + 화면 잠금 | PRV-05 | P1 | 추가 필요 |
| SEC-07 | 접속기록: 조회 포함, 2년 이상, 위변조 방지, 정기 점검 | AuditLog append-only + 해시 체인 또는 WORM 저장, 보존 2년+, 월간 점검 리포트(대량 조회·다운로드 탐지) |
PRV-05, INS-02 | P1(저장) · P2(리포트) | 저장 반영, 보존·위변조 방지·점검 추가 |
| SEC-08 | 기록 수정 전용 접속기록 별도 보관 | LAW-02 버전 테이블 자체가 수정 이력. 감사 로그에 update + 버전 ID |
LAW-02 | P1 | 추가 필요 |
| SEC-09 | 주민번호 필드 암호화, 전송 구간 TLS, 비밀번호 일방향 해시 | AES-GCM(KMS 키) + HMAC + 마스킹, TLS 1.2+, argon2/bcrypt | PRV-02 | P1 | 반영됨 |
| SEC-10 | PC·모바일 저장 시 암호화, 업무용 모바일 보호 | 클라이언트 캐시에 주민번호·기록 원문 저장 금지, 모바일 앱 잠금 | PRV-05 | P2(모바일) | — |
| SEC-11 | 출력·다운로드 최소화, 로그와 사유 | 문서 출력·CSV 내보내기에 print/export 감사 + 대량 내보내기 사유 입력 |
PRV-05 | P1(로그) · P2(사유) | 로그 반영 |
| SEC-12 | 테넌트 격리 | ClinicContext.require + clinicId 선두 인덱스, 격리 테스트 필수 |
— | P1 | 반영됨 |
| SEC-13 | 백업 국내 보관, 물리 분리, 복구 훈련 | 스냅샷 + PITR, 다른 AZ, 분기 복구 리허설 | LAW-07, 인증 보안성 | P1 | 추가 필요(운영) |
| SEC-14 | 보존기간 경과 파기와 파기 기록 | LAW-04 | INS-02 | P2 | — |
| SEC-15 | 침해사고 탐지·통보 | 이상 접속 알림, 통보 런북 | LAW-06 | P1(런북) | — |
| SEC-16 | 가용성·장애 대응 | 시장이 가장 중시하는 것은 안정성(48.2%)이고, 교체 계기 1위는 이전 업체의 서버 장애 시 CS 실패(50%) → SLA·상태 페이지·장애 공지 채널 | A7:B1·A7 | P2 | — |
7. 규제 타임라인 (구현 순서에 영향)
| 날짜 | 사건 | 우리에게 미치는 영향 |
|---|---|---|
| 2024-05-20 | 요양기관 본인확인 의무화 | 급여 도입 시 INS-05 |
| 2024-06-14 | 펜타닐 처방 전 투약이력 확인 의무 | ETC-03 |
| 2025-01 | EMR 인증 2주기(~2027-12) | CERT-02 체크리스트 |
| 2025-10-25 | 실손24 의원 확대 | ETC-01 구조화 영수증 |
| 2026-01-01 | KCD-9 시행 | P1 상병 마스터는 KCD-9 |
| 2026-01-22 | AI 기본법 시행(계도기간 1년 이상) | CON-05 |
| 2026-03-31 | KT EDI 종료 → 청구포털 100% | INS-03 |
| 2026-07-01 | 안전성 확보조치 기준 개정 | SEC 전반 |
| 2026-08-31 | 명세서 서식 고시 개정 | INS-04 |
| 2026-11-20 | 전기통신사업법 제84조의2 개정 시행 | MSG-06 |
| 2026-12-24 | 비대면진료 제도화, 전자처방전 전달, 마약·향정 DUR 의무, EMR 처방제한 반영 의무 | ETC-02, INS-06 |
| 2027-03-09 | 개인정보보호법 AI 특례 시행 | AI 학습 데이터 처리 검토 |
8. mvp-scope.md 와의 갭 (제안)
| 갭 | 현재 MVP | 제안 | 이유 | 비용 |
|---|---|---|---|---|
| 기록 수정 이력·원본 보존 | F4 "입력 즉시 저장·충돌 감지" | 차트 기록을 버전형으로: 자동 저장은 초안(draft) 단계에만, 보내기/서명 시 확정 버전 생성, 이후 수정은 새 버전 + 사유 |
LAW-02. 나중에 바꾸면 차트 데이터 전체 마이그레이션 | 중 |
| 전자서명 | 없음 | 확정 버전에 서명(서명자·시각·해시) + 검증 표시 | LAW-01 | 하~중 |
| 동의 엔진 | F1 등록 시 "동의" | CON-01·02 를 P1 에. 광고·야간·AI 항목은 템플릿만 두고 쓰는 기능은 P2/P3 | 동의 이력은 소급 수집이 불가능 | 하 |
| 보존기간 삭제 차단 | 명시 없음(권한에 patient.delete) |
진료기록·환자명부는 소프트 삭제만, 기간 내 물리 삭제 금지 | LAW-04 | 하 |
| 권한 변경 이력·MFA·유휴 타임아웃·로그인 잠금 | F0 IP 제한·감사 로그 | SEC-02·03·05·06 추가 | PRV-05 | 하~중 |
| 접속기록 보존·위변조 방지 | F0 감사 로그 | 보존 2년+, append-only 저장소, 해시 체인 | PRV-05 | 하 |
| 구조화 영수증·세부내역서 | F6 PDF 스냅샷 | PDF 와 함께 구조화 JSON 스냅샷 저장 | ETC-01(실손24) | 하 |
| 비급여 보고 코드·게시 | F8 가격표 | 가격표에 보고 코드·게시 여부 필드 | NHI-01·03 | 하 |
| 처방 채널 필드 | 없음 | 처방에 channel(대면/비대면) 기본 대면 |
ETC-02 | 하 |
| 마약류 플래그 | 없음 | 처방아이템에 narcoticClass 필드(기능은 P2) |
ETC-03·04 | 하 |
| 예약 외부 채널 필드 | F2 예약 | 예약에 channel·externalId·요청 상태 미리 |
§2.2 | 하 |
| 원외처방전 | F6 목록에 없음 | 비급여 약(예: 비만 주사제)도 원외처방이 있으므로 처방전 서식 포함 여부 결정 필요 → 08 문서 OQ-D09 | 보존기간 2년 대상 문서 | 중 |
출처 파일
scratchpad/analysis/A7_external_research.md— A(닥터팔레트 자체)·B(경쟁)·C1C14(규제)·D(연동 대상)·MVP 함의·출처 목록(S1S37, L1~L48)scratchpad/analysis/A5_billing_rules_and_market.md— ① 1-7·1-8(R-42R-49), ③ 검증 규칙 V-01V-43scratchpad/analysis/A2_news_2023_2024.md— 본인확인, 결제단말기, CID, 네모닉, 권한·IP, 연동 서비스 목록, 네이버 예약scratchpad/analysis/A3_news_2025_2026.md— 파트너사 연동 허브, 구글·여신티켓, 메디톡 플러스·번역, AI 상담·녹취 동의, 캐논 DSLR, 이브랩, 헤더 연동 버튼scratchpad/analysis/A4_customer_stories.md— 권한 매트릭스, 접근 IP 제한·보안 관리자, 촬영 장비, 헤더 연동 태그scratchpad/analysis/A6_feature_pages_ui.md— S19 태블릿 동의서, S21 파트너사, S22 메디톡 플러스, S37 기기 뷰어, S39 내비(에이전트 설치)scratchpad/analysis/A1_news_2022_2023.md— 장비·외부 연동(PACS·공공기관·메시징·데이터 이전), 권한scratchpad/analysis/V1_reception_treatment.md— 개인정보·마케팅 동의 수집scratchpad/analysis/V2_chart.md— 검사결과·PACS 판독소견scratchpad/analysis/V7_library.md— 오더 단위 PACS 연동 플래그scratchpad/analysis/V8_claims.md— 원청구서·명세서 점검·.ghp발급scratchpad/analysis/V9_intro.md— 환자 앱 증명서·실손 청구, 약 조제 전송- 설계 문서:
docs/product/mvp-scope.md,docs/design/architecture.md(§3·§6),docs/design/domain-model.md