5. 인터페이스 구현

정보처리기사 정보처리기사요약 인터페이스 인터페이스구현 EAI ESB JSON XML AJAX REST IPSec

인터페이스 설계 확인

외부, 내부 모듈 간 공통 기능 및 데이터 인터페이스 확인 :star:

  • 인터페이스 설계서

    • 상세 기능별 인터페이스 명세서: 인터페이스 ID, 인터페이스 , 퍼레이션 명, 오퍼레이션 요, 사 조건, 사 조건, 라미터, 환 값 아명오개 전후파반

외부 및 내부 모듈 연계를 위한 인터페이스 기능 식별 :star::star::star:

  • 외부, 내부 모듈 연계 방법(EAI, ESB 연계 방법)

  • 외부, 내부 모듈 연계를 위한 인터페이스 기능 식별 절차

    • 외부 및 내부 모듈 간 연계된 기능 식별

    • 연계된 기능에 따른 인터페이스 기능 식별: 외부 모듈과 연계된 기능을 통한 인터페이스 기능 식별 → 내부 모듈과 기능을 통한 인터페이스 기능 식별 → 외부 및 내부 모듈과 연계된 기능을 통한 인터페이스 기능 식별

외부 및 내부 모듈 간 인터페이스 데이터 표준 확인 :star::star:

  • 인터페이스 데이터 표준 확인: 상호 연계하고자 하는 시스템 간 인터페이스가 되어야 할 범위데이터 형식표준정의하는 활동

  • 송수신 시스템 간 인터페이스 데이터 표준 확인 절차: 데이터 인터페이스 입 · 출력 의미 파악 → 데이터 인터페이스 입 · 출력 의미 파악을 통한 데이터 표준 확인 → 인터페이스 항목 식별 → 데이터 표준 최종 확인

인터페이스 기능 구현

인터페이스 기능 구현 정의 :star::star:

  • 인터페이스 기능 구현 정의 개념: 개발하고자 하는 응용 소프트웨어와 연계 대상 모듈 간의 세부 설계서를 확인하여 일관되고 정형화된 인터페이스 기능을 구현

  • 모듈 간 세부 설계서 확인

    • 컴포넌트 명세서

    • 인터페이스 명세서

  • 일관되고 정형화된 인터페이스 기능 정의

  • 정의된 인터페이스 기능에 대한 정형화

인터페이스 기능 구현 :star::star::star:

  • 사전에 정의된 기능에 대한 구체적 분석

  • 인터페이스 기능 구현 기술

    • JSON: 속성-값 쌍 또는 “키-값 쌍”으로 이루어진 데이터 오브젝트를 전달하기 위한 포멧이다. AJAX에서 많이 사용되고 XML을 대체하는 포멧이다.

      • 자료형: 숫자, 문자열, 배열, 객체

      • 도구: Parser, Renderer, Serializer, Mapper, Validator

    • XML: HTML단점보완인터넷 언어이다. SGML의 복잡한 단점개선마크업 언어이다.

      • 프롤로그 문법: <?xml version="XML문서버전" encoding="언어셋" standalone="yes|no"?>

      • XML 요소 문법: <요소이름 속성1=”속성값” 속성2=”속성값” ...>내용</요소이름>

    • AJAX: 자바스크립트사용하여 웹 서버클라이언트 간 비동기적으로 데이터교환하고 조작하기 위한 웹 기술이다.

      • 주요 기술: XMLHttpRequest, JavaScript, XML, DOM, XSLT, HTML, CSS
    • REST: 웹과 같은 분산 하이퍼미디어 환경에서 자원의 존재/상태 정보를 표준화된 HTTP 메소드로 주고받는 웹 아키텍처이다.

      • 메서드: POST, GET, PUT, DELETE

      • 특징: 클라이언트/서버 구조, 무 상태성, 일관된 인터페이스, 캐시 처리 가능, 자체 표현 구조

  • 인터페이스 구현

    • 데이터 통신을 사용하는 인터페이스 구현: 인터페이스 객체 생성 구현, 인터페이스 객체 전송 후 전송 결과를 수신 측에서 반환받도록 구현

    • 인터페이스 개체를 사용하는 인터페이스 구현: 송신 시스템의 인터페이스 테이블(프로시저, 트리거, 배치 작업 등을 통해서 수신 테이블로 전송), 수신 시스템의 인터페이스 테이블

