Добавить базовую аутентификацию в службу WCF, размещенную в службе Windows - PullRequest
1 голос
/ 12 сентября 2011

Как добавить базовую аутентификацию в службу WCF, размещенную в службе Windows?

Я добавил тег безопасности в свою привязку, но у меня не появляется окно аутентификации при вызове URL-адреса службы в браузере. Что я делаю не так / что мне не хватает?

<bindings>
  <basicHttpBinding>
    <binding name="MyDefaultBinding" allowCookies="true" maxReceivedMessageSize="20000000" maxBufferSize="20000000">
      <readerQuotas maxDepth="500" maxArrayLength="20000000" maxStringContentLength="20000000"/>  
    <security mode="TransportCredentialOnly">
       <transport clientCredentialType="Basic" />
   </security>
    </binding>
  </basicHttpBinding>
</bindings>

1 Ответ

4 голосов
/ 12 сентября 2011

Вы не получите это окно аутентификации, когда просто зайдете на страницу сервисного помощника. Аутентификация настроена для конечной точки службы, а не для вспомогательной страницы или WSDL (это «отдельные конечные точки»).

Попробуйте изменить конфигурацию:

<bindings>
  <customBinding>
    <binding name="securedPages">
      <textMessageEncoding messageVersion="None" />
      <httpsTransport authenticationScheme="Basic" />
    </binding>
  <customBinding>
  <basicHttpBinding>
    <binding name="MyDefaultBinding" allowCookies="true" maxReceivedMessageSize="20000000" maxBufferSize="20000000">
      <readerQuotas maxDepth="500" maxArrayLength="20000000" maxStringContentLength="20000000"/>  
      <security mode="TransportCredentialOnly">
        <transport clientCredentialType="Basic" />
      </security>
    </binding>
  </basicHttpBinding>
</bindings>
<behaviors>
  <serviceBehaviors>
    <behavior name="securedService">
      <serviceMetadata httpGetEnabled="true" httpGetBinding="customBinding" 
                       httpGetBindingConfiguration="securedPages" />
      <serviceDebug httpHelpPageEnabled="true" httpHelpPageBinding="customBinding" 
                    httpHelpPageBindingConfiguration="securedPages" />
    </behavior>
  </serviceBehaviors>
</behaviors>
<services>
  <service name="..." behaviorConfiguration="securedService">
    ...
  </service>
</services>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...