0

次のようなwinサービス構成ファイルがあります

 <system.serviceModel>
<bindings>
  <basicHttpBinding>
    <binding name="BasicHttpBinding_webservice" closeTimeout="00:01:00"
      openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
      allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
      maxBufferSize="102400000" maxBufferPoolSize="102400000" maxReceivedMessageSize="102400000"
      messageEncoding="Mtom" textEncoding="utf-8" transferMode="Buffered"
      useDefaultWebProxy="true">
      <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="102400000"
        maxBytesPerRead="4096" maxNameTableCharCount="16384" />
      <security mode="TransportCredentialOnly">
        <transport clientCredentialType="Basic" proxyCredentialType="None"
          realm="" />
        <message clientCredentialType="UserName" algorithmSuite="Default" />
      </security>
    </binding>
  </basicHttpBinding>
</bindings>
<client>
  <endpoint address="http://systemname/ProxyService/Service.svc"
    binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_webservice"
    contract="ABC.webservice" name="BasicHttpBinding_webservice" />
</client>  

次のエラーが表示されます。指定された URI スキーム「http」は無効です。「https」が必要です。パラメータ名: via
バインディングまたはセキュリティ設定を変更する必要がありますか? ちなみに、SSL証明書は無効になっています。

4

3 に答える 3

1

セキュリティ設定でUserNameOverTransportを構成しているようです-> WCFでは、この設定を使用してパスワードがクリアテキストで送信されるため、これはHTTPSバインディングを使用してのみ許可されます。

セキュリティに関しては優れた機能ですが、開発中は少し厄介になる可能性があります。

于 2012-05-07T11:17:31.007 に答える
1

ゲオルクに同意します。セキュリティで保護されていないユーザー/パスを送信する正当な理由がある場合は、ClearUsernameBinding を介してメッセージ レベルで送信できます

于 2012-05-07T15:28:56.677 に答える
0

同じエラーが発生set as start projectして.webプロジェクトに使用されましたが、現在は正常に機能しています。

于 2012-09-18T05:36:44.160 に答える