Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java OpenPeak Flash应用程序XMLSocket安全问题_Java_Flash_Actionscript 3_Security - Fatal编程技术网

Java OpenPeak Flash应用程序XMLSocket安全问题

Java OpenPeak Flash应用程序XMLSocket安全问题,java,flash,actionscript-3,security,Java,Flash,Actionscript 3,Security,我们正在尝试为OpenPeak创建一个应用程序。Flash应用程序将充当另一个域上另一台计算机上Java服务器的客户端 Flash应用程序客户端通过XMLSocket进行连接。Java服务器使用ServerSocket接收请求并发送回消息 为了信任服务器,Flash客户端需要一个套接字主策略文件来告诉它服务器来自可靠域。根据Adobe上的一篇文章,连接成功后,Flash客户端会自动请求端口843上的跨域策略或套接字主策略文件 尽管如此,即使我们根据已经阅读的教程和建议来实现它,Flash客户端仍

我们正在尝试为OpenPeak创建一个应用程序。Flash应用程序将充当另一个域上另一台计算机上Java服务器的客户端

Flash应用程序客户端通过XMLSocket进行连接。Java服务器使用ServerSocket接收请求并发送回消息

为了信任服务器,Flash客户端需要一个套接字主策略文件来告诉它服务器来自可靠域。根据Adobe上的一篇文章,连接成功后,Flash客户端会自动请求端口843上的跨域策略或套接字主策略文件

尽管如此,即使我们根据已经阅读的教程和建议来实现它,Flash客户端仍然会抛出以下安全错误:

安全性错误事件 type=“securityError”气泡=false 可取消=假事件阶段=2 text=“错误#2048”

我们在测试期间尝试查看是否有对843端口的调用。没有

有趣的是,即使没有策略文件,Flash客户端仍然能够成功地将第一条数据消息发送到服务器。就在服务器试图发回回复时,整个过程会挂起大约10秒钟,然后才会显示上面的安全错误


有什么想法/建议吗?

为了让flash访问另一个域,您需要一个crossdomain.xml文件,为此您可能需要指定一个自定义URL。以下是执行此操作所需的代码:

flash.system.Security.loadPolicyFile("{Url to my crossdomain.xml file on the SSL virtual root}");
下面是一个示例文件,它对使用此文件的域禁用flash的“同源策略”保护。强烈建议限制对特定域的访问,但对于某些应用程序来说,这并不总是可能的

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="*.*" secure="false" />
</cross-domain-policy>

以确保flash实际上正在下载crossdomain.xml文件。如果需要调试rtmp或其他非http协议,则必须使用Wireshark