인터페이스 예외 처리 방안 :star::star:

  • 데이터 통신을 사용한 인터페이스에서 예외 처리 방법

    • 송신 측에서 예외 처리 방법: AJAX 호출 후 반환 값을 받아 어떻게 처리할지를 호출하는 부분에서 사전 정의

    • 수신 측에서 예외 처리 방법: 받은 JSON 객체를 처리 시에 try ~ catch 구문을 이용하여 발생한 예외를 처리하고 이를 송신 측에 전달

  • 인터페이스 개체를 사용하는 인터페이스에서 예외 처리 방법

    • 송신 인터페이스 테이블에서 예외 처리 방법: 예외 발생 시 송신 인터페이스 테이블에 예외 유형에 따른 예외 코드와 상세한 원인을 함께 입력

    • 수신 인터페이스 테이블에서 예외 처리 방법: 수신 측에서 데이터가 없거나 잘못된 값을 읽을 경우 예외 발생

인터페이스 보안 기능 적용 :star::star:

  • 인터페이스 보안 취약점

    • 데이터 통신 시 데이터 탈취 위협: 스니핑을 통해 데이터 전송 내역감청하여 데이터탈취하는 위협이 존재한다.

    • 데이터 통신 시 데이터 위 · 변조 위협

  • 인터페이스 보안 구현 방안

    • 시큐어 코딩 가이드 적용: 력데이터 검증 및 표현, 안 기능, 간 및 상태, 러 처리, 드 오류, 슐화, API 오용 입보시 에코캡아

    • 데이터베이스 보안 적용: 데이터베이스 기밀성유지하기 위해서 인터페이스 시 활용되는 중요 데이터에 대해서는 필요한 보안 요구사항적용한다.

    • 암호화 알고리즘: 칭 키 암호화 알고리즘, 대칭 키 암호화 알고리즘, 시 암호화 알고리즘 대비해

    • 암호화 기법: API 방식, Plug-in 방식, TDE 방식, Hybrid 방식 애플티하

    • 중요 인터페이스 데이터의 암호화 전송: IPSec, SSL/TLS, S-HTTP

      • IPSec

        👉 동작 모드: 전송 모드, 터널 모드

        👉 주요 프로토콜 / 정책: AH, ESP, IKE / SPD, SAD

  • 인터페이스 보안 기능 적용 프로세스

    • 인터페이스 각 구간의 보안 취약점 분석
    단계 영역 보안 취약점
    송신 데이터 선택 애플리케이션 송신 데이터 선택 객체 접근 권한 탈취 가능, 객체 선택 시 SQL 검증 필요
      네트워크 DB 정보 전달 시 탈취 가능성, 악의적 서버 변조 가능
    송신 객체 생성 애플리케이션 생성 객체 접근 권한 탈취 가능, 객체 생성 시 악의적인 코드 삽입 가능
    인터페이스 송신 애플리케이션 송신시점에서 악의적인 사이트로 전달 가능(수신 변조)
      네트워크 송수신 네트워크 통신 내역 탈취 및 위변조
    인터페이스 수신 애플리케이션 파싱 시 악의적 파서를 만들어 공격 가능, 수신 객체 접근 권한 탈취 가능
    데이터 처리 결과 전송 애플리케이션 데이터 처리 객체 접근 권한 탈취 가능, 악의적 데이터 삽입 및 위변조 가능
      DB 프로시저에 악의적 입력값 삽입 가능(SQL Injecion), 에러처리 미흡으로 강제적 내부 오류 발생 시 미인지 가능
      네트워크 DB 정보 전달 시 탈취 가능성, 악의적으로 반환 값 변조 가능
    • 분석된 보안 취약점을 근거로 인터페이스 보안 기능 적용

    • 네트워크 구간에 대한 보안 기능 적용: IPSec, AH, IKE(키 교환 알고리즘), ESP, SSL, S-HTTP

    • 애플리케이션 보안 기능 적용: 비인가자 접근 권한 관리, 악의적 코드 삽입 금지, 악의적 시도 시 에러 처리

    • 데이터베이스 보안 기능 적용: 데이터베이스 접근 권한, 악의적 코드 삽입 금지, 민감 데이터 관리, 악의적 시도 시 에러 처리

인터페이스 구현 검증

인터페이스 구현 검증 :star::star::star:

  • 인터페이스 구현 검증 도구

    • 개념: 구현된 인터페이스의 동작을 검증하기 위해 인터페이스 구현 및 감시 도구를 통해서 인터페이스 동작 상태검증하고 모니터링할 수 있다.

    • 종류: xUnit, STAF, FitNesse, NTAF, Selenium, watir 엑스피 엔셀웨

  • 인터페이스 감시 도구

    • 종류: 스카우터, 제니퍼

인터페이스 오류 처리 확인 및 보고서 작성 :star:

  • 인터페이스 오류 처리 방법: 사용자 면에서 오류를 인지하도록 구현, 인터페이스 오류 그 생성, 인터페이스 관련 이블에 오류 사항 기록 화로테

  • 인터페이스 오류 처리 보고서 작성