[웹접근성, 웹표준, 웹보안 및 망 중립성]
1.웹접근성, 웹표준, 웹보안 및 망중립성 관계성 설명
- 웹표준 : 웹 표준이 웹 접근성 향상을 위한 기술로 활용(<-> 웹표준과 웹접근성간의 부분적인 불일치 존재)
- 웹보안 : 해킹,DoS,바이러스로부터 보호 웹 접근성을 향상 시킴(<-> 일부 비표준 보안기술이 웹 접근성을 저해시킴)
- 망중립성 : 네트워크 망에 따른 컨텐츠 접근 차별을 없애므로 웹 컨텐츠에 대한 접근성이 보장됨
[웹서비스 보안 취약점과 보안기술]
1.웹 서비스 보안 취약점 및 보안 요구사항
가.Web Service 보안 취약점
- 메시지 변조, 기밀성, 메시지 수집, Spoofing, DoS, 재생공격
나.Web Service 보안 요구사항
- 인증, 인가, 기밀성, 무결성, 서비스 가용성(접근성), 부인방지, 상호 운용성
2.웹서비스 보안의 기술
- XML 전자서명 : XML문서 혹은 일부에 대한 전자서명 명세. SOAP, WSDL의 항목에 대한 서명시 적용
- XML 암호화 : XML문서에 대한 암호화/복호화 명세. SOAP, WSDL 항목에 대한 암호화 시 적용
- XACML : eXtensible Access Control Markup Language. 정보접근정책을 위한 XML명세. UDDI 및 WSDL의 항목 접근제어
- XKMS : 키 관리 표준, 공개키 관리 메커니즘 제공. 공개키 획득과 검증, 키등록, 폐기, 복구
- SAML : Security Assertion Markup Language. 인증에 필요한 정보 담고 있는 Security Token
- WS-Security : Kerberos, PKI, SSL, Xml 서명, XML 암호화 세트 제공
3.XML 보안의 표준
- SAML(분산환경 사용자정보 공유), WS-Security(MS, IBM 주도 웹서비스 보안정책), MS Passport(MS제공 인증서비스)
[SOAP 와 RESTful]
1.SOAP 기반 웹서비스와 RESTful 웹서비스
가.SOAP 기반 웹서비스
- XML(웹서비스 내의 모든 데이터 표현), WSDL(데이터와 오퍼레이션 정의), UDDI(전역 서비스 저장소 등록)
- SOAP(공개된 웹서비스가 이용될때 서비스 요청자와 제공자 간에 이용)
나.RESTful 웹 서비스
- 부수적인 레이어, 세션관리 추가없이 HTTP 프로토콜로 데이터 전달하는 프레임워크
- 클라이언트/서버 간 구성요소 엄격히 분리 구현은 단순화, 확장성과 성능은 높일 수 있는 아키텍처
- POST(CREATE), GET(READ), PUT(UPDATE), DELETE(DELETE)
2.SOAP 기반 웹서비스와 RESTful 웹서비스 비교
가.서비스 구조간 비교
- SOAP기반 웹서비스 서비스 제공자와 요청자 간 SOAP 프로토콜로 메시지 주고 받는 방식으로 서비스 이용
- RESTful은 기본 HTTP 프로토콜의 메소드 GET/PUT/POST/DELETE를 이용 다양한 형태로 표현된 JSON,XML,RSS 등
리소스를 직접 실어 나름
나.서비스 기술간 비교
1)특징 비교
- SOAP : The Maching-Readable Web, Stateful, 엄격한 문법검사, 서비스계약에 충실, 웹서버/웹서비스 개발환경 지원
- RESTfule : The Human-Readable Web, Stateless, 기본 XML만으로 서비스개발가능, 별도 개발환경지원 필요없음
2)적용 기술
- SOAP : Remote Procedure Call, SOAP/HTTP, SMTP, WSDL, UDDI, W3C의 WS-*스택, 어려운사용법,무거운프로토콜
- RESTful : Publish/Syndicate Pattern, HTTP, WADL,XML,JSON,hREST, 표준의 부재, 관리가 어려움
3.SOAP과 RESTful 웹서비스의 서비스 사례
- SOAP: 고객정보,주문정보 검색,변경,삭제 오퍼레이션 각기 존재. 기능 수행시 오퍼레이션 호출 방식
- RESTful : 총주문(/order), id를 가지는 특정주문(/order/{id}), 총 고객, 고객 한명을 모두 리소스로 정의하고,
각 리소스에 URI를 할당한 후 URI에 대해 HTTP GET/PUT/POST/DELETE 오퍼레이션을 수행
참고 : http://www.iamcorean.net/22
'Spring' 카테고리의 다른 글
[Maven] Maven 테스트. (0) | 2014.10.09 |
---|---|
[Spring] Tiles 적용하기 (0) | 2014.09.04 |
[ Spring ] Web Service - Restful 1 (0) | 2013.11.26 |
[Spring] Spring에서 import 시 "classpath:"와 "classpath*:" 의 차이점 (0) | 2012.08.29 |
[Spring] DI를 위한 annottion - @Resource / @Autowired / @Inject / @Qualifier (0) | 2012.08.13 |