How to make WCF Service Use HTTPS protocolHow to enable HTTPS in WCF serviceWcf Rest Call HTTP/1.1 400 Bad Request or HTTP/1.1 404 Not FoundI am getting error 404 on run WCF services. web-services don't work on live ServerHow do I calculate someone's age in C#?How do I enumerate an enum in C#?How do I get a consistent byte representation of strings in C# without manually specifying an encoding?WCF Authentication ErrorHow to make HTTP POST web requestWhat is a NullReferenceException, and how do I fix it?Powershell: Error consuming WCF services with MTOM message encodingHttp and Https request to WCF serviceHow to solve System.ServiceModel.ServerTooBusyException in WCF?WCF - HTTPS - Transport security works but message security throws exception on application startup

What are the ramifications of this change to upcasting spells?

Alchemist potion on Undead

Gofer work in exchange for Letter of Recommendation

But though we be the children of technology

How to avoid using System.String with Rfc2898DeriveBytes in C#

Are required indicators necessary for radio buttons?

90s(?) book series about two people transported to a parallel medieval world, she joins city watch, he becomes wizard

Count the frequency of items in an array

Using は before 欲しい instead が

Is there any road between the CA State Route 120 and Sherman Pass Road (Forest Route 22S0) that crosses Yosemite/Serria/Sequoia National Park/Forest?

Earliest evidence of objects intended for future archaeologists?

Have only girls been born for a long time in this village?

Interaction between Ethereal Absolution versus Edgar Markov with Captivating Vampire

Infinite loop in CURSOR

Label on a bended arrow

Why doesn't mathematics collapse down, even though humans quite often make mistakes in their proofs?

Chord with lyrics - What does it mean if there is an empty space instead of a Chord?

Why do some academic journals requires a separate "summary" paragraph in addition to an abstract?

Story about a demon trying to make a man insane

Metal that glows when near pieces of itself

How to dismiss intrusive questions from a colleague with whom I don't work?

How do you call it when two celestial bodies come as close to each other as they will in their current orbits?

Chess software to analyze games

My two team members in a remote location don't get along with each other; how can I improve working relations?



How to make WCF Service Use HTTPS protocol


How to enable HTTPS in WCF serviceWcf Rest Call HTTP/1.1 400 Bad Request or HTTP/1.1 404 Not FoundI am getting error 404 on run WCF services. web-services don't work on live ServerHow do I calculate someone's age in C#?How do I enumerate an enum in C#?How do I get a consistent byte representation of strings in C# without manually specifying an encoding?WCF Authentication ErrorHow to make HTTP POST web requestWhat is a NullReferenceException, and how do I fix it?Powershell: Error consuming WCF services with MTOM message encodingHttp and Https request to WCF serviceHow to solve System.ServiceModel.ServerTooBusyException in WCF?WCF - HTTPS - Transport security works but message security throws exception on application startup






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








0















I have a WCF service which works as rest and soap.
I am trying to receive requests via HTTPS protocol but I can't no matter what I've tried.



I've tried to modify the web.config file according to this post:



How to enable HTTPS in WCF service



I've tried couple of other similar methods I've found on the web.
But no matter I do, I always get:
"Could not find a base address that matches scheme http for the endpoint with binding WSHttpBinding. Registered base address schemes are [https]."
error upon running the project on debug mode.



My configuration is as follows:



 <system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="SendEmailSoap" />
<binding name="SendSMSSoap" />
<binding name="KPSPublicSoap">
<security mode="Transport" />
</binding>
<binding name="KPSPublicSoap1" />
</basicHttpBinding>

<webHttpBinding>
<binding name="WebBinding">
<security mode="None">
<transport clientCredentialType="None" />
</security>
</binding>
</webHttpBinding>

<wsHttpBinding>
<binding name="WsBinding">
<security mode="None" />
</binding>
</wsHttpBinding>

</bindings>

