关于Silverlight的跨域访问配置问题原创
金蝶云社区-yaojunsong
yaojunsong
2人赞赏了该文章 1,693次浏览 未经作者许可,禁止转载编辑于2021年12月31日 09:25:10

详细可以参考微软的文档:

https://msdn.microsoft.com/zh-cn/library/cc645032

https://docs.microsoft.com/en-us/previous-versions/windows/silverlight/dotnet-windows-silverlight/cc645032(v=vs.95)?redirectedfrom=MSDN 


silverlight 支持系统一览表: https://www.microsoft.com/getsilverlight/get-started/install/default#sysreq 

 

跨域策略文件配置允许以下三种不同类型的通配符:


1、单独的"*"通配符

    此选项用于允许访问同一方案的所有域。 HTTP 服务将允许所有 HTTP 调用方。 HTTPS 服务将允许所有 HTTPS 调用方。


2、"https://*"文本通配符

    此选项显式允许所有 HTTP 调用方,即使该调用方是 HTTPS 服务也允许。 它几乎总是安全错误 HTTPS 服务允许 HTTP 调用,因为这将允许不受信任的代码注入到合法服务中(中间人攻击中的中间人)和通过 HTTPS 协议保护其安全的访问数据中。


3、子域通配符

    此选项在路径的第一部分使用一个通配符(例如"https://*.contoso.com"),从而允许指定的域的所有子域。 参考该例子。 将允许 https://web.contoso.com 和 https://mail.contoso.com。 请注意,不允许该通配符没有作为前缀出现(例如 https://web.*.com)的 uri 路径。

    Silverlight 策略文件允许使用跨域策略文件连接到 HTTPS 服务。当在策略中提供针对某一域元素的显式 allow-from 属性时,该域包括方案信息。上面的策略将只允许使用 HTTPS 方案从 https://contoso.com 进行的连接。

C:\inetpub\wwwroot\clientaccesspolicy.xml 

<?xml version="1.0" encoding="utf-8" ?>
<access-policy>
  <cross-domain-access>
    <policy>
      <allow-from http-request-headers="*">
        <domain uri="https://*.contoso.com" />
      </allow-from>
      <grant-to>
         <resource path="/" include-subpaths="true"/>
         <!--<socket-resource port="4502-4534" protocol="tcp" />-->
      </grant-to>
    </policy>
  </cross-domain-access>
</access-policy>



4、针对金蝶云所需的外网访问站点可以增加如下domain节点:

       https://*.cmcloud.cn

       http://*.cmcloud.cn

       https://*.kingdee.com

       http://*.kingdee.com

       https://*.ik3cloud.com

       http://*.ik3cloud.com

       https://*.yunzhijia.com

       http://*.yunzhijia.com


-------------------------

编辑于:2017-10-12