問題タブ [appstore-sandbox]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
macos - Mac App Store アプリは、他のアプリの .plist ファイルを読み取ることができますか?
Mac App Store で入手可能な Mac アプリが (組み込み) アプリの .plist ファイルを読み取ることは許可されていますか? それとも完全にサンドボックス化する必要がありますか? (スクリプト ブリッジは機能を提供しません)?
macos - Mac OS X:ファインダー+アプリサンドボックスでファイルを開く
正常に動作するファインダーウィンドウを開こうとしましたが、これを実行するたびに1秒の遅延が発生し、エラーがログに記録されます。
ログが表示されます:
__CFPasteboardIssueSandboxExtensionForPath:[/ Users / TheUser /Downloads/]のエラー
これは正常ですか?エンタイトルメントを有効にし、ダウンロードフォルダへのアクセスを許可しました。
python - Lionの新しいセキュリティモデルはPythonなどにどのように影響しますか?
OSXLionの新しいセキュリティモデルが将来にどのように影響するか知りたいです。具体的には、資格とサンドボックスについて質問しています。
これは、これらが良いアイデアであるかどうかの問題ではありません。むしろ、これは将来何が起こるかについての最良の推測の問題です。
Pythonのようなものに興味があります。私の会社は、Webベースのソフトウェアを使用せずに緊急事態用の小さなPythonアプリを作成しています。これには、ファイルシステムの読み取りと書き込みが含まれます。
私たちのアプリには資格がありません。つまり、Pythonコードであり、Cocoaラッピングを行わないためです。すべてのアプリをサンドボックス化してその資格を一覧表示する必要があるというMacAppStoreの要件が有効になると、Appleはオペレーティングシステムのアップデートを公開し、「これが今後のセキュリティの方法であり、アプリケーションはセキュリティモデルを満たしていません。安全ではないため、実行されません。」
私はこれについて複雑な感情を持っています。一方で、消費者のマシンをより安全にするのに最適だと思います。不正なコードが少なくなり、すべてが腐敗します。一方で、それは開発を多くの開発者にとって生き地獄にするだろう、メチンク。
また、同じアップデートがLeopardまたはSnow Leopardのいずれかでリリースされる場合、そのようなアップデートがLionにリリースされるのではないかと思います。現在のOSから2世代遅れているので、私の考えはLeopardではありません。Snow Leopardはすべて、Appleが古いOSをサポートしたい期間に依存します。
だから今、私はApple開発者にこのトピックについて彼らの考えを話し、おそらく以前はなかった考えを生み出すためにそれを開いた。
macos - サンドボックスを有効にせずに Mac アプリを提出できますか?
提出された Mac アプリはサンドボックスを有効にする必要があると聞きました。を使用したいのですがNSRunningApplication.terminate
、サンドボックスでは機能しません。
xcode - Mac サンドボックスと XCode 3.x
XCode 3.x を使用してサンドボックス準拠のコンパイル アプリにする方法はありますか?
これを行う方法に関する記事やチュートリアルはありますか?
私は Mac アプリケーションの開発者でありIBPlugins
、XCode 4.x でサポートされていない (私の知る限り) 2 つをアプリが使用しているため、XCode 3 にこだわっています。サンドボックス アプリは、2011 年 11 月から Mac AppStore での公開が義務付けられます (これに関する更新はまだありませんか?)
objective-c - IOKitプロパティの一時的な資格を設定するにはどうすればよいですか?
Macアプリにサンドボックスを使用しています。このようにIOKitにプロパティを設定する必要があります。
アプリのサンドボックス化のため、システムはそれを許可しません。アプリのサンドボックスをオフにすると、プロパティが正しく設定されます。
コンソールに表示されるエラーメッセージは次のとおりです。
deny iokit-set-properties IORequestIdle
これを適切に行うことができるように、一時的な資格を設定する方法はありますか?もしそうなら、どうすればそうすることができますか?
macos - サンドボックス環境で他のアプリのメニュー項目をアクティブ化するためのCGEventPostToPSN()の代替手段はありますか?
このアプリを使用して、アプリ内から他のアプリのメニュー項目(Print cmd + pなど)をアクティブ化する必要があります。現在、CGEventPostToPSN()を使用してジョブを実行しており、正常に機能しますが、サンドボックスをアクティブにすると、機能しなくなります。
私の質問は、サンドボックスを有効にする必要があるときに何ができるかということです。Accessibility APIについて多くのことを聞きましたが、他のアプリのメニュー項目をアクティブ化する方法を見つけることができませんでした。この問題についての回答に感謝します。
ファビアン
macos - OSXのユーザーライブラリフォルダへのパスを取得する
ユーザーのLibraryフォルダーを宛先フォルダーとしてNSSavePanelを開く必要があります。通常、これを行うには、を入力~/Library/
し[NSSavePanel beginSheetForDirectory]
ます。
アプリケーションがサンドボックス化されていない限り、これは正常に機能します。サンドボックス化されたアプリケーションの場合、これによりNSSavePanel
、アプリケーションドキュメント「ボックス」内のフォルダにアクセスしようとします。
/Users/username/Library/
実行時にユーザーがわからないため、参照できませんusername
。では、ココアでこのパスにリンクするにはどうすればよいですか?
macos - サンドボックス環境での SQLite ベースの NSPersistentDocument
Lion の新しいサンドボックス ルールを使用して、Mac アプリを最新の状態にしようとしています。ただし、com.apple.security.files.user-selected.read-write
許可を要求しているにもかかわらず、エラーが発生します。ログを見ると、deny file-write-create /Users/thom/Desktop/Filename.blah-journal
.
これは、サンドボックス ルールを考えると理にかなっています。つまり、ユーザーが SQLite ストアの場所を選択したため、その場所への書き込みが許可されます。ただし、SQLite は実際のファイルと一緒にジャーナル ファイルを保持しており、そのジャーナル ファイルへの書き込みは禁止されています。
その場合、SQLite に支えられた NSPersistentDocument はサンドボックス環境でどのように機能するのでしょうか?
macos - OS X サンドボックスでの非インプレース保存
Mac OS X 10.7 用のサンドボックス アプリを開発しており、次のような方法でファイル保存を実装しようとしていますNSDocument
。
- ファイルの新しい内容を一時ファイルに書き換えます
- 元のファイルを一時ファイルで上書きする
私が抱えている問題は、サンドボックスがステップ 2 を拒否していることです。コンソールに次の行が表示されます。
sandboxd: XXXX deny file-write-create /Volumes/Home/sbooth/Test Files/Test
私はすでにこのファイルを読み書き用に開いており、ファイル システムの読み取り/書き込みアクセス権を有効にしています。NSDocument が特別な資格なしでこれを行うことを知っているので、見逃したものを見つけようとしています。
これが私が今やっている方法です(アプリのこの部分はC++であり、Objective-C/C++ではありません):
サンドボックスを無効にすると、コードは正しく機能します。
編集: Femi から追加情報が要求されました。C stdio を使用してファイルを開きます。
fclose
一時ファイルが作成される前に使用して閉じました。
私の資格は次のとおりです。
また、Apple がApp Sandbox Design Guideで次のように述べていることも注目に値します。
NSDocument クラス以外のテクノロジを使用してドキュメントを管理している場合は、このクラスを使用するように変換する必要があります。NSDocument クラスは Powerbox で自動的に動作します。NSDocument は、ユーザーが Finder を使用して文書を移動した場合に、サンドボックス内に文書を保持するためのサポートも提供します。