Как мне добавить привязку и конечную точку, которые используют SSL для службы WCF Workflow?

#wcf #workflow-foundation #workflow-foundation-4

#wcf #рабочий процесс-foundation #workflow-foundation-4

Вопрос:

Мне необходимо защитить свою службу WCF с помощью SSL. Проблема, с которой я сталкиваюсь, заключается в том, что это служба WCF Workflow, и, похоже, я не могу переопределить привязки по умолчанию, которые она устанавливает за кулисами.

Должно быть что-то, чего мне не хватает в файле конфигурации, поскольку, что бы я ни делал, привязка всегда возвращается как: BasicHttpBinding_IService по адресу:http://myurl.com/biz/MyService.xamlx

Это должно быть:https://myurl.com/biz/MyService.xamlx.

Это разделы привязок и конечных точек:

 <bindings>
  <basicHttpBinding>
    <binding name="basicBinding">
      <security mode="Transport">
        <transport clientCredentialType="None" />
      </security>
    </binding>
  </basicHttpBinding>
</bindings>
<services>
  <service name="MyNamespace.MyService">
    <endpoint address="https://myurl.com/biz/MyService.xamlx"
              binding="basicHttpBinding"
              bindingConfiguration="basicBinding"
              contract="IService" />
  </service>
</services>
  

Спасибо за любую помощь!

Ответ №1:

Несколько вещей, которые нужно попробовать:

  • измените привязку на wsHttpBinding, и это приведет к принудительному использованию SSL.

  • измените clientCredentialType на Certificate.

  • используйте этот пример и установите для httpsGetEnabled значение true:

http://blog.adnanmasood.com/2008/07/16/https-with-basichttpbinding-note-to-self/

Комментарии:

1. Спасибо за ответ. Я пробовал эти предложения, и, к сожалению, ни одно из них не сработало. Однако я, наконец, нашел решение. Я вскоре опубликую это в качестве ответа.