自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

全面認(rèn)識(shí)Flex安全沙箱

開發(fā) 后端
你對(duì)Flex安全沙箱的概念是否了解,這里和大家分享一下,F(xiàn)lex安全沙箱包括:遠(yuǎn)程沙箱與本地沙箱。其實(shí)這個(gè)沙箱模型類似與瀏覽器中的同源策略。

本文和大家重點(diǎn)討論一下Flex安全沙箱的概念,F(xiàn)lex安全沙箱包括:遠(yuǎn)程沙箱與本地沙箱。其實(shí)這個(gè)沙箱模型類似與瀏覽器中的同源策略。在同一域內(nèi)的資源會(huì)被放到一個(gè)安全組下,這個(gè)安全組就被稱為Flex安全沙箱了。

Flex安全沙箱

Flex安全沙箱包括:遠(yuǎn)程沙箱與本地沙箱。其實(shí)這個(gè)沙箱模型類似與瀏覽器中的同源策略。在同一域內(nèi)的資源會(huì)被放到一個(gè)安全組下,這個(gè)安全組就被稱為Flex安全沙箱了。

在深入了解沙箱之前先得明確FlashPlayer的權(quán)限控制(我還是按照FlashCS3上的中文官方文檔的名詞來劃分吧):

1、管理用戶控制:

這指系統(tǒng)的最高權(quán)限用戶,win下的Administrator,linux下的root等。有兩種類型的控制:

a)、mms.cfg文件:數(shù)據(jù)加載、隱私控制、FlashPlayer更新、舊版文件支持、本地文件安全性、全屏模式等。

b)、"全局FlashPlayer信任"目錄:當(dāng)某些SWF文件被指定到這個(gè)受信任的目錄下時(shí),這些SWF文件會(huì)被分配到受信任的本地沙箱。它們可以與任何其它SWF文件進(jìn)行交互,也可以從任意位置(遠(yuǎn)程或本地)加載數(shù)據(jù)。該信任目錄的默認(rèn)路徑為:C:\windows\system32\Macromed\Flash\FlashPlayerTrust。

2、用戶控制:

相對(duì)于第1種,這里的用戶是指普通用戶。有這三種類型的控制:

a)、攝像頭與麥克風(fēng)設(shè)置:還記得ClickJacking的那個(gè)FlashDEMO么?

b)、共享對(duì)象存儲(chǔ)設(shè)置:就是那個(gè)SharedObject了。

c)、相對(duì)與"全局FlashPlayer信任"目錄,用戶權(quán)限這也有個(gè)"用戶FlashPlayer信任"目錄。默認(rèn)路徑:C:\DocumentsandSettings\JohnD\ApplicationData\Macromedia\FlashPlayer\#Security\FlashPlayerTrust。

3、Web站點(diǎn)控制(跨域策略文件):

就是家喻戶曉的crossdomain.xml文件了,現(xiàn)在的安全策略是該文件只能存放在站點(diǎn)根目錄下了,文件格式如:

  1. <?xmlversionxmlversion="1.0"?> 
  2.  
  3. <cross-domain-policy> 
  4.  
  5. <allow-access-fromdomainallow-access-fromdomain="*"/> 
  6.  
  7. </cross-domain-policy> 

隨便看個(gè)例子:http://fanfou.com/crossdomain.xml。通過該文件的配置可以提供允許的域跨域訪問本域上內(nèi)容的權(quán)限。

4、作者(開發(fā)人員)控制:

開發(fā)者可以通過編碼(在AS腳本中)指定允許的安全控制權(quán)限,如:Security.allowDomain("www.xeye.us");

當(dāng)然都支持通配符*了。這個(gè)通配符真是個(gè)瘟神,程序員可得謹(jǐn)慎使用,以免添加不必要的安全風(fēng)險(xiǎn)。

好,F(xiàn)lashPlayer的權(quán)限控制明了之后,現(xiàn)在可以來看看Flex安全沙箱了。

1、遠(yuǎn)程沙箱:

這個(gè)遠(yuǎn)程沙箱控制著遠(yuǎn)程域上,瀏覽器環(huán)境中的安全策略,比如http://xeye.us/域中的Flash文件就無法單刀直入地與http://hi.baidu.com/ycosxhack域上的Flash文件交互。同一個(gè)域(嚴(yán)格域)下的所有文件屬于一個(gè)沙箱,沙箱內(nèi)的對(duì)象是可以互相返回,而沙箱之間的對(duì)象需要交互的話,得靠上面介紹的權(quán)限控制的“Web站點(diǎn)控制(跨域策略文件)”與“作者(開發(fā)人員)控制”進(jìn)行了。

2、本地沙箱:

再來看一下Flex安全沙箱中的本地沙箱,F(xiàn)lash與Flex文件可以在我們的桌面環(huán)境下運(yùn)行。如果沒有個(gè)很好的安全策略來限制這些功能不弱的AS腳本的話,那絕對(duì)是很危險(xiǎn)的事。

它有三種類型:

