에이핀아이앤씨 로고
비즈니스 문의문의 페이지로 이동
HamburgerIcon
전자금융감독규정, 개발자가 읽어야 할 조항은 따로 있어요
2026년 5월 21일

전자금융감독규정, 개발자가 읽어야 할 조항은 따로 있어요

#전자금융감독규정#프로그램 통제#보안성심의#금융 IT

전자금융감독규정, 개발자가 읽어야 할 조항은 따로 있어요

핵심 요약: 전자금융감독규정 전체를 읽을 필요 없어요. 개발/인프라 담당자가 직접 구현해야 하는 조항은 프로그램 통제(제29조), 보안성심의(제36조), 테스트 시스템 구축, 운영시스템 적용 승인 절차로 압축돼요. 이 글에서는 각 조항이 요구하는 기술적 구현 사항을 실무 관점에서 정리해요.

금융 SI 프로젝트에 투입되면 가장 먼저 받는 문서가 전자금융감독규정이에요. 문제는 분량이 방대해서 어디부터 봐야 할지 모른다는 거예요.

프로그램 통제는 공장의 품질관리(QC) 라인과 비슷해요. 코드가 운영 환경에 도달하기 전에 반드시 거쳐야 하는 검수 게이트가 있는 거예요. 개발자가 자유롭게 코드를 작성하되, 운영 환경에 배포되기까지는 정해진 절차를 통과해야 한다는 뜻이에요.

2025년 2월 전자금융감독규정 개정으로 행위규칙이 293개에서 166개로 줄었지만, 프로그램 통제와 보안성심의 관련 조항은 여전히 핵심으로 남아 있어요. 오히려 "원칙 중심"으로 바뀌면서 금융회사가 스스로 보안 수준을 판단하고 증명해야 하는 부담이 커졌어요.

이 글에서는 전자금융감독규정 중 개발/인프라 담당자가 직접 구현해야 하는 조항만 추려서, 실무에서 어떻게 대응해야 하는지 정리할게요.


전자금융감독규정에서 개발팀이 직접 구현해야 하는 조항은 무엇인가요

개발팀이 직접 구현해야 하는 조항은 크게 4가지 영역으로 나뉘어요.

전자금융감독규정은 총 7장 80여 개 조문으로 구성돼 있지만, 개발/인프라 담당자가 실제로 시스템에 반영해야 하는 조항은 한정돼 있어요. 나머지는 경영진, 법무팀, 보안팀의 영역이에요.

조항영역개발팀 구현 사항검사 시 증적
제29조 (프로그램 통제)개발 프로세스개발→테스트→배포 절차 내규화, CI/CD 파이프라인 통제변경 이력, 승인 로그, 테스트 결과서
제36조 (보안성심의)보안 검증신규 서비스 출시 전 자체 보안성심의 수행심의 결과보고서, 취약점 조치 내역
제29조 6호 (운영시스템 적용)배포 관리운영 환경 배포 승인 절차 설계승인자 지정 내역, 배포 승인 로그
제14조 (가용성 확보)인프라동시 최대 사용량 반영 테스트 환경 구축부하 테스트 결과, 용량 산정 근거

운영하면서 계속 느낀 건, 이 4가지 영역이 서로 연결돼 있다는 거예요. 프로그램 통제 절차 없이는 보안성심의를 통과할 수 없고, 테스트 환경 없이는 운영시스템 적용 승인을 받을 수 없어요. 하나를 빠뜨리면 전체 프로세스가 막히는 구조예요.


프로그램 통제 가이드라인이 요구하는 개발 프로세스

프로그램 통제의 핵심은 "모든 프로그램의 등록·변경·폐기 절차를 내규에 반영하고, 그 절차를 준수했는지 분기 1회 이상 점검하는 것"이에요.

전자금융감독규정 제29조는 프로그램 통제의 큰 원칙을 정하고, 금융투자협회의 "프로그램 통제 가이드라인"이 구체적인 구현 방법을 제시해요. 이 가이드라인은 전자금융감독규정 제29조의 적용을 받는 모든 프로그램을 대상으로 해요.

내규에 반영해야 하는 절차

가이드라인이 요구하는 내규 항목을 정리하면 이래요.

