Tengo un servicio .Net ejecutándose en IIS 6 y WCF para el que quiero crear dos puntos finales. Una protegida con HTTPS y autenticación básica a la que se accederá desde nuestra DMZ y un punto final sin seguridad a la que solo se podrá acceder desde la red segura interna. Un firewall y quizás filtros .Net garantizarán que no se pueda acceder al servicio no protegido fuera de la red segura.Dos puntos finales para el mismo servicio en WCF, uno seguro no
Hasta ahora no he tenido éxito obteniendo dos puntos finales trabajando con diferentes parámetros de seguridad. Una configuración Probé es:
<service name="My.Service">
<host>
<baseAddresses>
<add baseAddress="http://localhost/MyService/"/>
</baseAddresses>
</host>
<endpoint address="UnSecuredAccessToMyService.svc"
behaviorConfiguration="restBehavior"
name="UnSecureEndpoint"
binding="webHttpBinding"
bindingName="SomeBindingName"
bindingNamespace="http://mydomain/myservice"
contract="Domain.MyService.MyClass" />
<endpoint address="SecuredAccessToMyService.svc"
behaviorConfiguration="secBehavior"
name="SecuredEnpoint"
binding="webHttpBinding"
bindingConfiguration="customSecureBinding"
bindingName="SecBindingName"
bindingNamespace="http://mydomain/myservice"
contract="Domain.MyService.MyClass" />
</service>
<behaviors>
<endpointBehaviors>
<behavior name="restBehavior">
<webHttp />
</behavior>
<behavior name="secBehavior">
</behavior>
</endpointBehaviors>
</behaviors>
<bindings>
<webHttpBinding>
<binding name="customSecureBinding">
<security mode="Transport">
<transport clientCredentialType="Basic"/>
</security>
</binding>
</webHttpBinding>
</bindings>
Los archivos UnSecuredAccessToMyService.svc y SecuredAccessToMyService.svc ven como:
<%@ ServiceHost
Factory="somefactory, anotherfactory"
Service="My.Service, AnotherService"
%>
soy muy nuevo en WCF y .Net detalles adicionales por lo que realmente podría ayudar, Gracias!
no _bindingNamespace_ ¿será *** httpS ***? El URI (o ** baseaddress **) es _'https: // mydomain/myservice'_? – Kiquenet
Su espacio de nombre es un URI que califica de manera única los elementos XML de sus metadatos de enlace de servicio para que no sean ambiguos. Puede ser cualquier valor de URI, pero normalmente toma el valor de una URL para darle una legibilidad humana.El esquema http: // se usa a menudo cuando desea proporcionar algún tipo de documentación en esa ubicación. –