2011-10-21 9 views
6

Ho cercato domande simili su SO e Google, ma sembra che non sia possibile nascondere o disattivare la pagina di guida standard di WCF "Hai creato un servizio" quando navighi nel tuo file * .svc.Pagina di aiuto di WCF - come disabilitare o modificare l'URL visualizzato

Il problema per noi è che mostra il nostro nome server e il nome di dominio nella linea in cui si dice:

"per testare questo servizio, sarà necessario ..."

svcutil.exe http://machinename.companydomain.local/CARS.Service/ServiceCARS.svc?wsdl 

Come puoi vedere, qui mostra il nome del server e il nome del dominio della nostra azienda. Lo rileva anche se navighi sul servizio con un IP o un localhost.

Questo è un servizio di facciata esterna e non vogliamo che tali dettagli siano resi disponibili al di fuori dell'orginizzazione. Ho cercato di giocherellare con l'impostazione <dns value=localhost">, ma ciò non sembra cambiare ciò che viene visualizzato in questa pagina di "aiuto" (gli hacker).

Quindi qualche idea? Come disabilitare completamente la pagina o nascondere il nome della macchina e il nome del dominio dalla pagina?

+0

Si dovrebbe accettare la risposta se ti ha aiutato. –

risposta

14

Per disabilitare completamente la pagina: su web.config, definire il comportamento <serviceDebug/> all'interno di <serviceBehavior> con le proprietà http[s]HelpPageEnabled impostate su false.

<system.serviceModel> 
    <services> 
     <service name="MyNamespace.MyService" behaviorConfiguration="NoHelpPageBehavior"> 
     <endpoint address="" binding="basicHttpBinding" contract="MyNamespace.IMyContract" /> 
     </service> 
    </services> 
    <behaviors> 
     <serviceBehaviors> 
     <behavior name="NoHelpPageBehavior"> 
      <serviceDebug httpHelpPageEnabled="false" httpsHelpPageEnabled="false"/> 
     </behavior> 
     </serviceBehaviors> 
    </behaviors> 
    </system.serviceModel> 
+0

Proprio quello di cui avevo bisogno, grazie! – Gromer

Problemi correlati