Sí, necesitará un archivo clientaccesspolicy.xml en la RAÍZ de su dominio de servicio (webservices.mydomain.net).
De forma predeterminada, Silverlight admite llamadas a servicios web en el mismo dominio o sitio de origen. El mismo dominio significa que las llamadas deben usar el mismo subdominio, protocolo y puerto. Esto es por razones de seguridad y evita la falsificación entre dominios.
Aquí es un ejemplo de archivo:
<?xml version="1.0" encoding="utf-8" ?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="*">
<domain uri="http://intranet.mydomain.net"/>
</allow-from>
<grant-to>
<resource path="/" include-subpaths="true"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
Esto permitiría solicitudes sólo de intranet.mydomain.net.
Editar
Se ha preguntado: ¿Cómo funcionaría si tengo dos servicios WCF? /ServiceA/a.svc y /ServiceB/b.svc y quiero que ServiceA to esté abierto a cualquier persona, en cualquier lugar, y ServiceB solo funcione desde mi intranet?
Su archivo de política se vería así:
<?xml version="1.0" encoding="utf-8" ?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="*">
<domain uri="http://*"/>
</allow-from>
<grant-to>
<resource path="/ServiceA/" include-subpaths="true"/>
</grant-to>
</policy>
<policy>
<allow-from http-request-headers="*">
<domain uri="http://intranet.mydomain.net"/>
</allow-from>
<grant-to>
<resource path="/ServiceB/" include-subpaths="true"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
¿Cómo funcionaría si tengo dos servicios WCF? '/ ServiceA/a.svc' y'/ServiceB/b.svc' y quiero que ServiceA to esté abierto a cualquiera, en cualquier lugar, y ServiceB solo funcione desde mi intranet? ¿Es eso posible desde el archivo crossdomain? – Nate
He editado mi respuesta. – DaveB
¿Funcionaría esto en Safari? Parece que Safari no admite cross-end xml-s de forma predeterminada. Por supuesto, podría no importar ... – Gyuri