a)、只能與本地文件系統(tǒng)內(nèi)容交互的本地沙箱:顧名思義,就是該Flash文件在本地運(yùn)行時(shí)是不能與網(wǎng)絡(luò)上的對(duì)象進(jìn)行通信的,而只能與本地對(duì)象進(jìn)行交互。

b)、只能與遠(yuǎn)程內(nèi)容交互的本地沙箱:還是顧名思義,此時(shí)的Flash文件要與遠(yuǎn)程域?qū)ο蠼换r(shí),需在遠(yuǎn)程域上通過策略文件或以Security.allowDomain編碼方式來設(shè)置訪問策略(同遠(yuǎn)程沙箱)。此時(shí)不能訪問本地文件。

c)、受信任的本地沙箱:完美了,上面介紹的權(quán)限控制中,管理用戶與普通用戶都有FlashPlayer信任目錄的控制權(quán)限,只要將我們的SWF文件放到受信任目錄內(nèi)運(yùn)行,那么這個(gè)Flash文件就可以與本地域和遠(yuǎn)程域通信了:)。

當(dāng)然以上這些沙箱類型,我們可以通過編碼來確定當(dāng)前運(yùn)行的Flash文件被分配到什么類型的沙箱中。還是通過Security類:Security.sandboxType,值:

Security.REMOTE(遠(yuǎn)程沙箱)

Security.LOCAL_WITH_FILE(只能與本地文件系統(tǒng)內(nèi)容交互的本地沙箱)

Security.LOCAL_WITH_NETWORK(只能與遠(yuǎn)程內(nèi)容交互的本地沙箱)

Security.LOCAL_TRUSTED(受信任的本地沙箱)

恩,F(xiàn)lash安全沙箱就是這些筆記了,寫到這還不得不提下Flash的一些其他安全問題。這些安全問題大多圍繞安全沙箱進(jìn)行。

在我們發(fā)布Flash時(shí)生成的HTML文件內(nèi),<object>與<embed>標(biāo)簽內(nèi)的幾個(gè)屬性需要明確的。

◆allowNetworking:

該參數(shù)控制Flash文件的網(wǎng)絡(luò)訪問功能。有三個(gè)值:all(所有的網(wǎng)絡(luò)API都可用)、internal(除了不能使用瀏覽器導(dǎo)航和瀏覽器交互的API外,其它的都可用)、none(所以網(wǎng)絡(luò)API都不可用)。

◆allowScriptAccess:

這是AS與JS通信的安全控制,還記得ExternalInterface的作用嗎。有三個(gè)值:never(ExternalInterface的call方法不能與HTML的JS腳本進(jìn)行通信)、sameDomain(同域內(nèi)就可以了,這是默認(rèn)值)、always(這個(gè)就允許所有域了,比較危險(xiǎn))。

◆allowFullScreen:

全屏模式的安全問題,這是一個(gè)boolean值,默認(rèn)為false,不允許Flash全屏。全屏帶來的安全問題莫非是用戶界面欺騙這樣的類型?我不是很清楚。

上面這三個(gè)屬性得區(qū)分好了啊。安全問題不僅這點(diǎn),還有比如LocalConnetion的本地通信、共享對(duì)象SharedObject的使用、E4X在AS中的使用、其它的Socket通信、一些網(wǎng)絡(luò)API,比如全局的navigateToURL、Flash與其它非Flash的外部對(duì)象的通信問題等等。這些安全問題大都圍繞安全沙箱進(jìn)行。Flash或者Flex文件可以做得很漂亮,很精彩,比如那些非常優(yōu)秀的Flash動(dòng)畫與游戲,然而一定得時(shí)刻保持警惕。 

【編輯推薦】

  1. 探秘Flex與JavaScript交互
  2. 常用FlexBuilder快捷鍵用法指導(dǎo)
  3. Flex框架Riawave的定制應(yīng)用
  4. 技術(shù)前沿 Flex2.0 從零開始實(shí)現(xiàn)文件上傳
  5. FlexBuilder開發(fā)方法及特點(diǎn)解析 

 

 

責(zé)任編輯:佚名 來源: cnzzad.com
相關(guān)推薦

2010-07-28 12:58:24

Flex DateCh

2010-08-12 15:35:44

Flex事件機(jī)制

2010-07-29 09:00:29

Flex彈出窗口

2010-07-29 15:36:23

Flex安全沙箱

2010-08-04 14:15:43

Flex應(yīng)用程序

2010-07-28 15:21:01

Flex函數(shù)

2010-07-29 15:28:47

Flex安全沙箱

2010-08-03 09:12:52

Flex安全沙箱

2010-07-29 15:44:54

Flex安全沙箱

2010-08-12 16:28:51

Flex應(yīng)用程序

2010-07-06 16:13:13

HART協(xié)議

2010-07-26 17:01:03

Perl包

2010-08-04 14:34:35

Flex編程模型

2010-07-02 14:16:42

UML

2010-07-29 17:21:26

AdobeFlex3

2010-07-07 14:43:19

UML協(xié)作圖

2010-09-28 12:54:32

HTML Docume

2010-06-23 09:14:15

Widget開發(fā)

2010-06-30 13:53:28

UML建模過程

2010-07-01 17:43:23

UML包圖
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)