절차내규 포함 사항실무 구현
프로그램 등록신규 프로그램 등록 기준, 승인 절차Git 저장소 생성 정책, 코드 리뷰 필수화
프로그램 변경변경 요청→승인→개발→테스트→배포 전 과정Jira 워크플로우 + PR 승인 정책
프로그램 폐기폐기 기준, 데이터 보존 기간, 승인 절차서비스 디커미셔닝 체크리스트
긴급 변경긴급 상황 정의, 사후 승인 절차, 보고 체계핫픽스 브랜치 정책, 사후 리뷰 의무화

여기서 주의할 점은 "긴급 변경 절차"예요. 실무에서는 장애 대응 시 긴급 배포가 불가피한데, 이때도 사후에 반드시 정상 절차를 밟아야 해요. 긴급 배포 후 사후 승인 없이 넘어가면 감사 시 지적 사항이 돼요.

분기별 점검 의무

가이드라인 제7조에 따르면, 금융회사는 분기 1회 이상 다음 사항을 IT감사자 또는 내부 감사자를 통해 점검해야 해요.

  • 프로그램 등록·변경·폐기 절차 준수 여부
  • 프로그램 등록·변경·폐기 내용의 정당성 검증 여부
  • 프로그램 테스트 수행 절차 준수 여부
  • 운영시스템 적용·배포 절차 준수 여부

실무에서는 이 점검을 자동화하는 게 핵심이에요. CI/CD 파이프라인에 게이트를 설정해서, 승인 없이는 배포가 물리적으로 불가능하게 만들면 "절차 미준수" 자체가 발생할 수 없어요. 처음에는 이렇게 생각했어요. "절차만 문서화하면 되겠지." 하지만 실제로 감사를 받아보니, 문서화보다 "절차가 시스템적으로 강제되는 구조"를 더 높이 평가하더라고요.

교육 의무

가이드라인 제8조는 프로그램 통제 절차를 연 1회 이상 교육하도록 요구해요. 대상은 프로그램 통제 절차 미준수자와 신입 직원이에요. 교육 이력도 증적으로 남겨야 해요.


테스트 시스템은 어떤 수준으로 구축해야 하나요

운영체제, 네트워크, 데이터베이스, 라이브러리를 포함하여 실제 운영시스템 환경과 유사한 환경의 테스트 시스템을 구축해야 해요.

프로그램 통제 가이드라인 제4조는 테스트 시스템 구축 요건을 명확하게 정하고 있어요. "유사한 환경"이라는 표현이 모호하게 느껴질 수 있는데, 실무에서는 다음 수준을 충족해야 감사를 통과할 수 있어요.

구성 요소운영 환경테스트 환경 요건실무 구현
OS/런타임Amazon Linux 2023 + JDK 17동일 OS + 동일 JDK 버전Docker 이미지 공유 또는 동일 AMI
네트워크VPC + 서브넷 + 보안그룹동일 토폴로지 (IP 대역만 다름)Terraform 모듈 재사용
데이터베이스RDS MySQL 8.0동일 엔진 + 동일 버전운영 DB 스냅샷 기반 복원 (마스킹 필수)
외부 연동PG사 API, 은행 APIMock 서버 또는 테스트 환경 APIWireMock + 계약 테스트
데이터 규모수천만 건동시 최대 사용량 반영부하 테스트 시 운영 수준 데이터 투입

여기서 "동시 최대 사용량 반영"이 핵심이에요. 전자금융감독규정 제14조는 가용성 확보를 위해 동시 최대 사용량을 반영한 테스트를 요구해요. 단순히 기능 테스트만으로는 부족하고, 피크 트래픽 상황에서도 시스템이 정상 동작하는지 검증해야 해요.

테스트 자동화 솔루션 도입 의무

가이드라인 제5조 제2항은 "충분한 테스트 수행을 위하여 테스트 자동화 솔루션을 도입하여야 한다"고 명시하고 있어요. 이건 권고가 아니라 의무예요.

실무에서 자동화 솔루션의 범위는 이래요.

  • 단위 테스트 자동화 (JUnit, pytest 등)
  • 통합 테스트 자동화 (API 테스트, E2E 테스트)
  • 회귀 테스트 자동 실행 (CI 파이프라인 연동)
  • 부하 테스트 도구 (k6, JMeter, nGrinder 등)

실수하기 쉬운 부분이 있어요. "테스트 자동화 솔루션 도입"이 곧 "모든 테스트를 자동화해야 한다"는 뜻은 아니에요. 핵심은 반복적인 회귀 테스트를 사람이 수동으로 하지 않도록 도구를 갖추라는 거예요. 인수 테스트(UAT)는 여전히 현업 담당자가 직접 수행해야 해요.