<behaviors>
<endpointBehaviors>
<behavior name="web">
<webHttp />
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="servicebehaviors">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
<behavior name="">
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
<behavior name="integrationServiceBehaviour">
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="false" />
<serviceDebug includeExceptionDetailInFaults="false" />
<serviceCredentials>
<userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="KaporaWebService.App_Code.CustomValidator, App_Code" />
</serviceCredentials>
</behavior>

</serviceBehaviors>
</behaviors>
<services>
<service behaviorConfiguration="integrationServiceBehaviour" name="KaporaWebService.IntegrationService">
<endpoint address="/ws" binding="wsHttpBinding" bindingConfiguration="WsBinding" contract="KaporaWebService.IIntegrationService" />
<endpoint address="" behaviorConfiguration="web" binding="webHttpBinding" bindingConfiguration="WebBinding" contract="KaporaWebService.IIntegrationService" />
</service>
</services>
<protocolMapping>
<add binding="basicHttpsBinding" scheme="https" />
</protocolMapping>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="false" />
</system.serviceModel>


What do I need to do enable HTTPS on WCF?










share|improve this question
































    0















    I have a WCF service which works as rest and soap.
    I am trying to receive requests via HTTPS protocol but I can't no matter what I've tried.



    I've tried to modify the web.config file according to this post:



    How to enable HTTPS in WCF service



    I've tried couple of other similar methods I've found on the web.
    But no matter I do, I always get:
    "Could not find a base address that matches scheme http for the endpoint with binding WSHttpBinding. Registered base address schemes are [https]."
    error upon running the project on debug mode.



    My configuration is as follows:



     <system.serviceModel>
    <bindings>
    <basicHttpBinding>
    <binding name="SendEmailSoap" />
    <binding name="SendSMSSoap" />
    <binding name="KPSPublicSoap">
    <security mode="Transport" />
    </binding>
    <binding name="KPSPublicSoap1" />
    </basicHttpBinding>

    <webHttpBinding>
    <binding name="WebBinding">
    <security mode="None">
    <transport clientCredentialType="None" />
    </security>
    </binding>
    </webHttpBinding>

    <wsHttpBinding>
    <binding name="WsBinding">
    <security mode="None" />
    </binding>
    </wsHttpBinding>

    </bindings>

    <behaviors>
    <endpointBehaviors>
    <behavior name="web">
    <webHttp />
    </behavior>
    </endpointBehaviors>
    <serviceBehaviors>
    <behavior name="servicebehaviors">
    <serviceMetadata httpGetEnabled="true" />
    <serviceDebug includeExceptionDetailInFaults="false" />
    </behavior>
    <behavior name="">
    <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
    <serviceDebug includeExceptionDetailInFaults="false" />
    </behavior>
    <behavior name="integrationServiceBehaviour">
    <serviceMetadata httpGetEnabled="true" httpsGetEnabled="false" />
    <serviceDebug includeExceptionDetailInFaults="false" />
    <serviceCredentials>
    <userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="KaporaWebService.App_Code.CustomValidator, App_Code" />
    </serviceCredentials>
    </behavior>

    </serviceBehaviors>
    </behaviors>
    <services>
    <service behaviorConfiguration="integrationServiceBehaviour" name="KaporaWebService.IntegrationService">
    <endpoint address="/ws" binding="wsHttpBinding" bindingConfiguration="WsBinding" contract="KaporaWebService.IIntegrationService" />
    <endpoint address="" behaviorConfiguration="web" binding="webHttpBinding" bindingConfiguration="WebBinding" contract="KaporaWebService.IIntegrationService" />
    </service>
    </services>
    <protocolMapping>
    <add binding="basicHttpsBinding" scheme="https" />
    </protocolMapping>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="false" />
    </system.serviceModel>


    What do I need to do enable HTTPS on WCF?










    share|improve this question




























      0












      0








      0








      I have a WCF service which works as rest and soap.
      I am trying to receive requests via HTTPS protocol but I can't no matter what I've tried.



      I've tried to modify the web.config file according to this post:



      How to enable HTTPS in WCF service



      I've tried couple of other similar methods I've found on the web.
      But no matter I do, I always get:
      "Could not find a base address that matches scheme http for the endpoint with binding WSHttpBinding. Registered base address schemes are [https]."
      error upon running the project on debug mode.



      My configuration is as follows:



       <system.serviceModel>
      <bindings>
      <basicHttpBinding>
      <binding name="SendEmailSoap" />
      <binding name="SendSMSSoap" />
      <binding name="KPSPublicSoap">
      <security mode="Transport" />
      </binding>
      <binding name="KPSPublicSoap1" />
      </basicHttpBinding>

      <webHttpBinding>
      <binding name="WebBinding">
      <security mode="None">
      <transport clientCredentialType="None" />
      </security>
      </binding>
      </webHttpBinding>

      <wsHttpBinding>
      <binding name="WsBinding">
      <security mode="None" />
      </binding>
      </wsHttpBinding>

      </bindings>

      <behaviors>
      <endpointBehaviors>
      <behavior name="web">
      <webHttp />
      </behavior>
      </endpointBehaviors>
      <serviceBehaviors>
      <behavior name="servicebehaviors">
      <serviceMetadata httpGetEnabled="true" />
      <serviceDebug includeExceptionDetailInFaults="false" />
      </behavior>
      <behavior name="">
      <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
      <serviceDebug includeExceptionDetailInFaults="false" />
      </behavior>
      <behavior name="integrationServiceBehaviour">
      <serviceMetadata httpGetEnabled="true" httpsGetEnabled="false" />
      <serviceDebug includeExceptionDetailInFaults="false" />
      <serviceCredentials>
      <userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="KaporaWebService.App_Code.CustomValidator, App_Code" />
      </serviceCredentials>
      </behavior>

      </serviceBehaviors>
      </behaviors>
      <services>
      <service behaviorConfiguration="integrationServiceBehaviour" name="KaporaWebService.IntegrationService">
      <endpoint address="/ws" binding="wsHttpBinding" bindingConfiguration="WsBinding" contract="KaporaWebService.IIntegrationService" />
      <endpoint address="" behaviorConfiguration="web" binding="webHttpBinding" bindingConfiguration="WebBinding" contract="KaporaWebService.IIntegrationService" />
      </service>
      </services>
      <protocolMapping>
      <add binding="basicHttpsBinding" scheme="https" />
      </protocolMapping>
      <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="false" />
      </system.serviceModel>


      What do I need to do enable HTTPS on WCF?










      share|improve this question
















      I have a WCF service which works as rest and soap.
      I am trying to receive requests via HTTPS protocol but I can't no matter what I've tried.



      I've tried to modify the web.config file according to this post:



      How to enable HTTPS in WCF service



      I've tried couple of other similar methods I've found on the web.
      But no matter I do, I always get:
      "Could not find a base address that matches scheme http for the endpoint with binding WSHttpBinding. Registered base address schemes are [https]."
      error upon running the project on debug mode.



      My configuration is as follows:



       <system.serviceModel>
      <bindings>
      <basicHttpBinding>
      <binding name="SendEmailSoap" />
      <binding name="SendSMSSoap" />
      <binding name="KPSPublicSoap">
      <security mode="Transport" />
      </binding>
      <binding name="KPSPublicSoap1" />
      </basicHttpBinding>

      <webHttpBinding>
      <binding name="WebBinding">
      <security mode="None">
      <transport clientCredentialType="None" />
      </security>
      </binding>
      </webHttpBinding>

      <wsHttpBinding>
      <binding name="WsBinding">
      <security mode="None" />
      </binding>
      </wsHttpBinding>

      </bindings>

      <behaviors>
      <endpointBehaviors>
      <behavior name="web">
      <webHttp />
      </behavior>
      </endpointBehaviors>
      <serviceBehaviors>
      <behavior name="servicebehaviors">
      <serviceMetadata httpGetEnabled="true" />
      <serviceDebug includeExceptionDetailInFaults="false" />
      </behavior>
      <behavior name="">
      <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
      <serviceDebug includeExceptionDetailInFaults="false" />
      </behavior>
      <behavior name="integrationServiceBehaviour">
      <serviceMetadata httpGetEnabled="true" httpsGetEnabled="false" />
      <serviceDebug includeExceptionDetailInFaults="false" />
      <serviceCredentials>
      <userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="KaporaWebService.App_Code.CustomValidator, App_Code" />
      </serviceCredentials>
      </behavior>

      </serviceBehaviors>
      </behaviors>
      <services>
      <service behaviorConfiguration="integrationServiceBehaviour" name="KaporaWebService.IntegrationService">
      <endpoint address="/ws" binding="wsHttpBinding" bindingConfiguration="WsBinding" contract="KaporaWebService.IIntegrationService" />
      <endpoint address="" behaviorConfiguration="web" binding="webHttpBinding" bindingConfiguration="WebBinding" contract="KaporaWebService.IIntegrationService" />
      </service>
      </services>
      <protocolMapping>
      <add binding="basicHttpsBinding" scheme="https" />
      </protocolMapping>
      <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="false" />
      </system.serviceModel>


      What do I need to do enable HTTPS on WCF?







      c# .net web-services wcf https






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Mar 28 at 8:39







      Onur Yurdupak

















      asked Mar 27 at 14:44









      Onur YurdupakOnur Yurdupak

      112 bronze badges




      112 bronze badges

























          1 Answer
          1






          active

          oldest

          votes


















          0














          We are supposed to add additional service endpoint which uses transport layer security, and add https binding in IIS site binding module. Please see my configuration.



          <system.serviceModel>
          <services>
          <service behaviorConfiguration="mybehavior" name="WcfService1.Service1">
          <endpoint address="" binding="webHttpBinding" contract="WcfService1.IService1" behaviorConfiguration="webbev"></endpoint>
          <endpoint address="" binding="webHttpBinding" contract="WcfService1.IService1" behaviorConfiguration="webbev" bindingConfiguration="mybinding"></endpoint>
          <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange"></endpoint>
          </service>
          </services>
          <bindings>
          <webHttpBinding>
          <binding name="mybinding" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647" transferMode="Streamed" sendTimeout="00:10:00" receiveTimeout="00:10:00">
          <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" />
          <security mode="Transport">
          <transport clientCredentialType="None"></transport>
          </security>
          </binding>
          </webHttpBinding>
          </bindings>
          <behaviors>
          <serviceBehaviors>
          <behavior name="mybehavior">
          <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
          <serviceDebug includeExceptionDetailInFaults="false" />
          </behavior>
          </serviceBehaviors>
          <endpointBehaviors>
          <behavior name="webbev">
          <webHttp />
          </behavior>
          </endpointBehaviors>
          </behaviors>
          <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
          </system.serviceModel>


          Here is the simplified configuration since WCF has the new feature in net4.5



           <system.serviceModel>
          <behaviors>
          <serviceBehaviors>
          <behavior>
          <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
          <serviceDebug includeExceptionDetailInFaults="false" />
          </behavior>
          </serviceBehaviors>
          <endpointBehaviors>
          <behavior>
          <webHttp />
          </behavior>
          </endpointBehaviors>
          </behaviors>
          <bindings>
          <webHttpBinding>
          <binding name="mybinding">
          <security mode="Transport">
          <transport clientCredentialType="None"></transport>
          </security>
          </binding>
          </webHttpBinding>
          </bindings>
          <protocolMapping>
          <add binding="webHttpBinding" scheme="http"/>
          <add binding="webHttpBinding" scheme="https" bindingConfiguration="mybinding"/>
          </protocolMapping>
          <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
          </system.serviceModel>


          Then add https address and specify the certificate.
          enter image description here

          Here is an official document, wish it is useful to you.
          https://docs.microsoft.com/en-us/dotnet/framework/wcf/feature-details/how-to-configure-an-iis-hosted-wcf-service-with-ssl



          Result.
          enter image description here

          Feel free to let me know if there is anything I can help with.






          share|improve this answer
























            Your Answer






            StackExchange.ifUsing("editor", function ()
            StackExchange.using("externalEditor", function ()
            StackExchange.using("snippets", function ()
            StackExchange.snippets.init();
            );
            );
            , "code-snippets");

            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "1"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader:
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            ,
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );













            draft saved

            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55380024%2fhow-to-make-wcf-service-use-https-protocol%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0














            We are supposed to add additional service endpoint which uses transport layer security, and add https binding in IIS site binding module. Please see my configuration.



            <system.serviceModel>
            <services>
            <service behaviorConfiguration="mybehavior" name="WcfService1.Service1">
            <endpoint address="" binding="webHttpBinding" contract="WcfService1.IService1" behaviorConfiguration="webbev"></endpoint>
            <endpoint address="" binding="webHttpBinding" contract="WcfService1.IService1" behaviorConfiguration="webbev" bindingConfiguration="mybinding"></endpoint>
            <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange"></endpoint>
            </service>
            </services>
            <bindings>
            <webHttpBinding>
            <binding name="mybinding" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647" transferMode="Streamed" sendTimeout="00:10:00" receiveTimeout="00:10:00">
            <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" />
            <security mode="Transport">
            <transport clientCredentialType="None"></transport>
            </security>
            </binding>
            </webHttpBinding>
            </bindings>
            <behaviors>
            <serviceBehaviors>
            <behavior name="mybehavior">
            <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
            <serviceDebug includeExceptionDetailInFaults="false" />
            </behavior>
            </serviceBehaviors>
            <endpointBehaviors>
            <behavior name="webbev">
            <webHttp />
            </behavior>
            </endpointBehaviors>
            </behaviors>
            <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
            </system.serviceModel>


            Here is the simplified configuration since WCF has the new feature in net4.5



             <system.serviceModel>
            <behaviors>
            <serviceBehaviors>
            <behavior>
            <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
            <serviceDebug includeExceptionDetailInFaults="false" />
            </behavior>
            </serviceBehaviors>
            <endpointBehaviors>
            <behavior>
            <webHttp />
            </behavior>
            </endpointBehaviors>
            </behaviors>
            <bindings>
            <webHttpBinding>
            <binding name="mybinding">
            <security mode="Transport">
            <transport clientCredentialType="None"></transport>
            </security>
            </binding>
            </webHttpBinding>
            </bindings>
            <protocolMapping>
            <add binding="webHttpBinding" scheme="http"/>
            <add binding="webHttpBinding" scheme="https" bindingConfiguration="mybinding"/>
            </protocolMapping>
            <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
            </system.serviceModel>


            Then add https address and specify the certificate.
            enter image description here

            Here is an official document, wish it is useful to you.
            https://docs.microsoft.com/en-us/dotnet/framework/wcf/feature-details/how-to-configure-an-iis-hosted-wcf-service-with-ssl



            Result.
            enter image description here

            Feel free to let me know if there is anything I can help with.






            share|improve this answer





























              0














              We are supposed to add additional service endpoint which uses transport layer security, and add https binding in IIS site binding module. Please see my configuration.



              <system.serviceModel>
              <services>
              <service behaviorConfiguration="mybehavior" name="WcfService1.Service1">
              <endpoint address="" binding="webHttpBinding" contract="WcfService1.IService1" behaviorConfiguration="webbev"></endpoint>
              <endpoint address="" binding="webHttpBinding" contract="WcfService1.IService1" behaviorConfiguration="webbev" bindingConfiguration="mybinding"></endpoint>
              <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange"></endpoint>
              </service>
              </services>
              <bindings>
              <webHttpBinding>
              <binding name="mybinding" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647" transferMode="Streamed" sendTimeout="00:10:00" receiveTimeout="00:10:00">
              <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" />
              <security mode="Transport">
              <transport clientCredentialType="None"></transport>
              </security>
              </binding>
              </webHttpBinding>
              </bindings>
              <behaviors>
              <serviceBehaviors>
              <behavior name="mybehavior">
              <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
              <serviceDebug includeExceptionDetailInFaults="false" />
              </behavior>
              </serviceBehaviors>
              <endpointBehaviors>
              <behavior name="webbev">
              <webHttp />
              </behavior>
              </endpointBehaviors>
              </behaviors>
              <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
              </system.serviceModel>


              Here is the simplified configuration since WCF has the new feature in net4.5



               <system.serviceModel>
              <behaviors>
              <serviceBehaviors>
              <behavior>
              <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
              <serviceDebug includeExceptionDetailInFaults="false" />
              </behavior>
              </serviceBehaviors>
              <endpointBehaviors>
              <behavior>
              <webHttp />
              </behavior>
              </endpointBehaviors>
              </behaviors>
              <bindings>
              <webHttpBinding>
              <binding name="mybinding">
              <security mode="Transport">
              <transport clientCredentialType="None"></transport>
              </security>
              </binding>
              </webHttpBinding>
              </bindings>
              <protocolMapping>
              <add binding="webHttpBinding" scheme="http"/>
              <add binding="webHttpBinding" scheme="https" bindingConfiguration="mybinding"/>
              </protocolMapping>
              <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
              </system.serviceModel>


              Then add https address and specify the certificate.
              enter image description here

              Here is an official document, wish it is useful to you.
              https://docs.microsoft.com/en-us/dotnet/framework/wcf/feature-details/how-to-configure-an-iis-hosted-wcf-service-with-ssl



              Result.
              enter image description here

              Feel free to let me know if there is anything I can help with.






              share|improve this answer



























                0












                0








                0







                We are supposed to add additional service endpoint which uses transport layer security, and add https binding in IIS site binding module. Please see my configuration.



                <system.serviceModel>
                <services>
                <service behaviorConfiguration="mybehavior" name="WcfService1.Service1">
                <endpoint address="" binding="webHttpBinding" contract="WcfService1.IService1" behaviorConfiguration="webbev"></endpoint>
                <endpoint address="" binding="webHttpBinding" contract="WcfService1.IService1" behaviorConfiguration="webbev" bindingConfiguration="mybinding"></endpoint>
                <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange"></endpoint>
                </service>
                </services>
                <bindings>
                <webHttpBinding>
                <binding name="mybinding" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647" transferMode="Streamed" sendTimeout="00:10:00" receiveTimeout="00:10:00">
                <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" />
                <security mode="Transport">
                <transport clientCredentialType="None"></transport>
                </security>
                </binding>
                </webHttpBinding>
                </bindings>
                <behaviors>
                <serviceBehaviors>
                <behavior name="mybehavior">
                <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
                <serviceDebug includeExceptionDetailInFaults="false" />
                </behavior>
                </serviceBehaviors>
                <endpointBehaviors>
                <behavior name="webbev">
                <webHttp />
                </behavior>
                </endpointBehaviors>
                </behaviors>
                <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
                </system.serviceModel>


                Here is the simplified configuration since WCF has the new feature in net4.5



                 <system.serviceModel>
                <behaviors>
                <serviceBehaviors>
                <behavior>
                <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
                <serviceDebug includeExceptionDetailInFaults="false" />
                </behavior>
                </serviceBehaviors>
                <endpointBehaviors>
                <behavior>
                <webHttp />
                </behavior>
                </endpointBehaviors>
                </behaviors>
                <bindings>
                <webHttpBinding>
                <binding name="mybinding">
                <security mode="Transport">
                <transport clientCredentialType="None"></transport>
                </security>
                </binding>
                </webHttpBinding>
                </bindings>
                <protocolMapping>
                <add binding="webHttpBinding" scheme="http"/>
                <add binding="webHttpBinding" scheme="https" bindingConfiguration="mybinding"/>
                </protocolMapping>
                <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
                </system.serviceModel>


                Then add https address and specify the certificate.
                enter image description here

                Here is an official document, wish it is useful to you.
                https://docs.microsoft.com/en-us/dotnet/framework/wcf/feature-details/how-to-configure-an-iis-hosted-wcf-service-with-ssl



                Result.
                enter image description here

                Feel free to let me know if there is anything I can help with.






                share|improve this answer













                We are supposed to add additional service endpoint which uses transport layer security, and add https binding in IIS site binding module. Please see my configuration.



                <system.serviceModel>
                <services>
                <service behaviorConfiguration="mybehavior" name="WcfService1.Service1">
                <endpoint address="" binding="webHttpBinding" contract="WcfService1.IService1" behaviorConfiguration="webbev"></endpoint>
                <endpoint address="" binding="webHttpBinding" contract="WcfService1.IService1" behaviorConfiguration="webbev" bindingConfiguration="mybinding"></endpoint>
                <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange"></endpoint>
                </service>
                </services>
                <bindings>
                <webHttpBinding>
                <binding name="mybinding" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647" transferMode="Streamed" sendTimeout="00:10:00" receiveTimeout="00:10:00">
                <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" />
                <security mode="Transport">
                <transport clientCredentialType="None"></transport>
                </security>
                </binding>
                </webHttpBinding>
                </bindings>
                <behaviors>
                <serviceBehaviors>
                <behavior name="mybehavior">
                <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
                <serviceDebug includeExceptionDetailInFaults="false" />
                </behavior>
                </serviceBehaviors>
                <endpointBehaviors>
                <behavior name="webbev">
                <webHttp />
                </behavior>
                </endpointBehaviors>
                </behaviors>
                <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
                </system.serviceModel>


                Here is the simplified configuration since WCF has the new feature in net4.5



                 <system.serviceModel>
                <behaviors>
                <serviceBehaviors>
                <behavior>
                <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
                <serviceDebug includeExceptionDetailInFaults="false" />
                </behavior>
                </serviceBehaviors>
                <endpointBehaviors>
                <behavior>
                <webHttp />
                </behavior>
                </endpointBehaviors>
                </behaviors>
                <bindings>
                <webHttpBinding>
                <binding name="mybinding">
                <security mode="Transport">
                <transport clientCredentialType="None"></transport>
                </security>
                </binding>
                </webHttpBinding>
                </bindings>
                <protocolMapping>
                <add binding="webHttpBinding" scheme="http"/>
                <add binding="webHttpBinding" scheme="https" bindingConfiguration="mybinding"/>
                </protocolMapping>
                <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
                </system.serviceModel>


                Then add https address and specify the certificate.
                enter image description here

                Here is an official document, wish it is useful to you.
                https://docs.microsoft.com/en-us/dotnet/framework/wcf/feature-details/how-to-configure-an-iis-hosted-wcf-service-with-ssl



                Result.
                enter image description here

                Feel free to let me know if there is anything I can help with.







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Mar 28 at 3:07









                Abraham QianAbraham Qian

                2,0061 gold badge2 silver badges12 bronze badges




                2,0061 gold badge2 silver badges12 bronze badges





















                    Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.







                    Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.



















                    draft saved

                    draft discarded
















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid


                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.

                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55380024%2fhow-to-make-wcf-service-use-https-protocol%23new-answer', 'question_page');

                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Kamusi Yaliyomo Aina za kamusi | Muundo wa kamusi | Faida za kamusi | Dhima ya picha katika kamusi | Marejeo | Tazama pia | Viungo vya nje | UrambazajiKuhusu kamusiGo-SwahiliWiki-KamusiKamusi ya Kiswahili na Kiingerezakuihariri na kuongeza habari

                    SQL error code 1064 with creating Laravel foreign keysForeign key constraints: When to use ON UPDATE and ON DELETEDropping column with foreign key Laravel error: General error: 1025 Error on renameLaravel SQL Can't create tableLaravel Migration foreign key errorLaravel php artisan migrate:refresh giving a syntax errorSQLSTATE[42S01]: Base table or view already exists or Base table or view already exists: 1050 Tableerror in migrating laravel file to xampp serverSyntax error or access violation: 1064:syntax to use near 'unsigned not null, modelName varchar(191) not null, title varchar(191) not nLaravel cannot create new table field in mysqlLaravel 5.7:Last migration creates table but is not registered in the migration table

                    은진 송씨 목차 역사 본관 분파 인물 조선 왕실과의 인척 관계 집성촌 항렬자 인구 같이 보기 각주 둘러보기 메뉴은진 송씨세종실록 149권, 지리지 충청도 공주목 은진현