sharepoint正在silverlight上引发securityException,即使clientaccesspolicy.xml已就位
经过一天的彻底探索,我在以下问题上陷入了僵局: 我正在将带有silverlight应用程序的aspx页面作为功能添加到我的sharepoint中。 该应用程序从virtuoso服务访问sparql端点,在sharepoint之外工作正常。clientaccesspolicy.xml被添加到virtuoso和sharepoint根目录中。两者都可以通过http访问:sharepoint正在silverlight上引发securityException,即使clientaccesspolicy.xml已就位,silverlight,sharepoint,clientaccesspolicy.xml,virtuoso,Silverlight,Sharepoint,Clientaccesspolicy.xml,Virtuoso,经过一天的彻底探索,我在以下问题上陷入了僵局: 我正在将带有silverlight应用程序的aspx页面作为功能添加到我的sharepoint中。 该应用程序从virtuoso服务访问sparql端点,在sharepoint之外工作正常。clientaccesspolicy.xml被添加到virtuoso和sharepoint根目录中。两者都可以通过http访问: <?xml version="1.0" encoding="utf-8"?> <access-policy>
<?xml version="1.0" encoding="utf-8"?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="*">
<domain uri="*"/>
</allow-from>
<grant-to>
<resource path="/" include-subpaths="true"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
我甚至在两个位置都添加了crossdomain.xml,因为这个问题出现在我的电脑上,并通过管理中心将这两个文件显式地添加到sharepoint路径中
我仍然收到一个安全例外
请帮我做这个
提前谢谢。又浪费了几个小时,我自己解决了 对于到达同一十字路口的任何人: 如果您确定crossdomain.xml已就位,并且您的silverlight应用程序在sharepoint之外工作,则此特定的安全异常可能不是由跨域违规引起的,而是由记录的其他url访问限制之一引起的: 正如上面所说: '当用户收到由于违反其中一个访问策略而导致的错误时,该错误可能不会指明确切原因。' 此错误可能有任何列出的原因。(我认为这是msdn的重大疏忽) 由于“跨方案访问”和“跨域访问”是不可能的,因此只会留下“跨区域访问冲突”。这意味着您的Silverlight应用程序和服务端点必须位于同一区域才能进行通信(例如,Internet或Intranet)。由于我的SPAQL端点目前托管在localhost(IE中默认为Intranet地址),并且默认情况下,我的sharepoint地址http://my.comp.name位于Internet区域中,因此引发了此错误 要消除此错误,您必须将端点托管在Internet地址上,或手动将sharepoint地址放置在Intranet区域中。 经过更多的谷歌搜索,我在Internet选项中找到了正确的配置: ->安全->本地Intranet->站点->添加:您的sharepoint地址(http://my.comp.name) 就这样,希望我能帮你保留一些持久的皱纹
小心…如果您确定这不是“跨区域访问违规”,那么您正在处理其他违规之一。你必须一个一个地检查。(非常耗时!)