[정보처리기사][인터페이스 구현] 인터페이스 구현,검증,보안

컴퓨터/정보처리기사

728x90
반응형

인터페이스 구현

송. 수신 시스템 간의 데이터 교환 및 처리를 실현해 주는 작업

  • 대표적인 구현 방법
    • 데이터 통신을 이용한 인터페이스 구현
    • 인터페이스 엔티티를 이용한 인터페이스 구현

1.데이터 통신을 이용한 인터페이스 구현

애플리케이션 영역에서 데이터 포맷을 인터페이스 대상으로 전송하면 수신 측에서 파싱(Parsing)하여 해석하는 방식

주로 JSON이나 XML 형식의 데이터 포맷을 사용하여 인터페이스를 구현한다.

 

1.1 JSON을 이용한 인터페이스 구현 순서

  1. 송신 측에서 인터페이스 객체를 생성할 데이터를 각 시스템 환경에 맞게 선택한다.
  2. JSON을 이용해 데이터를 인터페이스 객체로 만든다.
  3. 인터페이스 객체를 AJAX기술 등을 이용하여 수신 측으로 보낸다.
  4. 수신 측에서 인터페이스 객체를 수신해 파싱 한 후 처리한다.
  5. 수신 측에서 송신 측으로 처리 결과를 보낸다.

1.2 JSON - JavaScript Object Notation

웹상에서 용량이 적은 데이터를 교환하기 위해 데이터 객체를 속성과 값으로 이루어진 형태로 표현하는 개방형 표준 포맷

1.3 AJAX - Asynchronous JavaScript and XML

Javascript를 사용하여 클라이언트와 서버간에 XML 데이터를 주고받는 비동기 통신 기술

이를 통해 웹상에서 전체페이지를 고치는 것이 아닌 일부 영역만을 업데이트 할 수 있다.

1.2 인터페이스 엔티티를 이용한 인터페이스 구현

인터페이스가 필요한 두 시스템 사이에 인터페이스 엔티티를 두어 상호 연계하는 것

일반적으로 인터페이스 테이블을 엔티티로 활용한다.

 

인터페이스 보안

인터페이스의 취약점 분석 후 적절한 보안기능을 적용하는 행위

 

1. 인터페이스 보안 기능 적용

일반적으로 3가지 영역으로 구분하여 보안기능을 적용한다.

  • 네트워크 영역
  • 애플리케이션 영역
  • 데이터베이스 영역

1.1 네트워크 영역

  • 보안 범위
    • 송.수신 간 스니핑등을 이용한 데이터 탈취 및 변조를 방지하기 위한 트래픽 암호화
  • 적용 기술
    • IPSec - IP 패킷 단위의 데이터 변조 방지 및 은닉 기능 제공 포로토콜
    • SSL - TCP/IP 계층과 애플리케이션 계층 사이에서 인증, 암호화, 무결성을 보장하는 프로토콜
    • S-HTTP - 클라이언트와 서버 간의 전송되는 모든 메시지를 암호화하는 프로토콜

1.2 애플리케이션 영역

  • 보안 범위
    • 애플리케이션 코드상의 보안 취약점을 보완
  • 적용 기술
    • 소프트웨어 개발 보안 가이드 참조

1.3 데이터베이스 영역

  • 보안 범위
    • 데이터베이스, 스키마, 엔티티의 접근 권한
    • 프로시저, 트리거등 데이터 베이스의 동작 취약점 보안
    • 개인 정보 또는 민감한 테이터
  • 적용 기술
    • 접근 권한의 올바른 지정
    • 접근 위치의 지정
    • 민감한 정보의 암호화 또는 익명화

2. 데이터 무결성 검사 도구

인터페이스의 보안 취약점을 분석하는 데 사용되는 도구

  • 대표적인 종류
    • Tripwire
    • AIDE
    • Samhain
    • Claymore
    • Slipwire
    • Fcheck

인터페이스 구현 검증

구현된 인터페이스가 정상적으로 문제없이 작동하는지 확인하는 행위

1. 인터페이스 구현 검증 도구

구현을 검증하기 위해서는 인터페이스 단위기능과 시나리오등을 기반으로 하는 통합 테스트가 필요하다.

도구 기능
xUnit 단위 테스트 프레임 워크
SUnit,JUnit,CppUnit등을 통칭하여 부르는 말
STAF 크로스 플랫폼, 분산 소프트웨어 테스트 환경 조성을 지원해준다.
분산 환경에 설치된 데몬이 프로그램 테스트에 대한 응답을 대신한다.
FitNesse 웹 기반 테스트 케이스 설계, 실행, 결화 학인등을 지원하는 프레임 워크
NTAF FitNess의 장접입 협업 기능과 STAF의 장점인 재사용 및 확장성을 통합한
NHN(Naver)의 테스트 자동화 프레임 워크
Selenium 다양한 브라우저 및 개발 언어를 지원하는 웹 애플리케이션 테스트 프레임 워크
watir Ruby를 사용하는 애플리케이션 테스트 프레임워크

2. 인터페이스 구현 감시 도구

인터페이스 동작 상태는 APM(애플리케이션 성능 관리)을 사용하여 감시할 수 있다.

APM을 통해 데이터베이스와 웹 애플리케이션의 트랜잭션, 변숫값, 호출 함수, 로그 및 시스템 부하등 종합적 정보 조회 및 분석을 할 수 있다. 

 

2.1 애플리케이션 성능 관리 - APM : Application Performance Management/Monitoring

애플리케이션의 접속자, 자원현황, 트랜잭션 수행 내역, 장애 진단등 다양한 모니터링 기능을 제공하는 도구

 

  • 종류
    • 리소스 방식
      • Nagios
      • Zabbix
      • Cati
    • 엔드 투 엔드 방식
      • VisualVM
      • 제니퍼
      • 스카우터
728x90
반응형

Commnet

G91개발일지

Gon91(지구일)

91년생 공학엔지니어의 개발일지

TODAY :

YESTER DAY :

TOTAL :