2016-11-18 53 views
0

我嘗試使用服務引用中的方法時遇到了插件問題。我有一個客戶發送參數到Web服務,那然後將這些參數來我的插件,然後我得把這些參數,並將其發送給使用網絡參考方法一個Web服務 。要訪問Web服務,我需要使用擁有最後一個Web服務的公司唱歌的證書。我使用的代碼是這樣的:無法創建從插件到Web服務的SSL/TLS安全通道

BasicHttpsBinding binding = new BasicHttpsBinding 
      { 
       Security = new BasicHttpsSecurity 
       { 
        Transport = new HttpTransportSecurity 
        { 
         ClientCredentialType = HttpClientCredentialType.Certificate 
        } 
       } 
      }; 

UploaderServiceClient client = new UploaderServiceClient(binding, new EndpointAddress(args.EndPoint)); 

client.ClientCredentials.ClientCertificate.SetCertificate(StoreLocation.LocaMachine, StoreName.My, X509FindType.FindBySerialNumber, args.SerialNum); 

client.approveTransportDocument(appC, FileDesc); 

後,我用這個代碼,我得到一個異常:

The request was aborted: Could not create SSL/TLS secure channel. 

最後一個web服務工作正常,該證書是有效的,因爲如果我使用相同的代碼在表單上工作正常。 編輯: 我加入了例外,我得到也許這將有助於:

System.ServiceModel.Security.SecurityNegotiationException:無法 建立安全通道的SSL/TLS與管理機構「排雷標準,ws.vmi。 LT」。 ---> System.Net.WebException:請求已中止:無法創建SSL/TLS安全通道。在 System.Net.HttpWebRequest.GetResponse()在 System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelRequest.WaitForReply(時間跨度 超時)內部異常堆棧跟蹤的結束--- ---

服務器堆棧跟蹤:在 System.ServiceModel.Channels.HttpChannelUtilities.ProcessGetResponseWebException(引發WebException 引發WebException,HttpWebRequest的請求,HttpAbortReason abortReason)
在 System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelRequest.WaitForReply(時間跨度 超時)在 System.ServiceModel.Channels.RequestChannel在 System.ServiceModel.Channels.ServiceChannel.Call(字符串動作, 布爾單向,ProxyOperationRuntime操作.Request(消息消息,時間跨度 超時)在 System.ServiceModel.Dispatcher.RequestChannelBinder.Request(消息 消息,時間跨度超時)在 System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage 包括methodCall,ProxyOperationRuntime操作)在 System.ServiceModel.Channels.ServiceChannelProxy.Invoke(即時聊天 消息對象[]插件, 對象[]奏,時間跨度超時))

在[0]重新排列的異常:在 System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(即時聊天 reqMsg,即時聊天retMsg)在 System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData & MSGDATA,的Int32類型)在 Eur_Iz.Ie.UploaderService。 submitTransportDocument(TransportDocument LocalTransportDocument,FileDescription ContextInformation, AdditionalContext AdditionalContext)在 Eur_Iz.Ie.UploaderServiceClient.submitTransportDocument(TransportDocument LocalTransportDocument,FileDescription ContextInformation, AdditionalContext AdditionalContext)在U:\ DPB \ PLNS \ Eur_Iz \服務 參考\ IE \參考。CS:在 Eur_Iz.ClientPlugin.DataHandling線3295(IServicePluginArgs參數)

回答

1

這可能是一些與客戶端證書或服務器證書。這可能是信任問題(客戶端或服務器上缺少CA證書)。

啓用CAPI2日誌中的事件日誌可能會給你爲什麼Could not create SSL/TLS secure channel. CAPI2日誌默認情況下禁用的答案。當您啓用它時,請嘗試再次提出請求。應該有一些錯誤事件將包含有關原因的有用信息。 CAPI2 event log

0

以下pepos幫助我發現證書根不被信任,因爲它在我的用戶信任而不是整個機器上重新註冊我的證書和根證書後出現「根不受信任」的錯誤固定,但我仍然收到「無法創建SSL/TLS安全通道」的錯誤。

相關問題