2012-02-23 2 views
2

고객의 응용 프로그램에서 데이터를 수집하기 위해 웹 서비스를 만들어야합니다.WCF 웹 서비스는 비 - 마이크로 소프트 SOAP 클라이언트에 적합한가?

이러한 응용 프로그램은 서로 다른 기술로 프로그래밍되며 모두 공통점이 있습니다. 일반 SOAP 웹 서비스를 사용할 수 있습니다.

이미 노출 될 수있는 WCF 서비스가 있지만 내부 용도로만 제작되었으므로 보안을 유지할 필요가 없습니다.

나는 WCF 서비스를 보안하는 방법과 Microsoft 클라이언트 응용 프로그램에서이를 소비하는 방법에 대한 많은 기사를 읽었습니다. 그러나 저는 표준 WCF 서비스 보안을 구현하는 고객의 비 -Microsoft 응용 프로그램 기능에 대해 정말로 우려하고 있습니다. 나는 그들 중 일부는 무국적이며 세션이나 보안 WCF 서비스가 요구할 수도있는 것을 유지할 수 없다는 것을 명심해야한다.

그래서 여기에 제가 지금 가지고있는 옵션이 있습니다.

1) 각 WCF 기능에 사용자 이름/암호 매개 변수를 추가하고 모든 호출에 대해 자격 증명 검사를 수행하십시오. (SSL 인증서가 있습니다 ...이 옵션을 보안 된 것으로 간주하는 것으로 충분합니까?)

2) 내 WCF 서비스를 삭제하고 옵션 # 1에서 설명한대로 사용자 이름/암호 매개 변수가있는 일반 SOAP 웹 서비스를 만듭니다. 내 고객의 응용 프로그램 기능에 더 가까이 다가 가십시오.

3) 표준 WCF 보안을 구현하고 고객이 스스로 처리 할 수있는 방법을 찾도록합니다. (실제 질문은 여기에 있습니다 : SOAP 클라이언트가 구현할 수있을만큼 WCF 보안이 간단합니까?)

4) 저는 웹 서비스 보안 놈이라는 것을 알아 내기 전에 고객의 돈으로 자메이카로 이동하고 자메이카로 이동합니다. .

5) 뭔가 다른 ...

그래서 여기 내 최선의 선택은 무엇인가?

답변

2

예, 사용할 수있는 옵션을 제공 할 수 있습니다. 원하는 것 같습니다. basicHttpBinding.

우리는 기본 HTTP 인증를 사용하는 WCF 웹 은 BasicHttpBinding를 사용하여 서비스 및 설정 IIS있다.

따라서 비 .NET 클라이언트는 쉽게 소비 할 수 있으며 (basicHttpBinding) IIS를 통해 액세스 할 수있는 Active Directory 도메인 계정을 제공 할 수 있습니다. 웹 서비스를 통해 끊임없이주고받는 사용자 이름/비밀번호가 없으며 보안을 위해 HTTPS를 통해 실행됩니다.

현재 PHP, Java 및 .NET 클라이언트에서 사용되고 있습니다. 예, .NET 클라이언트는 여전히 이것을 FaultExceptions 트래핑과 같은 것을 쉽게 만들어주는 서비스 참조로 가져올 수 있습니다.

누구에게나 완벽한 솔루션은 아니지만 우리의 요구에 잘 맞습니다.

1

예. 일부 구성에서는 특정 공급 업체를 선호합니다.

Oracle Metro (이전의 SUN WSIT) 스택은 WS - */Oasis 표준과 관련하여 가장 진보 된 스택입니다.

관련 문제