セキュリティ
ユーザーのプライバシーを尊重するように設計されています。ローカルファースト、データ収集(テレメトリ)なし。すべてのコードを確認できるように完全なオープンソースとして公開されています。
ローカルファーストの設計
デフォルトでは、キャプチャしたすべてのデータがユーザーのMac内に保存されます。スクリーンショットや録画は、ユーザー自身が制御するローカルディレクトリに保存されます。
- アプリのすべての機能を使用するにあたり、クラウドのアカウントは不要です。
- ユーザーが明示的にアップロードしない限り、マシンからデータが送信されることはありません。
- 履歴およびメタデータはローカルデータベースに保存され、どこにも同期されません。
テレメトリおよびアナリティクスなし
Snapzyは、デフォルトで利用状況データ、クラッシュレポート、または分析(アナリティクス)データを収集しません。ユーザーが何を、いつキャプチャしたか、またどのようにアプリを使用しているかを追跡することはありません。
- Google アナリティクス、Mixpanel、または同様のトラッカーは含まれていません。
- 起動時の非公式なネットワークへのアクセスはありません。
- デバイス固有の識別子を収集することはありません。
例外 — ウェブサイトでは、匿名のトラフィック分析のためにPosthogを使用しています。これはアプリ自体とは切り離されており、スクリーンショットや録画データを取得することはありません。
オープンソース
Snapzyは、BSD 3-Clauseライセンスの下で完全なオープンソースとして公開されています。コードを検査し、ご自身でビルドして、表記通りの動作を行っているかを検証できます。
- ソースコード: github.com/duongductrong/Snapzy
- Xcodeと標準のmacOS SDKを使用して、再現可能なビルドが可能です。
- コミュニティからの貢献(コントリビューション)やセキュリティ監査を歓迎します。
権限モデル
Snapzyは、その機能を提供するために必要最小限のmacOS権限のみを要求します:
- 画面収録 (Screen Recording) — すべてのキャプチャモードで必要です。録画が行われている間、macOSはメニューバーに黄色のインジケータを表示します。
- マイク (Microphone) — 任意。画面録画に音声を含める場合にのみ必要です。
- アクセシビリティ (Accessibility) — 任意。ウィンドウ検出の精度を向上させます。
「システム設定 → プライバシーとセキュリティ」から、いつでも任意の権限を取り消すことができます。
アプリサンドボックス
Snapzyは、最小限のエンタイトルメントが設定されたmacOSアプリサンドボックス内で動作します。ユーザーが明示的に許可した領域以外のファイルにはアクセスできず、また任意のネットワーク接続を行うこともできません。
- 画面収録 — サンドボックスの範囲を広げる唯一のエンタイトルメントであり、アプリが機能するために必須です。
- セキュアなファイルアクセス・ブックマーク — フルディスクアクセスを要求することなく、起動間で選択した保存先フォルダを保持するために使用されます。
ネットワークリクエスト
Snapzyが実行するネットワーク接続は以下の2種類のみです:
- Sparkleによるアップデート確認 — 新しいバージョンが利用可能かどうかを確認するための軽量なHTTPS通信。利用状況データは送信されません。
- ユーザーが開始したクラウドアップロード — ご自身のS3またはR2バケットに手動でアップロードするときのみ実行されます。サードパーティのサーバーにデータが送信されることはありません。
クラウド認証情報のセキュリティ
クラウドアップロードを設定した場合、認証情報はmacOSのキーチェーンにのみ保存されます。Snapzyがこれらをプレーンファイルに書き込んだり、iCloudに同期したりすることはありません。
- オプションのパスワード — Snapzy内に追加の保護用パスワードを設定できます。保存する際、SHA-256でハッシュ化され、平文で保存されることはありません。
- 暗号化されたエクスポート / インポート — 選択したパスフレーズで保護された暗号化アーカイブを介して、別のMacに認証情報を手動で移行できます。
コード署名と公証
公式リリース版はコード署名されていますが、まだAppleによる公証(Notarization)を受けていません。初回起動時にmacOSがアプリをブロックする場合があります。Snapzyを /Applications にドラッグした後、ターミナルで sudo xattr -rd com.apple.quarantine /Applications/Snapzy.app を実行して許可してください。ソースコードからビルドする場合、ご自身のApple Developer証明書を使用しない限り、アプリは署名されません。