2009-03-03 19 views
7

Lütfen Azure'da WCF ile çalışmak için SSL'yi kurmak için attığınız adımları gönderin.SSL'yi Azure'da WCF ile çalışacak şekilde ayarlama adımları nelerdir?

valid certificate uploaded (using cspack) sayfamı başarılı bir şekilde sahibim ve sitenin geri kalanıyla çalışıyorum ancak ekledikten sonra, daha önce çalışmış olan WCF hizmetim çalışmayı durdurdu. (Tüm aldığım Silverlight'a geri döndü 404 hatasıdır, çok yardımcı olmuyor. Kimin daha iyi bir günlük kaydıyla geldiği oy çok fazla sorunu teşhis etmede yardımcı olabilirdi!)

Çok denedim Bu yapılandırmasına varyasyonları: Ben canlı sunucuda kullanmayı tercih ediyorum gibi uzaktan herhangi yapılandırma ile içinden ve ayıklama adım olamaz çünkü

<system.serviceModel> 
    <!--start added for SSL--> 
    <bindings> 
     <basicHttpBinding> 
     <binding name="SecureBasicHttpBinding"> 
      <security mode="Transport"> 
      <transport clientCredentialType="None" /> 
      </security> 
     </binding> 
     </basicHttpBinding> 
    </bindings> 
    <!--end added for SSL--> 
    <behaviors> 
     <!--start added for SSL--> 
     <endpointBehaviors> 
     <behavior name="DisableServiceCertificateValidation"> 
      <clientCredentials> 
      <serviceCertificate> 
       <authentication certificateValidationMode="None" 
           revocationMode="NoCheck" /> 
      </serviceCertificate> 
      </clientCredentials> 
     </behavior> 
     </endpointBehaviors> 
     <!--start added for SSL--> 
     <serviceBehaviors> 
     <behavior name="Silverheat.Cloud_WebRole.API.DataServiceBehavior"> 
      <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" /> 
      <serviceDebug includeExceptionDetailInFaults="true" /> 
      <!-- certificate checking removed --> 
     </behavior> 
     </serviceBehaviors> 
    </behaviors> 
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" /> 
    <services> 
     <service behaviorConfiguration="Silverheat.Cloud_WebRole.API.DataServiceBehavior" 
      name="Silverheat.Cloud_WebRole.API.DataService"> 
     <!--<endpoint address="" binding="basicHttpBinding" contract="Silverheat.Cloud_WebRole.API.DataService" />--> 
     <endpoint bindingConfiguration="SecureBasicHttpBinding" 
        behaviorConfiguration="DisableServiceCertificateValidation" 
        address="" binding="basicHttpBinding" 
        contract="Silverheat.Cloud_WebRole.API.DataService" /> 
     <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> 
     </service> 
    </services> 
    </system.serviceModel> 

Maalesef bu hata ayıklama ve daha fazla bilgi almak, çünkü zor debug bindings tag has problems (ancak yaşamak değil).

Yardımlarınız ve ilginiz için teşekkür ederiz!

cevap

6

Vay canına! Yaşıyor! İşe yarıyor!!

Hata ayıklamada (security exception) hala çalışmıyor, ancak bir sonraki sürüme kadar bununla yaşayacağım.

<system.serviceModel> 
    <bindings> 
     <basicHttpBinding> 
     <binding name="SecureBasicHttpBinding"> 
      <security mode="Transport"> 
      <transport clientCredentialType="None" /> 
      </security> 
     </binding> 
     </basicHttpBinding> 
    </bindings> 
    <behaviors> 
     <serviceBehaviors> 
     <behavior name="Silverheat.Cloud_WebRole.API.DataServiceBehavior"> 
      <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" /> 
      <serviceDebug includeExceptionDetailInFaults="true" /> 
     </behavior> 
     </serviceBehaviors> 
    </behaviors> 
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" /> 
    <services> 
     <service behaviorConfiguration="Silverheat.Cloud_WebRole.API.DataServiceBehavior" 
      name="Silverheat.Cloud_WebRole.API.DataService"> 
     <endpoint bindingConfiguration="SecureBasicHttpBinding" 
      address="" binding="basicHttpBinding" 
      contract="Silverheat.Cloud_WebRole.API.DataService" /> 
     <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange" /> 
     </service> 
    </services> 
    </system.serviceModel> 

(Ben onun zaten yapılandırılmış sonra meta veri ihtiyacı neden geldiğimden anlamıyorum rağmen nihayet geri, işe yapımı "mexHttpsBinding" olduğunu düşünüyorum: Burada

çalıştı yapılandırma var tahmin ettiğim kitaplar)

WCF için bir tür oturum açmayı nasıl etkinleştireceğimi hala bilmek isterdim, ancak bu harika siteyi biraz daha gözden geçireceğim ve eminim bir cevap bulacağım.

İlgili konular