Я настроил базовую службу HTTP WCF, и мое приложение в IIS настроено на использование проверки подлинности Windows.
Поэтому привязки имеют следующие параметры безопасности:
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Windows" proxyCredentialType="None" />
<message clientCredentialType="Certificate"/>
</security>
Каждоеконтракт операции имеет следующий атрибут
[PrincipalPermission(SecurityAction.Demand, Authenticated = true)]
, а класс сервиса имеет следующий атрибут для обеспечения совместимости asp
[AspNetCompatibilityRequirements(RequirementsMode =
AspNetCompatibilityRequirementsMode.Allowed)]
Проверка подлинности Windows передается службе WCF правильно, так как я могуувидеть / сгенерировать WSDL.Однако, когда я вызываю операцию в моей службе WCF, я получаю следующую ошибку:
[FaultException`1: There was an error generating the XML document.]
System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg,
IMessage retMsg) +4767763
System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData,
Int32 type) +1725
XXXX.Service() +0
XXXX.Service() +329
XXXX.Service() +747
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o,
Object t,EventArgs e) +25
System.Web.UI.Control.LoadRecursive() +71
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint,
Boolean includeStagesAfterAsyncPoint) +3048
Это не первый раз, когда я вижу ошибку Произошла ошибка при создании документа XML. Я хочу знать, что может быть причиной этого?Служба отправляет данные в зашифрованном виде, и клиент не понимает их, потому что они неправильно настроены?