Wednesday, February 16, 2011
Silverlight integration and cross-domain data access
From Microsoft if you want to create something with rich UI with good graphics and such we go for Silverlight. But, there are some problems if we try to access it cross-domain. With SharePoint 2010 it has built in support for Silverlight integration and you can access cross-domain data as well. It has Silverlight host web part where we can call XSP file and the web part will take care of the rest. And another web part is Silverlight CDA[Silverlight Cross-Domain Data Access web part] that enables secure, cross-domain, integration between Silverlight and SharePoint. The another advantage with this Silverlight CDA web part is we can use this for non-Silverlight external applications as well.
Silverlight Web Part
As we discussed earlier now it is very easy to integrate the Silverlight application in SharePoint Foundation 2010 or SharePoint 2010. If your Silverlight application on same domain as the SharePoint Foundation application and add a Silverlight web part to page and give the XAP file url to it through UI [No coding anywhere so far]. If Silverlight application access the SharePoint Foundation data which is hosted on a server outside of the web application domain then you have create External Application XML.
Silverlight Cross-Domain Data Access
So, it could be a problem to pull or access data from another domain and show it up in Silverlight. So, it is a great advantage to use this web part for these kind of requirements. Because if your farm contains 2-3 web applications and all of them are using Silverlight application then the cross-domain access will come into picture. So, Silverlight CDA will solve this problem in secure way. Silverlight CDA enables administrators to control the permissions of the external applications without unduly restricting the ability of users to add Web Parts hosting these applications to Web Part pages. The application logs on to the SharePoint Foundation Web application as a distinct type of user known as an application principal. The application’s permissions are the intersection of the permissions that the administrator has granted this special user and the permissions of the real user who opened the Web page containing the Web Part that hosts the application.