테스트 시나리오 관리

가이드라인 제5조 제5항은 테스트 시나리오 및 결과서 작성을 의무화하고, "해당 프로그램의 개발자에 의해 테스트 시나리오가 임의로 변경·축소되지 않도록 조치"하라고 요구해요.

이건 개발자와 테스트 담당자의 역할 분리를 의미해요. 개발자가 자기 코드의 테스트 시나리오를 마음대로 줄이면 안 된다는 거예요. 실무에서는 QA 조직이 테스트 시나리오를 관리하거나, 최소한 테스트 시나리오 변경 시 별도 승인을 받는 절차를 두는 방식으로 대응해요.


보안성심의는 어떤 시점에 수행해야 하나요

신규 전자금융업무를 출시하기 전에 자체 보안성심의를 수행하고, 그 결과를 금융감독원에 제출해야 해요.

전자금융감독규정 제36조는 자체 보안성심의 대상을 "신규 전자금융업무"로 규정하고 있어요. 과거에는 금융감독원이 직접 보안성심의를 수행했지만, 현재는 금융회사가 자체적으로 수행하고 결과를 보고하는 체계로 바뀌었어요.

보안성심의 대상 판단

"신규"의 기준이 실무에서 가장 혼란스러운 부분이에요. 금융당국의 해석을 정리하면 이래요.

상황신규 해당 여부보안성심의 필요
전자금융업 최초 등록 + 서비스 출시해당필수
기존 서비스에 새로운 유형의 전자금융서비스 추가해당필수
동일 유형의 전자금융서비스 추가 출시해당필수
기존 서비스의 일부 변경/개편/기능추가자체 판단내규 기준에 따라
단순 UI 변경, 버그 수정비해당불필요

금융당국은 "자체 내규에 따라 신규성을 판단하도록" 유도하고 있어요. 핵심 기준은 "보안 관점에서의 신규성"이에요. 예를 들어, 조회 기능만 있던 앱에 이체 기능을 추가하면 보안 리스크가 증가하므로 신규로 판단해야 해요.

보안성심의 수행 절차

자체 보안성심의의 실무 절차는 이래요.

보안성심의 소요 기간은 서비스 규모에 따라 다르지만, 일반적으로 2–4주가 소요돼요. 대규모 서비스(신규 앱 출시, 결제 시스템 전면 개편 등)는 4–8주까지 걸릴 수 있어요.

원인을 추적한 끝에 발견한 건, 보안성심의가 지연되는 가장 큰 이유가 "취약점 조치"라는 거예요. 심의 과정에서 발견된 취약점을 모두 조치한 후에야 결과보고서를 제출할 수 있기 때문에, 취약점이 많으면 일정이 크게 밀려요. 서비스 출시 일정을 잡을 때 보안성심의 기간을 반드시 버퍼로 잡아야 해요.

결과보고서 포함 사항

보안성심의 결과보고서에는 최소한 다음 내용이 포함돼야 해요.

  • 심의 대상 서비스 개요 및 아키텍처
  • 보안 위협 분석 결과
  • 취약점 점검 결과 및 조치 내역
  • 잔여 리스크 평가 및 수용 근거
  • 보안 통제 적용 현황 (암호화, 접근통제, 로깅 등)

운영시스템 적용 승인 절차 설계

운영시스템에 프로그램을 적용할 때는 사전에 지정된 책임자의 승인을 받아야 하고, 그 책임자를 임의로 변경할 수 없어요.

프로그램 통제 가이드라인 제6조는 운영시스템 적용 승인에 대해 상당히 구체적인 요건을 제시해요.

책임자 지정 및 관리

요건내용실무 구현
책임자 범위 정의내규에서 승인 책임자의 범위를 정의배포 승인 권한 매트릭스 문서화
사전 지정적용 건별로 책임자를 사전에 지정·관리PR 생성 시 승인자 자동 지정 (CODEOWNERS)
임의 변경 금지개발자, 책임자, 현업이 임의로 변경 불가승인자 변경 시 IT감사자 승인 필요
긴급 변경 절차긴급 시 IT감사자 또는 IT개발 담당 임원 승인긴급 배포 워크플로우 별도 설계

