广告
返回顶部
首页 > 资讯 > 精选 >FlexSocket安全沙箱冲突怎么处理
  • 813
分享到

FlexSocket安全沙箱冲突怎么处理

2023-06-17 14:06:48 813人浏览 安东尼
摘要

小编给大家分享一下FlexSocket安全沙箱冲突怎么处理,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!FlexSocket安全沙箱冲突及解决方案这是FP被广为唾

小编给大家分享一下FlexSocket安全沙箱冲突怎么处理,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

FlexSocket安全沙箱冲突及解决方案

这是FP被广为唾骂的特性之一,其设计糟糕至极。Adobe貌似认为9秒时间对用户来说很短。

1,糟糕的设计可能使用户浪费9秒时间

FlexSocket连接SocketServer时,javaSocket、c++Socket,抑或其它,首先会开一个Socket连接主机的843端口请求安全策略文件,这个时间为3秒;如果此步未能成功,则看开发者是否显式调用了Security.loadPolicyFileapi,如下

Security.loadPolicyFile("xmlsocket://127.0.0.1:1843");

如有,则再次尝试从这个端口加载策略数据,又是3秒。如果此步又未能OK,则尝试从开发者定义的FlexSocket主机端口再次加载安全策略,此时会发送这样一个请求:

<policy-file-request/>

如果SocketServer没有处理这个请求,客户端将无法进一步完成FlexSocket连接。这个过程又是3秒。如果软件设计不当,客户端将浪费9秒的时间才能知道它有没有获得Server的连接许可,这张门票有点贵了。FP如能成功加载到安全策略数据,会把所用socket抛弃(即使从主机端口请求亦是如此),然后执行开发者的socket连接逻辑。

2,合理的方案,用java实现

在SocketServer端单开一个843端口,用于专门向客户端提供安全策略文件,java示例代码如下:

packagesban.socketServer;   importjava.io.BufferedInputStream;  importjava.io.BufferedReader;  importjava.io.File;  importjava.io.FileInputStream;  importjava.io.IOException;  importjava.io.InputStreamReader;  importjava.io.PrintWriter;  importjava.net.InetSocketAddress;  importjava.net.ServerSocket;  importjava.net.Socket;  importjava.net.SocketAddress;  importjava.net.URL;     publicclassSbanSocketPolicyServer{   publicSbanSocketPolicyServer(){    }    publicstaticStringreadFileAsString(Stringurl)     throwsjava.io.IOException{    byte[]buffer=newbyte[(int)newFile(url).length()];    BufferedInputStreamf=newBufferedInputStream(      newFileInputStream(url));    f.read(buffer);    f.close();    returnnewString(buffer);   }    publicstaticvoidmain(String[]args)throwsIOException{    ServerSocketserver=newServerSocket();    SocketAddressendpoint=newInetSocketAddress("127.0.0.1",843);    server.bind(endpoint);    Stringpath=SbanSocketPolicyServer.class.getResource("../../crossdomain.xml").getPath();    System.out.println(path);    Stringpolicy=readFileAsString(path);     while(true){     System.out.println("waitforclient...");     Socketsocket=server.accept();      BufferedReaderin=newBufferedReader(newInputStreamReader(       socket.getInputStream()));     PrintWriterout=newPrintWriter(socket.getOutputStream());     Strings=in.readLine();     System.out.println(s);      if(s.indexOf("policy-file-request")>-1){      out.print(policy+'\0');      out.flush();      in.close();      out.close();      System.out.println("sendedpolicycontext.");      socket.close();     }    }    }  }

而crossdomain.xml文件的示例代码为:

<cross-domain-policy> <site-controlpermitted-cross-domain-policiessite-controlpermitted-cross-domain-policies="all"/> <allow-access-fromdomainallow-access-fromdomain="*"to-ports="*"/> </cross-domain-policy>

将crossdomain.xml文件与执行文件放置一起

3,你可以借用的jar执行文件

sban把上述java导出为jar可执行文件:

SbanSocketPolicyServer.zip5.8KB

windows下,确定已安装java环境,并已设定环境变量,在命令行窗口中执行如下命令:

java-jarSbanSocketPolicyServer.jar

说明:该java程序未经优化,仅作为教程示例,不建议在商业项目中使用。

以上是“FlexSocket安全沙箱冲突怎么处理”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: FlexSocket安全沙箱冲突怎么处理

本文链接: https://www.lsjlt.com/news/290026.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • FlexSocket安全沙箱冲突怎么处理
    小编给大家分享一下FlexSocket安全沙箱冲突怎么处理,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!FlexSocket安全沙箱冲突及解决方案这是FP被广为唾...
    99+
    2023-06-17
  • Hashmap非线程安全关于hash值冲突怎么处理
    本篇内容主要讲解“Hashmap非线程安全关于hash值冲突怎么处理”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Hashmap非线程安全关于hash值冲突怎么处理”吧!hash值冲突该怎么处理...
    99+
    2023-06-30
  • linux下mysql安装路径冲突怎么处理
    这篇文章给大家分享的是有关linux下mysql安装路径冲突怎么处理的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。linux下的mysql安装路径冲突的解决办法:首先把系统里安装...
    99+
    2022-10-18
  • 怎么处理jQuery冲突问题
    这篇文章主要介绍怎么处理jQuery冲突问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!jquery是什么jquery是一个简洁而快速的JavaScript库,它具有独特的链式语法和短小清晰的多功能接口、高效灵活的...
    99+
    2023-06-14
  • Hashmap非线程安全关于hash值冲突处理
    目录前言hash值冲突该怎么处理hashmap的put方法非线程安全体现前言 总是觉得对HashMap很熟悉,但最近连续被问到几个关于它的问题,才发现它其实并不简单。这里对关于它的一...
    99+
    2022-11-13
  • MYSQL表字段名与sql关键字冲突导致无法查询的问题怎么处理
    这篇文章将为大家详细讲解有关MYSQL表字段名与sql关键字冲突导致无法查询的问题怎么处理,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 问...
    99+
    2022-10-18
  • 怎么用批处理设置IP安全策略
    这篇文章主要介绍怎么用批处理设置IP安全策略,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!以下内容只有回复后才可以浏览   ipseccmd -w REG -p "XIAOWANG" -r &qu...
    99+
    2023-06-08
  • SSL证书安全检验失败怎么处理
    SSL证书安全检验失败处理的方法:1、SSL证书安全建议失败显示之后,点击地址栏背面的证书错误按钮打开弹出窗口,单击查看证书,点确定,出现警告,点是以安装证书;2、使用URL解决此站点的安全证书是否存在问题。具体内容如下:修改配置单击“继续...
    99+
    2022-10-19
  • 怎么浅析RAID0/1安全差别及处理数据安全的应对方式
    这篇文章将为大家详细讲解有关怎么浅析RAID0/1安全差别及处理数据安全的应对方式,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。【RAID0/1分析背景】基于之前接到用户的委托,萌生想要尝试...
    99+
    2023-06-04
  • 阿里云服务器安全警告处理怎么修复
    阿里云服务器安全警告处理通常涉及到以下几个方面: 安全漏洞修补:当阿里云服务器遭到攻击时,安全漏洞是攻击者所需面临的头号难题。安全漏洞可能导致数据被窃取、身份盗用、恶意代码植入等风险。为了修补安全漏洞,阿里云将为服务器提供漏洞修复工具,...
    99+
    2023-10-26
    阿里 服务器
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作