2013-04-08 2 views
3

WCF 서비스를 보호하는 가장 좋은 방법은 무엇입니까? 서비스 호출에 헤더를 추가하고 클라이언트에서 헤더를 확인하는 메시지 관리자를 사용해야합니까?WCF 서비스를 보호하는 가장 좋은 방법은 무엇입니까?

나는 사람이 서비스를 사용하기 위해 올바른 사용자 이름과 암호를 제공하고 모든 것이 암호화되어 있는지 확인해야합니다. 그것은 인터넷을 통해 HTTP 바인딩을 사용합니다.

+2

인터넷 또는 인트라넷? 무슨 바인딩? 서비스의 보안 요구 사항은 무엇입니까? –

답변

1

HTTP로만 제한된 경우 성능에 문제가 있지만 휴대가 가능합니다.
하지만 WS-Security로 HTTP를 암호화하고 보안 할 수 있다고 생각합니다.
전송 보안 모드 및 메시지 보안 모드 :

전송 및 메시지 보안 모드는

두 가지 주요 메커니즘은 WCF에서 전송 보안을 구현하는 데 사용됩니다.

전송 보안 모드는 전송 보안을 위해 HTTPS와 같은 전송 수준 프로토콜을 사용합니다. 전송 모드는 널리 채택되고, 많은 플랫폼에서 사용 가능하며, 계산 복잡성이 적다는 이점이 있습니다. 그러나 지점 간 메시지 만 보호한다는 단점이 있습니다.

메시지 보안 모드는 WS 보안 (및 기타 사양)을 사용하여 전송 보안을 구현합니다. 메시지 보안은 SOAP 메시지에 직접 적용되고 애플리케이션 데이터와 함께 SOAP 봉투 안에 포함되기 때문에 전송 프로토콜과 무관하며 확장 성이 뛰어나며 엔드 투 엔드 보안을 보장 할 수 있다는 장점이 있습니다 (지점 투 - 포인트); SOAP 메시지의 XML 특성을 처리해야하므로 전송 보안 모드보다 몇 배 더 느린 단점이 있습니다.

Selecting a Credential Type

How to: Authenticate with a User Name and Password

+0

사용자 이름과 암호로 보안을 설정하는 경우는 어떻게됩니까? 그렇게하는 가장 좋은 방법은 무엇입니까? –

+0

사용자 이름과 비밀번호로 메시지를 작성하기 만하면됩니다. 나는 링크를 찾을 것이다. – Paparazzi

2

"보안"이란 의미에 따라 다릅니다. SSL (https)로 시작하여 클라이언트를 인증하려면 인증 기술로 진행할 수 있습니다. 당신은 정말로 당신의 목표를 정교하게 다룰 필요가 있습니다 ...

+0

죄송합니다. 자격 증명을 알지 못하면 아무도 그 서비스를 호출 할 수 없도록 막 시작했습니다. –

+0

메시지 헤더가 해당 문제를 해결합니다. – HackyStack

2

옵션을 요약 한 this MSDN article을보십시오. 일반적인 웹 응용 프로그램과 같은 많은

, 당신은 사이트를 확보하는 방법에는 여러 가지가 있습니다

  1. 전송 보안 (SSL)
  2. 메시지 보안 (메시지 보안 헤더) 결합 된 메시지 자격 증명
  3. 운송 ()

답변은 응용 프로그램에 필요한 보안 수준에 따라 다릅니다. 대부분의 경우, 운송 보안으로 충분할 수 있습니다.

관련 문제