2011-10-21 9 views
6

He buscado preguntas similares en SO y Google, pero parece que no es posible ocultar o deshabilitar la página de ayuda estándar de WCF "Ha creado un servicio" cuando navega a su archivo * .svc.Página de ayuda de WCF: cómo deshabilitar o cambiar la URL mostrada

El problema para nosotros es que muestra nuestro nombre del servidor y nombre de dominio en la línea donde dice:

"Para probar este servicio, usted tendrá que ..."

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

Como puede ver, aquí muestra el nombre del servidor y el nombre de dominio de nuestra compañía. Lo recoge incluso si navega hacia el servicio con un IP o localhost.

Este es un servicio externo y no queremos que esos detalles estén disponibles fuera de la orginización. Intenté jugar con la configuración <dns value=localhost">, pero eso no parece cambiar lo que se muestra en esta página de "ayuda" (los hackers).

¿Alguna idea? ¿Cómo deshabilitar la página por completo o para ocultar el nombre de la máquina y el nombre de dominio de la página?

+0

Debe aceptar la respuesta si le ayudó. –

Respuesta

14

Para deshabilitar la página por completo: en web.config, defina el comportamiento <serviceDebug/> dentro de un <serviceBehavior> con las propiedades http[s]HelpPageEnabled establecidas en 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

¡Justo lo que necesitaba, gracias! – Gromer

Cuestiones relacionadas