Google NaClはC++なので、何とかファイルシステムにアクセスできますか?ゲームやデスクトップアプリケーションを作成する場合、これはかなり必要です。Google NaClでファイルシステムにアクセスできますか?
答えて
はい、このアクセスは安全と思われ、サンドボックスファイルシステムにのみアクセスできます。明らかに、あなたはmmap
コールを行うこともできるでしょう。何がうまくいかないでしょうか? :-)
追加のディスククォータは、ダウンロード時に「承認」する必要がある「アプリケーション特権」です。 0から無制限の範囲で指定できます。
ActiveXの言及は気を散らしています、私はそれを編集しました。ポイントは、私は "サンドボックス"の生システムサービスはしばしば悪いと考えています... VMの場合でもセキュリティ上の問題があり、クラウドホストが異なる作者によって複数のサービスを実行している場合、私はこのようなものがクライアントシステム上で実行されるときに完全で*安全であることができるかどうか質問します...それはどちらか一方のものです。ブラウジングの目的で "nativeness"を達成することは、すべての妥協点です。ここでは素晴らしいデザインはありません。 – HostileFork
あなたの答えとコメントは、事実ではなく、不快感を感じるFUDです。 "他の人が間違っている、彼らはおそらくあまりにも"生産的ではありませんでした。私はあなたが実装を掘り下げ、セキュリティ研究者がNaClを使って行ったことを見て、そのためのCVEを調べることをお勧めします。 NaClはChromeのバグバウンティプログラムでさえありますが、あなたが欠陥を見つけたらあなたは支払いを受けるでしょう。 @ colt-mcanlisの答えはここでははるかに役立ちます。 –
@JFバステリアいいえ、間違っています。これは、本質的に安全で抽象的であるほど複雑なものについての観察です。たぶんあなたはそれが私がJavaScriptとダウンロードとスパイウェアのギガバイトなしでWeb上の記事を読むことができないpeachyだと思うでしょう。そして、あなたが "window.open()"にこだわったときに問題のない人物かもしれません。*彼らはその権利を得ることさえできません。私は同じ人々にmmapを与えるのは良い考えではないと思う。なぜなら、あなたはそれをどのようにして実装しているのだろう?そしてあなたはそれをどう確保しているのだろう?思考の問題 - 私ではない – HostileFork
セキュリティ上の制約のため、NaClではディスク上の任意のフォルダを開くことはできません。
ただし、サンドボックス化された難読化ファイルシステムにアクセスする機能はあります。
FileSystemAPIの使用例については、最新のSDKのPONGの例をご覧ください。 https://developers.google.com/native-client/beta-docs/fileIO
〜メイン
これはNaClをすべてに約あるものであることからプログラムを防止:
はまた、このページでは、ファイルシステムがどのように機能するかを理解するための良い出発点です。ディスクの独立した記憶領域にのみアクセスできます。 HTML5のlocalStorageオブジェクトによく似ています。 –
@ HansPassantあなたはHTML5のFileSystemを意味しますか? localStorageはかなり異なっています。とにかく、NaClはこの機能を提供しません。それから、私たちは他のいくつかの選択肢を待つ必要があると思います。 – Tower
@rファクタHTML5はローカルファイルシステムから読み込むことができますが、ユーザは「開く」ダイアログからファイルを選択する必要があります。書き込むには、[名前を付けて保存...]操作を完了する必要があります。 NaClがこれらのことを単独で行う能力を持たない場合、それを可能にするためにHTML5に結びつけることができます。例では、データを前後に渡しています。https://developers.google.com/native-client/sdk/examples – HostileFork