2010-06-30 5 views
2

wsHttpBinding을 사용하고 인증서로 인증하는 WCF 서비스가 있습니다.여러 컴퓨터에서 인증서 인증을 사용하는 WCF wsHttpBinding

이 서비스는 여러 대의 컴퓨터에서 실행되며 방화벽은 요청을 다른 서버로 라우팅합니다.

문제는 때 클라이언트 공개 프록시 방화벽 루트 하나 개의 서버로하고 다음 통화 나 클라이언트에서 예외가 다른 서버에 요청 작동합니다

을 보안되지 않은 또는 잘못 을 확보 다른 파티에서 오류가 수신되었습니다. 결함 코드 및 세부 사항은 내부 FaultException 을 참조하십시오. 내부 예외

다음 메시지가 처리 될 수없는

. 액션 'http://www.site.com/api/contract/IService/DoAction' 가 잘못 또는 메시지 잘못된 포함되어 있거나 토큰 보안 컨텍스트 만료 또는 있기 때문에 바인딩 사이에 불일치가 있기 때문에 이것은 가능성이 높습니다. 서비스가 비활성으로 인해 채널을 중단 한 경우 보안 컨텍스트 토큰은 입니다. 서비스가 유휴 시간을 중지하지 못하도록하려면 세션이 중간에 증가합니다. 서비스의 수신 시간 초과가 끝 지점을 바인딩합니다.

해결책이 있습니까?

+0

답변 : 이 솔루션을 찾을 수 - 사용 : establishSecurityContext = "거짓" – Maxim

답변

1

사용 : establishSecurityContext = "false"를

<security mode="Message">    
    <message clientCredentialType="Certificate" negotiateServiceCredential="false" 
     algorithmSuite="Default" establishSecurityContext="false" /> 
    </security> 
관련 문제