flash客戶端連接linux(debian)服務(wù)器的安全策略問題
套接字策略文件具有與 URL 策略文件相同的語(yǔ)法,只是前者還必須指定要對(duì)哪些端口授予訪問權(quán)限。如果套接字策略文件來(lái)自低于 1024 的端口號(hào),則它可以對(duì)任何端口授予訪問權(quán)限;如果策略文件來(lái)自 1024 或更高的端口,則它只能對(duì) 1024 端口和更高的端口授予訪問權(quán)限。允許的端口在 <allow-access-from> 標(biāo)記中的 to-ports 屬性中指定。單個(gè)端口號(hào)、端口范圍和通配符都是允許值。
Flash Player 首先在端口 843 上檢查是否有主策略文件。如果找到主策略文件,F(xiàn)lash Player 將檢查該文件是否含有在目標(biāo)端口上禁止套接字策略文件的元策略語(yǔ)句。如果未禁止訪問,F(xiàn)lash Player 首先在主策略文件中查找適當(dāng)?shù)?allow-access-from 語(yǔ)句。如果找不到主策略文件,F(xiàn)lash Player 將從主套接字連接所在的端口上查找套接字策略文件。
當(dāng) Flash Player 請(qǐng)求策略文件時(shí),它始終會(huì)在建立連接后傳輸以下字符串:<policy-file-request/>;服務(wù)器收到此字符串后,即會(huì)傳輸該策略文件。
程序?qū)τ诓呗晕募?qǐng)求和主連接并不會(huì)使用同一連接,因此請(qǐng)?jiān)趥鬏敳呗晕募箨P(guān)閉連接。如果不關(guān)閉連接,F(xiàn)lash Player 將關(guān)閉策略文件連接,之后重新連接以建立主連接。
如果服務(wù)器是linux系統(tǒng),那么我們?cè)?a >http://www.adobe.com/devnet/flashplayer/articles/socket_policy_files.html,下載flashpolicyd_v0.6.zip
這里有perl和python腳本,安裝python或perl后就可以使用,上面的網(wǎng)址有使用說(shuō)明:
./flashpolicyd.pl --file=../policyfile.xml --port=843(perl)
./flashpolicyd.py --file=../policyfile.xml --port=843(python)
策略文件示例:
<cross-domain-policy>
<allow-access-from domain="*" to-ports="507" />
<allow-access-from domain="*.example.com" to-ports="507,516" />
<allow-access-from domain="*.example2.com" to-ports="516-523" />
<allow-access-from domain="www.example2.com" to-ports="507,516-523" />
<allow-access-from domain="www.example3.com" to-ports="*" />
</cross-domain-policy>
注意:如果domain(域名)是ip,這里一定要寫通配符*,不能寫ip,否則無(wú)法通過安全策略;
posted on 2012-02-07 15:57 Benjamin 閱讀(1205) 評(píng)論(0) 編輯 收藏 引用 所屬分類: linux