この特定の問題に関してはかなりの質問があります。私は一日半かけてさまざまな提案を試みました。これまでのところ私のために働いたことはなく、私は次に何をすべきかについて迷っています。だから私は、誰かが問題を見て、私を助けてくれることを期待して、ここにある膨大な知識ベースに魅力的です。数年前のある時期に、私はこれをすべて私のために働かせました。数台のPCの前です。しかし、新しいPCに変更しなければならなかったときは、それ以降はいつでも動作させることができませんでしたが、それを回避することはできました。今私は現在の割り当てのためにこれを解決する必要があります。WCFテストクライアントがサービスの追加に失敗しました - メタデータを取得できません
ローカルマシン上でIIS(IIS Expressではなく)で実行されているSOAP WCF WebServiceがあります。
私はApp Poolを作成しました。基本設定は、パイプラインモードを統合した.NET Framework v4.0.30319です。高度な設定では、IdentityがApplicationPoolIdentityに設定されています。
は、私が(既定のWebサイトを使用していない。)のウェブサイトを作成した定義された
を私たちは、クライアントと我々が開発し、QAに使用するサービスの自己署名本命を持っています。私は、サービス証明書をhttpsバインディングに割り当てました。 Webサービスは、net.tcpを介して別のwcfサービスと通信します。
基本設定では、c:\ inetpub \ websitenameへの物理パスを定義しました。テスト設定を使用して正常に接続するには、ネットワークドメインのユーザーIDとパスワードを使用して、特定のユーザーとして接続する必要がありました。私はまだそれを回避する方法を見つけていない。
詳細設定....アプリケーションプールは、作成したアプリケーションプールに設定されています。物理パスはc:\ inetpub \ wwwroot \ websitenameです。 Enabled Protocolsをhttp、net.tcpに設定します。
私はウェブサイトを正常に参照できます。ここで
は、Webサービスのweb.configです:WCFテストクライアントにサービスを追加しようとすると、ここで
<system.serviceModel>
<client>
<endpoint address="net.tcp://10.100.13.28:8102/Acord/201307" behaviorConfiguration="NetTcpCertificatesBehavior" binding="netTcpBinding" bindingConfiguration="NetTcpCertificatesBinding" contract="AcordContract.IAcordService201307" name="AcordEndpoint">
<identity>
<certificateReference findValue="7da522dd75f3fca2687837b7b67e117a8700ec62" isChainIncluded="false" storeLocation="LocalMachine" x509FindType="FindByThumbprint" />
<!--<dns value="localhost" />-->
</identity>
</endpoint>
<endpoint address="net.tcp://qaschedapp:8002/IMS/201210" behaviorConfiguration="NetTcpCertificatesBehavior" binding="netTcpBinding" bindingConfiguration="NetTcpCertificatesBinding" contract="IdentityManagementContract.IIdentityManagementService201210" name="IMSEndpoint">
<identity>
<certificateReference findValue="7da522dd75f3fca2687837b7b67e117a8700ec62" isChainIncluded="false" storeLocation="LocalMachine" x509FindType="FindByThumbprint" />
</identity>
</endpoint>
</client>
<services>
<service name="AcordWebService.AcordWebService" behaviorConfiguration="Visible">
<endpoint address="" binding="basicHttpsBinding" contract="AcordWebService.IAcordWebService201307" bindingConfiguration="BasicHttpsBinding">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="https://10.100.13.28:51448/" />
</baseAddresses>
</host>
<!--binding for clients outside the firewall calling from C# with WCF using certs -->
<endpoint address="net.tcp://10.100.13.28:8122/AcordWebService.svc" binding="netTcpBinding" bindingConfiguration="NetTcpCertificatesBinding" name="NetTcpCertificatesEndpoint" contract="AcordWSContract.IAcordWSService201309">
<identity>
<dns value="localhost"/>
</identity>
</endpoint>
</service>
</services>
<behaviors>
<endpointBehaviors>
<behavior name="NetTcpCertificatesBehavior">
<clientCredentials>
<clientCertificate findValue="631f5a67a9a70bc78540bb809e73fd1dbd00bbeb" storeLocation="LocalMachine" storeName="My" x509FindType="FindByThumbprint" />
<serviceCertificate>
<authentication certificateValidationMode="None" />
</serviceCertificate>
</clientCredentials>
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="Visible">
<!-- To avoid disclosing metadata information, set the values below to false before deployment -->
<serviceMetadata httpGetEnabled="false" httpsGetEnabled="true" httpGetUrl=""/>
<!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="true"/>
<serviceCredentials>
<serviceCertificate findValue="7da522dd75f3fca2687837b7b67e117a8700ec62" storeLocation="LocalMachine" storeName="My" x509FindType="FindByThumbprint"/>
<clientCertificate>
<certificate findValue="631f5a67a9a70bc78540bb809e73fd1dbd00bbeb" storeLocation="LocalMachine" storeName="My" x509FindType="FindByThumbprint"/>
</clientCertificate>
</serviceCredentials>
</behavior>
</serviceBehaviors>
</behaviors>
<bindings>
<basicHttpsBinding>
<!--binding for clients within the firewall but calling the old style soap service-->
<binding name="BasicHttpsBinding" maxBufferPoolSize="2147483647" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647">
<security mode="Transport">
<transport clientCredentialType="None" />
</security>
</binding>
</basicHttpsBinding>
<netTcpBinding>
<binding name="NetTcpCertificatesBinding" maxBufferPoolSize="2147483647" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647">
<!--<readerQuotas maxDepth="32" maxStringContentLength="65535" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />-->
<!--<reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false" />-->
<security>
<transport clientCredentialType="Certificate" protectionLevel="EncryptAndSign" />
</security>
</binding>
</netTcpBinding>
</bindings>
<protocolMapping>
<add binding="wsHttpBinding" scheme="https" />
</protocolMapping>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
は、私が受けています完全なエラーです:
エラー:https://10.100.13.28:51448/AcordWebService.svcからメタデータを取得できません。アクセスするWindows(R)Communication Foundationサービスの場合は、指定したアドレスでメタデータ公開を有効にしていることを確認してください。メタデータの公開を有効にする方法については、MSDNのドキュメントhttp://go.microsoft.com/fwlink/?LinkId=65455.WS-Metadataを参照してください。ExchangeエラーURI:https://10.100.13.28:51448/AcordWebService.svcメタデータには解決できない参照が含まれています: 'https://10.100.13.28:51448/AcordWebService.svc'。権限'10 .100.13.28:51448 'でSSL/TLSセキュアチャネルの信頼関係を確立できませんでした。基になる接続が閉じられました:SSL/TLSセキュアチャネルの信頼関係を確立できませんでした。検証手順に従ってリモート証明書が無効です.HTTP GETエラーURI:https://10.100.13.28:51448/AcordWebService.svc 'https://10.100.13.28:51448/AcordWebService.svc'をダウンロード中にエラーが発生しました。基になる接続が閉じられました:SSL/TLSセキュアチャネルの信頼関係を確立できませんでした。リモート証明書は、検証手順に従って無効です。
最後に、情報のいくつかの穴を埋めるために:
私は最終的にこの問題を解決することができるよ場合は、任意およびすべてのヘルプは理解されるであろう。
ありがとうございます。ここで