Social Icons

sábado, 25 de febrero de 2012

CrossDomain SecurityException accediendo a mi Servicio WCF en Azure WCF desde Silverlight

Acabo de subir una Rol Web de Servicio WCF a Azure con la idea de acceder a el desde un web part Silverlight, pero me saltó la temida y casi esperada:
System.ServiceModel.CommunicationException: An error occurred while trying to make a request to URI 'http://localhost:81/MyService.svc'. This could be due to attempting to access a service in a cross-domain way without a proper cross-domain policy in place, or a policy that is unsuitable for SOAP services. You may need to contact the owner of the service to publish a cross-domain policy file and to ensure it allows SOAP-related HTTP headers to be sent. This error may also be caused by using internal types in the web service proxy without using the InternalsVisibleToAttribute attribute. Please see the inner exception for more details. ---> System.Security.SecurityException ---> System.Security.SecurityException: Security error.
Vale, bien, pero ¿Cómo añado mi fichero crossdomain.xml o el clientaccesspolicy.xml a un “Rol Web de Azure” que acabo de enterarme de que existe?

Para mi sorpresa es muy fácil sólo tienes que añadir los XMLs al proyecto:

añadiendo crossdomain.xml and clientaccesspolicy.xml a rol web azure

Después de esto podrás depurar el código y después de que actualices el paquete en el "Hosted Service" de Azure podrás acceder sin problemas desde tu Silverlight.

Por cierto, ¿todo el tema este de la gestión de Azure está traducido al castellano?

No hay comentarios: