Настройка службы wcf для https / SSL на локальном хосте - PullRequest
0 голосов
/ 06 мая 2019

РЕДАКТИРОВАТЬ: уже исправили ... Мне нужно было только изменить свойства проекта и включить SSL.


ОРИГИНАЛЬНЫЙ ВОПРОС:

Я разрабатываю службу WCF, которая будетразмещаться на сервере IIS с SSL-сертификатом.

Мой код работает отлично, когда я загружаю его на сервер (на котором есть все сертификаты), но, поскольку я добавил безопасность в веб-конфигурацию, происходит сбой приЯ пытаюсь отладить его на своем локальном компьютере.

Я использую следующую веб-конфигурацию для службы SOAP, которой не требуется сертификат SSL, и службы REST, которая нуждается в ней:

<configuration>
...
    <bindings>
      <basicHttpBinding>
        <binding name="SOAPEndPoint" />
      </basicHttpBinding>
      <webHttpBinding>
        <binding name="SecureBinding" >
          <security mode="Transport"></security>
        </binding>
      </webHttpBinding>
    </bindings>
    <services>
      <service behaviorConfiguration="ServiceBehavior" name="xxx.WS">
        <endpoint address="SOAP" binding="basicHttpBinding" name="SOAPEndPoint" contract="xxx.ISerSoap" />
        <endpoint address="api" binding="webHttpBinding" name="RESTEndPoint" contract="xxx.ISerRest" behaviorConfiguration="RestBehavior" bindingConfiguration="SecureBinding"/>
        <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange" />
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior name="ServiceBehavior">
          <serviceMetadata httpsGetEnabled="true" httpGetEnabled="true"/>
          <serviceDebug includeExceptionDetailInFaults="true" />
        </behavior>
      </serviceBehaviors>
      <endpointBehaviors>
        <behavior name="RestBehavior">
          <webHttp/>
        </behavior>
      </endpointBehaviors>
    </behaviors>
    <protocolMapping>
      <add binding="basicHttpsBinding" scheme="https" />
    </protocolMapping>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
  </system.serviceModel>
  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true" />
    <directoryBrowse enabled="true" />
  </system.webServer>

</configuration>

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

Кто-то знает способ обойтибезопасность, когда я вызываю его в режиме отладки?Или простой способ добавить поддержку https на мой локальный хост?

1 Ответ

0 голосов
/ 06 мая 2019

Просто найдите, что решением было активировать "SSL Enabled = true" в окнах свойств проекта.

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