Расширение привязки конфигурации 'system.serviceModel / bindings / clearUsernameBinding' не найдено - PullRequest
1 голос
/ 27 марта 2012

Привет, я пытаюсь использовать эту статью для аутентификации моей службы wcf без SSL

http://webservices20.blogspot.in/2008/11/introducing-wcf-clearusernamebinding.html

но я получаю эту ошибку, когда пытаюсь скомпилировать:

<system.serviceModel>
<extensions>
  <bindingExtensions>
    <add name="clearUsernameBinding" type="ClearUsernameCollectionElement, ClearUsernameBinding" />
  </bindingExtensions>
</extensions>
<behaviors>
  <serviceBehaviors>
    <behavior name="ServiceBehavior">
      <serviceCredentials>
        <userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="MyValidator,App_Code"/>
      </serviceCredentials>

      <!--To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment-->
      <serviceMetadata httpsGetEnabled="true"/>
      <!--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="false"/>
    </behavior>
    <behavior name="SampleServiceBehaviour">
      <serviceMetadata httpsGetEnabled="true"/>
      <serviceDebug includeExceptionDetailInFaults="false"/>
      <serviceCredentials>
        <userNameAuthentication userNamePasswordValidationMode="Custom"
        customUserNamePasswordValidatorType="MyUserNameValidator, App_Code" />
      </serviceCredentials>
    </behavior>
  </serviceBehaviors>
</behaviors>
<services>
  <service name="Service" behaviorConfiguration="SampleServiceBehaviour">
    <endpoint address="~/QuadraService/Service.svc" binding="wsHttpBinding" contract="IService" bindingConfiguration="Binding1"/>
    <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange"/>
    <endpoint binding="clearUsernameBinding" bindingConfiguration="myClearUsernameBinding" contract="IService" />
  </service>
</services>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>
<bindings>

  <clearUsernameBinding>
    <binding name="myClearUsernameBinding"
 messageVersion="Soap12">
    </binding>
  </clearUsernameBinding>

  <wsHttpBinding>

    <binding name="Binding1">
      <!-- UsernameToken over Transport Security -->
      <security mode="TransportWithMessageCredential" >
        <message clientCredentialType="UserName"/>
      </security>
    </binding>
  </wsHttpBinding>



</bindings>

 Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately. 
Parser Error Message: Configuration binding extension 'system.serviceModel/bindings/clearUsernameBinding' could not be found. Verify that this binding extension is properly registered in system.serviceModel/extensions/bindingExtensions and that it is spelled correctly.

пожалуйста, помогите

1 Ответ

0 голосов
/ 15 февраля 2015

Похоже, вы получаете исключение «Произошла ошибка при проверке безопасности для сообщения», поскольку вы не изменили вручную файл конфигурации на клиенте.

Автор заявляет следующее в комментариях:

Что касается настольного приложения, клиенту необходимо вручную настроить clearUsernameBinding, как это сделано в примере консольного приложения.Причина в том, что dll clearUsernameBinding не является частью .Net 3.5 и должна быть развернута на стороне клиента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...