인터페이스 기능 구현
- 송, 수신 시스템 간 데이터 교환 및 처리를 실현해주는 작업
- 구현 방법으로는 데이터 통신을 이용한 방법, 인터페이스 개체 (Entity) 이용한 방법 있음
1) 데이터 통신 이용한 인터페이스 구현
- 애플리케이션 영역에서 인터페이스 형식에 맞춘 데이터 포맷을 인터페이스 대상으로 전송하고 수신 측에서
파싱 (Parsing)해 해석하는 방식
- 주로 JSON 및 XML 형식 데이터 포맷 사용해 인터페이스 구현
웹 페이지 전송 기술 : Ajax (Asynchronous JavaScript and XML)
- JavaScript 사용한 비동기 통신, 클라이언트와 서버 간 XML 데이터 주고받는 기술
- 웹 페이지 리로드 시 전체 페이지 새로 고치지 않고도 페이지 일부만을 위한 데이터 로드하는 기법, 자원 낭비 절약 가능
- 클라이언트와 서버 간 자바스크립트 및 XML을 비동기 방식으로 처리하며, 전체 페이지를 새로 고치지 않고도 웹페이지 일부 영역만 업데이트할 수 있도록 하는 기술
웹 페이지 전송 데이터 형식 : XML, JSON
XML
- 웹 브라우저간 호환성 문제와 SGML 복잡함 해결하기 위해 개발된 다목적 마크업 언어
- HTML 단점 보완해 구조화된 데이터 교환하고, 사용자 정의 태그 가능
JSON (JavaScript Object Notation)
- 속성-값 쌍 (Attribute-Value Pairs) 이뤄진 구조적 데이터 교환을 위해 인간이 읽을 수 있는 텍스트 사용하는
개방형 표준 포맷
- Javascript에서 객체 만들 때 사용하는 표현식으로 특정 언어에 종속되지 않음
- 비동기 통신 (AJAX) 위해 넓게는 XML 대체하는 주요 데이터 포맷
2) 인터페이스 개체 이용한 인터페이스 구현
- 인터페이스 필요한 시스템 사이에 별도 인터페이스 개체 (entity) 두어 상호 연계하는 방식
- 일반적으로 인터페이스 테이블을 개체로 사용
인터페이스 예외 처리 방안
- 구현된 인터페이스가 동작하는 과정에서 기능상 예외 상황이 발생했을 때 이를 처리하는 절차
- 인터페이스 구현 방법 따라 데이터 통신 이용하는 방법과 인터페이스 개체 이용한 방법으로 구분
1) 데이터 통신 이용한 인터페이스 예외 처리
- JSON, XML 등 인터페이스 객체 이용해 구현한 인터페이스 동작 실패한 경우 대비
- 인터페이스 객체 송, 수신 시 발생할 수 있는 예외 케이스를 정의하고 각 예외 케이스마다 예외 처리 방법 기술
송신 측 예외 처리 | - AJAX 호출 후 반환값 받아 어떻게 처리할지 호출하는 부분에서 정의 - 반환 케이스는 크게 성공 (success)와 실패(fail)로 구분 |
수신 측 예외 처리 | 수신 측에서 받은 JSON 객체를 처리 시 try ~ catch 구문 이용해 발생한 예외를 처리하고 이를 송신 측 전달 |
2) 인터페이스 개체 이용한 인터페이스 예외 처리
인터페이스 테이블 통해 인터페이스 기능상 문제에서 예외 사항 발생했을 경우 예외 처리 메시지와 함께 예외 처리가
발생한 원인을 인터페이스 이력에 같이 기록
송신 측 예외 처리 | - 송신 인터페이스 테이블에 예외 유형에 따른 예외코드와 상세한 원인 함께 입력 - 송신 인터페이스 테이블에 프로시저, 트리거 등 통해 데이터 전송 시 발생하는 예외 유형 정의하고 원인 함께 입력 |
수신 측 예외 처리 | - 데이터 없거나 잘못된 값 읽을 경우 예외 발생 - 예외 발생 시 사전 정의된 예외코드 입력하고 예외 발생 사유 함께 기록 |
인터페이스 보안 기능 적용
인터페이스 보안 취약점 먼저 파악하고 절절한 보안 기능 선택해야 함
1) 인터페이스 보안 취약점 분석
- 인터페이스 기능 수행되는 각 구간들 구현 현황 확인, 각 구간에 어떤 보안 취약점 있는지 분석
- 확인된 인터페이스 기능 기반으로 영역별로 발생할 수 있는 보안 취약점을 시나리오 형태로 작성
- 네트워크 영역, 애플리케이션 영역, 데이터베이스 영역으로 구분
(1) 네트워크 영역 취약점
- 스니핑 (Sniffing) : 패킷 엿보기
- 세션하이재킹 : 세션 탈취
- 스푸핑 (Spoofing) : 위장터페이스 기능 구현
- 서비스 거부 (Dos) : 시스템 기능 마비
(2) 애플리케이션 영역 취약점
- 버퍼 오버플로우 : 프로그램 취약점, 복귀 주소 조작
- XSS 공격 : 악성 스크립트 파일을 게시판 등에 삽입해 부전한 기능 수행
(3) 데이터베이스 영역 취약점
- 비인가 접근, 트리거 등 DB 동작 시 보안 취약점 발생
- SQL 인젝션 : 변조한 SQL 구문 삽입해 DB에 불법 접근
2) 인터페이스 보안 기능 적용
(1) 네트워크 영역 보안
보안 프로토콜 | 기능 |
S-HTTP | 응용 계층에서 동작하는 웹 보안 암호화 |
SSL | 전송 (TCP / IP) ~ 응용 계층에서 동작하는 웹 보안 표준 인증, 암호화, 무결성 수행 |
IPsec | - 네트워크 계층 보안 표준 프로토콜 IP 패킷에 대한 인증, 암호화 수행 - 네트워크 트래픽에 대해 IP (Internet Protocol) 계층에서 IP 패킷 단위의 데이터 변조 방지 및 은닉 기능을 제공하는 네트워크 계층에서의 보안 통신 규약 |
(2) 애플리케이션 영역 보안
애플리케이션 구현 코드 상 보안 취약점 보완하는 방향으로 애플리케이션 보안 기능 적용
(3) 데이터베이스 영역 보안
데이터베이스 접근 권한, 인증, 익명화 및 암호화 수행
'Study > 정보처리기사 실기' 카테고리의 다른 글
[정보처리기사 실기] 애플리케이션 테스트 관리 _ 애플리케이션 테스트 설계 (1) | 2025.03.05 |
---|---|
[정보처리기사 실기] 인터페이스 구현 _ 인터페이스 구현 검증 (1) | 2025.03.05 |
[정보처리기사 실기] 인터페이스 구현 _ 인터페이스 설계 확인 (0) | 2025.03.03 |
[정보처리기사 실기] 서버프로그램 구현 _ 서버 프로그램 구현 (0) | 2025.03.02 |
[정보처리기사 실기] 서버프로그램 구현 _ 개발환경 구축 (2) | 2025.03.02 |