2011-12-10 98 views
5

由於Google NaCl是C++,我能夠以某種方式訪問​​文件系統嗎?如果我要創建遊戲或桌面應用程序,這非常需要。我可以使用Google NaCl訪問文件系統嗎?

+0

從做這就是氯化鈉是所有關於預防的程序。您只能訪問磁盤的隔離存儲區域。非常類似於HTML5的localStorage對象。 –

+1

@HansPassant你的意思是HTML5的文件系統? localStorage完全不同。無論如何,所以NaCl不提供這種功能。那麼我想我們需要等待一些其他的選擇。 – Tower

+1

@rFactor HTML5顯然可以從本地文件系統讀取,但用戶必須從「打開」對話框中選擇文件。寫入必須完成「另存爲...」操作。如果NaCl沒有能力自己完成這些事情,那麼它可以綁定到HTML5來讓它這樣做。這些示例顯示他們來回傳遞數據:https://developers.google.com/native-client/sdk/examples – HostileFork

回答

1

是的,但此訪問被認爲是安全的,只能訪問沙盒文件系統。顯然你甚至可以做mmap電話。有什麼可能出錯? :-)

除此之外附帶下載任何數據文件,額外的磁盤配額是一個「應用程序的權限」你要「批准」,當你安裝的東西。它可以從0到無限。

+0

ActiveX提及令人分心,我編輯它。問題是我認爲「沙盒」原始系統服務通常做得不好......即使在虛擬機中也存在安全問題,如果你有一個雲主機運行不同作者的多項服務,他們可能會泄漏並從一方侵入另一方。我質疑這樣的事情是否可以在客戶端系統上運行時是完全*和*安全的......它是一種或另一種類型。所有這些都是爲了達到瀏覽目的的「原生性」而達成的妥協,我在這裏看不到很棒的設計。 – HostileFork

+2

你的回答和評論是直覺的FUD,而不是事實。 「其他人錯了,他們可能也是這樣」並不富有成效。我建議你深入實施,看看安全研究人員用NaCl做了什麼,通過CVE來做。 NaCl甚至在Chrome bug獎勵計劃中也是如此,如果你發現漏洞,你會得到報酬。 @ colt-mcanlis的答案在這裏更有幫助。 –

+0

@JFBastien不,錯了。這是一個關於本質上更復雜的安全和抽象的觀察。也許你認爲現在我無法在沒有JavaScript和千兆字節的下載和間諜軟件的情況下閱讀網絡上的文章是非常有趣的。也許你是那種當他們卡在「window.open()」中時沒有問題的人 - *他們甚至無法獲得正確的*。我不認爲給那些同樣的人mmap是一個好主意(因爲......你如何實現這一點,你如何保護它),並說「他們會爲你付出每個bug」,這表明它是你的思考問題 - 不是我。 – HostileFork

7

由於安全限制,NaCl不允許您打開磁盤上的任何文件夾。

它,然而,授予訪問沙盒,混淆文件系統的能力。

可以在最新的SDK檢查出PONG例如對於如何使用FileSystemAPI例子。

此外,該頁面是一個很好的起點,以瞭解文件系統是如何工作的: https://developers.google.com/native-client/beta-docs/fileIO

〜主要

相關問題