2015-01-16 4 views
0

이것은 바보 같은 질문 일 수 있지만 SOAP 대 REST와 관련하여 보안에 관한 두 명의 동료와 함께 간단한 토론을 진행했습니다.REST (JSON 사용)와 SOAP 보안 비교

SOAP을 사용할 때 본질적으로 더 안전한 것은 없다고 생각합니다. 다른 말로하면 SOAP 엔드 포인트에 적용 할 수있는 모든 보안을 REST 엔드 포인트에 적용 할 수 있습니다.

당연히 REST가 JavaScript 클라이언트와 같은 "클라이언트 - 클라이언트 측"을 훨씬 더 많이 포함하는 클라이언트 측으로 이동할 때 약간 손상됩니다. 사용자의 브라우저에 앉아있는 동안의 보안은 물론 더 많은 도전입니다.

그럼, 아무도 반대 예제를 제공 할 수 있습니까? 보안 포커스 그룹으로 연결해야하는 경우 사과드립니다. - 그렇다면 질문을해도 좋습니다.

+0

REST를 사용하면 최종 사용자가 실제 대상 대 SOAP을 결코 알 수 없기 때문일 수 있습니다. 해커에게 악의적 인 일을하기위한 더 쉬운 접근법을 제공합니다. – Rafael

+0

입력에 감사드립니다. 라파엘 - "목적지"로 무엇을 의미하는지 명확하게 설명 할 수 있습니까? – demaniak

+0

맞습니다. 폴더 구조를 숨김으로써 서버 파일 시스템을 보호합니다. 또한 서버가 요청 메소드 (verb)와 만 상호 작용할 수 있기 때문에 자원 데이터를 숨기고 보호 기능을 보장 할 수있는 더 많은 http 동사를 사용하여 더 많은 유연성을 확보 할 수 있습니다. – Rafael

답변

0

동료들에게 중요한 점이 있습니다. REST는 베어러 토큰과의 바인딩만을 지원하며 SOAP은 소위 키 토큰 홀더를 지원합니다. 후자의 경우, 클라이언트는 생성 된 중간 키를 사용하여 메시지를 암호화함으로써 토큰을 요청했다고 소비하는 서비스를 증명합니다. 이것은 토큰 절도에 대한 추가 보호 장치입니다.

더 많은 정보를 원하시면이 문서를 참조하십시오 : http://travisspencer.com/blog/2009/02/what-is-a-proof-key.html

+0

기사 user18044, 재미있는 읽기 주셔서 감사합니다. 내가 제대로 이해했다면 이것은 저수준 SOAP 프로토콜로 구워졌지만 (현재 (2009) 현재 웹 브라우저의) 단점으로 인해 SSL상의 기본적인 인증과 동일하게 기능이 저하됩니다. 그래서이 권리가 있다면 Server2Server 통신이 SOAP보다 보안이 강화 된 경우가 있습니다. – demaniak

+0

흠, 두 번째 생각에 이것은 SOAP보다 SAML 프로토콜과 더 관련이있는 것으로 보입니다. [This] (http : //en.wikipedia.org/wiki/Security_Assertion_Markup_Language # The_use_of_SOAP)는 백 채널 통신에서 사용하기 위해 SOAP을 통해 SAML 요청을 만들어 프런트 채널 보안을 강화할 수 있음을 나타냅니다. – demaniak

+0

방금 ​​발견 된 [SO] (http://stackoverflow.com/questions/853620/secure-web-services-rest-over-https-vs-soap-ws-security-which-is-better) - 폐쇄되었습니다. (내가 예상 한대로)하지만 유용한 정보가 여전히 있습니다. – demaniak

0

좋아, 코멘트에 SO link에서를, 모터 사이클 이야기는 잘 날 위해 정리 보인다.

WS-Security (SOAP을 통해 계층화 됨)는 메시지 본문 (요청의 실제 데이터)을 완전히 또는 부분적으로 암호화 (보안) 할 수있는 표준 " 올바른 프로세서 코드로 해독 할 수 있습니다. 이것은 위와 그 이상이며 전송 계층 보안 (SSL)입니다.

AFAIK, REST는 현재와 마찬가지로 비슷한 표준을 가지고 있지 않습니다. 따라서 REST 서비스에 대해 비슷한 보안을 구현할 수 있지만이를 수행해야합니다. 대부분의 경우 SSL을 통한 REST는 대부분의 사람들 (대다수의 사람들이 일반 사용자/소비자의 대부분)에 충분할 것입니다.

결론적으로 SOAP가 할 수있는 보안상의 문제는 여전히 남아 있지만 REST는 그렇지 못합니다. REST 측은 SOAP 측보다 많은 작업을 요구할 수있다.