여기서 한 발짝 더 나아가야 한다고 생각해요. 단순히 "승인 버튼을 누르는 사람"을 지정하는 게 아니라, 그 사람이 실제로 변경 내용을 검토할 수 있는 역량과 시간이 있는지까지 고려해야 해요.

CI/CD 파이프라인에서의 구현

운영시스템 적용 승인을 CI/CD 파이프라인에 녹이면 이런 구조가 돼요.

# GitHub Actions 예시 - 운영 배포 승인 게이트
name: Production Deploy
on:
  push:
    branches: [release/*]

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: npm test
      - run: npm run test:e2e

  approval:
    needs: test
    runs-on: ubuntu-latest
    environment:
      name: production
      # GitHub Environment Protection Rules로
      # 사전 지정된 승인자만 승인 가능
    steps:
      - run: echo "Approved by designated reviewer"

  deploy:
    needs: approval
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: npm run deploy:production

GitHub의 Environment Protection Rules를 활용하면 "사전 지정된 책임자만 승인 가능"이라는 요건을 시스템적으로 강제할 수 있어요. 승인자 목록 변경은 Repository Admin 권한이 필요하므로, 개발자가 임의로 변경하는 것도 방지돼요.


검증 담당 조직 구성 요건

검증 담당 조직에는 IT개발 경력 10년차 이상 인력을 포함해야 하고, 개발 조직과 독립적으로 운영돼야 해요.

전자금융감독규정은 프로그램 검증을 담당하는 조직의 구성 요건을 별도로 정하고 있어요. 단순히 "테스트하는 사람"을 두라는 게 아니라, 검증의 독립성과 전문성을 보장하라는 취지예요.

조직 구성 요건

요건내용스타트업 현실
경력 요건IT개발 경력 10년차 이상 인력 포함CTO 또는 시니어 엔지니어가 겸임
독립성개발 조직과 분리된 검증 조직소규모 조직은 역할 분리로 대응
권한테스트 시나리오 승인, 배포 차단 권한QA 리드에게 배포 거부권 부여
책임검증 결과에 대한 최종 책임검증 결과서에 서명/승인

스타트업에게 "IT개발 경력 10년차 이상" 요건은 부담이 클 수 있어요. 실무에서는 CTO나 VP of Engineering이 검증 담당 책임자를 겸임하는 경우가 많아요. 핵심은 "개발한 사람이 자기 코드를 검증하지 않는 구조"를 만드는 거예요.

검증 조직의 역할

검증 담당 조직이 수행해야 하는 업무를 정리하면 이래요.

  • 테스트 시나리오 검토 및 승인 (개발자 임의 축소 방지)
  • 테스트 결과 검증 및 운영 적용 승인 판단
  • 프로그램 변경 이력의 정당성 검증
  • 분기별 프로그램 통제 절차 준수 여부 점검 지원

실무에서 자주 놓치는 포인트

감사를 받아보면, 규정 자체보다 "증적 관리"에서 지적을 받는 경우가 더 많아요.

증적이 없으면 안 한 것과 같다

금융감독원 IT 검사에서 가장 많이 나오는 지적 유형이에요.

지적 유형원인예방 방법
승인 이력 부재구두 승인 후 기록 안 남김모든 승인을 시스템(Jira, GitHub)에 기록
테스트 결과서 미작성테스트는 했지만 문서화 안 함CI 파이프라인에서 결과서 자동 생성
긴급 변경 사후 처리 누락장애 대응 후 정상 절차 미이행긴급 배포 후 48시간 내 사후 리뷰 강제
교육 이력 미보관교육은 했지만 출석부 없음LMS 시스템 또는 교육 이력 DB 관리

규정 준수 vs 빠른 배포, 트레이드오프

규정 준수를 위한 프로세스 오버헤드와 스타트업의 빠른 배포 문화 사이에는 분명한 긴장이 있어요.

금융 SI 프로젝트에서 겪었던 경험을 공유하면, 초기에는 "규정 때문에 배포가 느려진다"는 불만이 많았어요. 배포 주기가 주 3회에서 주 1회로 줄었거든요. 하지만 프로세스가 안정화된 6개월 후에는 장애 발생 건수가 월 4–5건에서 월 1건 이하로 줄어들면서, 장애 대응에 쓰던 시간이 개발에 투입되면서 전체적인 개발 속도가 오히려 빨라졌어요. 프로그램 통제 미준수로 인한 제재(과태료 최대 5천만원, 영업정지)를 고려하면, 초기 투자 대비 리스크 감소 효과가 훨씬 커요.

보안성심의 소요 기간(2–4주)을 서비스 출시 일정에 반영하지 않아서 일정이 밀리는 경우도 자주 봐요. 프로젝트 킥오프 시점에 보안성심의 일정을 먼저 잡고, 역산해서 개발 일정을 수립하는 게 현실적이에요.

이전 글에서 다뤘던 전자금융거래법 전체 그림에서 감독규정이 "시공 매뉴얼"이라고 설명했어요. 이 글에서 다룬 내용이 바로 그 매뉴얼의 핵심 챕터예요. 다음 글에서는 선불전자지급수단 시스템의 한도관리와 원장 설계를 다룰게요.


핵심 요약

  • 전자금융감독규정에서 개발팀이 직접 구현해야 하는 조항은 프로그램 통제(제29조), 보안성심의(제36조), 운영시스템 적용 승인, 가용성 테스트 4가지로 압축돼요.
  • 프로그램 통제 가이드라인은 모든 프로그램의 등록·변경·폐기 절차를 내규화하고, 분기 1회 이상 점검하도록 요구해요. 테스트 자동화 솔루션 도입은 의무예요.
  • 보안성심의는 신규 전자금융업무 출시 전에 수행해야 하고, 소요 기간은 2–4주예요. 취약점 조치까지 포함하면 더 길어질 수 있어요.
  • 운영시스템 적용 승인 책임자는 사전에 지정해야 하고, 임의 변경이 불가능해요. CI/CD 파이프라인의 Environment Protection Rules로 시스템적으로 강제할 수 있어요.
  • 검증 담당 조직에는 IT개발 경력 10년차 이상 인력이 포함돼야 하고, 개발 조직과 독립적으로 운영돼야 해요.

FAQ

Q. 전자금융감독규정에서 개발팀이 직접 구현해야 하는 조항은 무엇인가요?

프로그램 통제(제29조), 보안성심의(제36조), 운영시스템 적용 승인 절차, 가용성 테스트(제14조)가 핵심이에요. 프로그램 통제는 개발→테스트→배포 전 과정의 절차를 내규화하고 시스템적으로 강제하는 것이고, 보안성심의는 신규 서비스 출시 전 자체 보안 검증을 수행하는 거예요.

Q. 보안성심의는 어떤 시점에 수행해야 하나요?

신규 전자금융업무를 출시하기 전에 수행해야 해요. "신규"의 기준은 보안 관점에서의 신규성이에요. 기존 서비스에 새로운 유형의 기능을 추가하거나, 보안 리스크가 증가하는 변경이 있으면 보안성심의 대상이에요. 소요 기간은 일반적으로 2–4주이고, 취약점 조치 기간까지 포함하면 더 길어질 수 있어요.

Q. 프로그램 통제 가이드라인에서 테스트 자동화 솔루션은 의무인가요?

의무예요. 금융투자협회 프로그램 통제 가이드라인 제5조 제2항은 "충분한 테스트 수행을 위하여 테스트 자동화 솔루션을 도입하여야 한다"고 명시하고 있어요. 단위 테스트, 통합 테스트, 회귀 테스트 중 반복적으로 수행되는 테스트를 자동화하는 도구를 갖추면 돼요. 모든 테스트를 100% 자동화해야 한다는 뜻은 아니에요.

Q. 검증 담당 조직의 IT개발 경력 10년차 요건은 어떻게 충족하나요?

스타트업에서는 CTO나 VP of Engineering이 검증 담당 책임자를 겸임하는 경우가 많아요. 핵심은 "개발한 사람이 자기 코드를 최종 검증하지 않는 구조"를 만드는 거예요. 외부 전문가를 자문위원으로 위촉하거나, SI 파트너사의 시니어 엔지니어를 검증 조직에 포함시키는 방법도 있어요.

전자금융 규제 대응 인프라, 어디서부터 설계해야 할지 모르겠다면.

프로그램 통제 절차 설계부터 보안성심의 대응까지, 에이핀의 금융 보안 전문가가 함께합니다.

전자금융 인프라 컨설팅 문의
에이핀주식회사 에이핀아이앤씨
대표이사
한우영
사업자등록번호
569-88-03028
전화번호
02-6956-4202
팩스
02-6956-4208
주소
서울특별시 용산구 효창원로16길 11 (신창동)