Connections could not be acquired from the underlying database!
1,首先检测目标服务器的843端口是否提供安全策略
2,如果1没有检测到策略,则检测actionscript是否使用了Security.loadPolicyFile(xmlsocket://) 手段提供安全策略,如果还没检测到,则使用第3步检测
3,检测目标服务器目标端口是否提供安全策略
如果上述检测都不成功,则socket或xmlsocket则拒绝连接目标服务器。
这就是说,现在我们还必须为应用提供一个提供安全策略的socket服务,正好,adobe开发人员提供了这样一个小工具,本人测试过,能使用。
具体内容请看:http://www.adobe.com/devnet/flashplayer/articles/socket_policy_files.html
请使用了socket 或xmlsocket的开发者尽早更换安全策略提供方式吧,否则新版flashplay用户就该不能正常使用你的应用了。
===============================================================
flash cs3 中文帮助中的说明
连接到套接字
默认情况下,禁用对套接字和 XML 套接字连接的跨域访问。此外,默认情况下还禁止访问与低于 1024 的端口上的 SWF 文件位于同一个域的套接字连接,但可以通过提供以下任一位置中的跨域策略文件来允许访问这些端口:
与主套接字连接相同的端口
不同端口
与套接字服务器位于同一个域的 HTTP 服务器的端口 80 上
如果提供的跨域策略文件与主套接字连接位于同一端口,或者位于不同端口,则通过在跨域策略文件中使用 to-ports 属性来枚举允许的端口,如下例所示:
<?xml version="1.0"?><!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd"><!-- Policy file for xmlsocket://socks.mysite.com --><cross-domain-policy> <allow-access-from domain="*" to-ports="507" /> <allow-access-from domain="*.example.com" to-ports="507,516" /> <allow-access-from domain="*.example.org" to-ports="516-523" /> <allow-access-from domain="adobe.com" to-ports="507,516-523" /> <allow-access-from domain="192.0.34.166" to-ports="*" /> </cross-domain-policy>
要检索与主套接字连接位于相同端口中的套接字策略文件,只需调用 Socket.connect() 或 XMLSocket.connect() 方法;并且,如果指定的域与执行调用的 SWF 文件所在的域不同,Flash Player 将自动尝试从正在尝试的主连接所在的相同端口中检索策略文件。要从与主连接位于同一服务器上的不同端口检索套接字策略文件,需使用特殊的"xmlsocket"语法调用 Security.loadPolicyFile() 方法,如下所示:
Security.loadPolicyFile("xmlsocket://server.com:2525");
先调用 Security.loadPolicyFile() 方法,然后再调用 Socket.connect() 或 XMLSocket.connect() 方法。Flash Player 随后将一直等待完成策略文件请求,之后再决定是否允许主连接。
如果要实现套接字服务器,并且需要提供套接字策略文件,则应决定是使用接受主连接的同一端口提供策略文件,还是使用不同的端口来提供策略文件。无论是哪种情况,服务器均必须等待客户端的第一次传输之后再决定是发送策略文件还是建立主连接。当 Flash Player 请求策略文件时,它始终会在建立连接后传输以下字符串:
<policy-file-request/>
服务器收到此字符串后,即会传输该策略文件。程序对于策略文件请求和主连接并不会使用同一连接,因此应在传输策略文件后关闭连接。如果不关闭连接,Flash Player 将关闭策略文件连接,之后重新连接以建立主连接。
有关详细信息,请参阅套接字策略文件。
分享到:
相关推荐
修改了subconnect类 使用vs.net2005 c++
使用mina框架写的843的flash socket通讯安全策略文件 已经打包成可执行的jar文件 拿来可以直接使用
本程序为绿色mini服务程序 程序会自动打开Flash默认的843端口 自动将crossdomain.xml返回给flash客户端 您可以修改crossdomain.xml中的内容,大小不要超过10K
FLASH SOCKET安全策略服务命令行程序,程序可以指定安全策略文件,端口及超时时间,使用完成端口模型编写。
本程序为绿色mini服务程序 程序会自动打开Flash默认的843端 自动将crossdomain.xml返回给flash客户端 您可以修改crossdomain.xml中的内容,大小不要超过10K 有问题可email我
c#写的一个flash访问843端口自动发送安全策略文件的服务器
在Adobe Flash Player升级到9.0.124后,由于安全策略更改,原来Socket或XmlSocket的应用里的http方式加载安全策略的手段不能继续使用。更改如下: 1,首先检测目标服务器的843端口是否提供安全策略 2,如果1没有检测...
2.重点解决安全策略问题:将flash发布为html格式后,本地访问页面后,一般可以与服务器进行socket通信;但是部署到tomcat服务器上后无法通信,这是因为flex安全策略引起的;需要在java服务端开通843权限策略,具体看...
关于win8内核浏览器flash问题
NULL 博文链接:https://yangkd548.iteye.com/blog/653364
crossdomainer.py Flash跨域策略安全检查器
新引入的Flash安全策略要求服务器提供安全策略,以允许通过端口843连接到其服务器的服务器。此应用程序通过为Flash客户端提供策略文件来满足此要求。
flash使用socket安全沙箱问题,需要建立安全策略服务器,java完成的一个jar,建立安全策略服务器,需要servlet-api.jar
7.把NetGameFalsh文件里面的NetGame.swf打包成exe文件(主要是flash的安全策略,如果你配置了你电脑,就不需要) 8.连接服务器,用内带的用户登陆就可以了(帐户:soda,密码:soda),或者可以在数据库手动添加
flex 与 Js 通信 相互调用;用于flex 与JS 中的 方法通信,其中的crossdomain.xml 属于安全策略问题
delphi与flash(swf)二进制数据交换。delphi传递swf文件给flash控件,并显示出来,delphi2007版本,flash5.5版本,适合数据安全传输,稍加改动可以做flash网游服务器端(需要开放843端口,传递策略文件)。
Swfoto 1.0 是一款flash(swf)读取图片的容器,可以用于各种网站... 特别提醒:由于flashplayer9 升级了安全策略问题,所以需要保证所有的的文件(包括swfoto.swf 图片文件)都必须在统一域名下,不能在跨域读取图片了。
nodejs 闪存套接字策略服务器一个简单的 node.js 闪存套接字策略服务器。 这应该使用 Forever 作为守护进程运行。 这很有用,因此服务器端应用程序不需要处理策略请求。 在大多数 unix 环境中,低于 1000 的端口将...
flash客户端连接linux(debian)服务器的安全策略问题
Flash策略服务器,flash连接socket前必须先连接843端口的这台服务器,使用前先安装python环境