デスクトップアプリガイド
secretctl デスクトップアプリは、シークレットを管理するためのグラフィカルインターフェースを提供します。ネイティブパフォーマンスで構築され、CLI と同じセキュリティを直感的なビジュアル体験で提供します。
概要
デスクトップアプリは以下のユーザー向けに設計されています:
- ビジュアルユーザー - コマンドラインより GUI を好む方
- クイックアクセス - シークレットの表示とコピーを素早く行いたい方
- チームメンバー - 時々シークレットにアクセスする必要がある方
- 監査レビュー - ビジュアルなフィルタリングとエクスポートが必要な方
機能
シークレット管理
- シークレットの作成、表示、編集、削除
- リッチなメタデータサポート(メモ、タグ、URL)
- 即座にシークレットを検索・フィルタリング
- 自動クリア付きの安全なクリップボードコピー
セキュリティ
- CLI と同じ暗号化(AES-256-GCM + Argon2id)
- 非アクティブ時の自動ロック
- ビジュアルなパスワードマスキング
- 改ざん検出可能な監査ログ
監査ログ
- ビジュアルな監査ログビューア
- アクション、ソース、日付範囲でフィルタリング
- チェーン整合性の検証
- CSV/JSON へのエクスポート
インストール
ビルド済みバイナリはまだ利用できません。現在はソースからのビルドが必要です。
前提条件
- Go 1.24+
- Node.js 18+(フロントエンドビルド用)
- Wails CLI v2
- プラットフォーム固有の依存関係(
wails doctorで確認)
# Wails CLI をインストール
go install github.com/wailsapp/wails/v2/cmd/wails@latest
# インストールを確認
wails doctor
ソースからビルド
# リポジトリをクローン
git clone https://github.com/forest6511/secretctl.git
cd secretctl/desktop
# フロントエンド依存関係をインストールしてビルド
wails build
# バイナリは desktop/build/bin/ にあります
プラットフォーム固有の注意事項
macOS: ビルドされたアプリバンドルは desktop/build/bin/secretctl-desktop.app
Windows: 実行ファイルは desktop/build/bin/secretctl-desktop.exe(WebView2 が必要)
Linux: バイナリは desktop/build/bin/secretctl-desktop(WebKit2GTK が必要)
はじめに
初回起動
- アプリを起動 - アプリケーションから secretctl を開く
- Vault を作成 - マスターパスワードを設定(最低8文字)
- シークレットを追加開始 - 「シークレットを追加」をクリックして最初のシークレットを保存
再訪ユーザー
- アプリを起動
- マスターパスワードを入力 - 既存の Vault をアンロック
- シークレットにアクセス - シークレットを閲覧、検索、または変更
インターフェース概要
サイドバー
左側のサイドバーには以下が表示されます:
- シークレット一覧 - 保存されているすべてのシークレット
- 検索バー - 名前でシークレットをフィルタリング
- アクションボタン - 更新、ロック、ナビゲーション
詳細パネル
右側のパネルには以下が表示されます:
- シークレット値 - 表示/非表示トグル付き
- メタデータ - URL、タグ、メモ
- タイムスタンプ - 作成日と更新日
- アクション - コピー、編集、削除
ヘッダーバー
以下へのクイックアクセス:
- 監査ログ - アクティビティ履歴を表示
- 更新 - シークレット一覧をリロード
- ロック - Vault を保護
キーボードショートカット
パワーユーザーはショートカットで素早くナビゲートできます:
| ショートカット | アクション |
|---|---|
Cmd/Ctrl + N | 新規シークレット |
Cmd/Ctrl + F | 検索にフォーカス |
Cmd/Ctrl + C | 選択した値をコピー |
Cmd/Ctrl + S | 変更を保存 |
Cmd/Ctrl + L | Vault をロック |
Escape | 編集をキャンセル |
完全なリストはキーボードショートカットを参照してください。
共有 Vault
デスクトップアプリは CLI と同じ Vault を共有します:
- CLI で作成したシークレットはアプリに表示される
- アプリで作成したシークレットは CLI で利用可能
- 両方とも同じ暗号化とストレージを使用
Vault の場所: ~/.secretctl/
CLI との比較
| 機能 | デスクトップアプリ | CLI |
|---|---|---|
| ビジュアルインターフェース | あり | なし |
| キーボードショートカット | あり | N/A |
| バッチ操作 | なし | あり |
| スクリプト/自動化 | なし | あり |
| パスワード生成 | なし | あり |
| シークレット注入 | なし | あり (run) |
| 監査ログビューア | あり | あり |
ビジュアルアクセスにはデスクトップアプリを、自動化には CLI を使用してください。
セキュリティ考慮事項
自動ロック
Vault は15分間の非アクティブ後に自動的にロックされます。マウスまたはキーボードのアクティビティでタイマーがリセットされます。
クリップボードセキュリティ
シークレットをコピーすると:
- 値がシステムクリップボードにコピーされる
- 30秒後に自動クリア
- トースト通知でアクションを確認
画面プライバシー
- シークレット値はデフォルトで非表示
- 目のアイコンをクリックで一時的に表示
- 切り替え時に値がマスクされる
マルチフィールドシークレット
デスクトップアプリは定義済みテンプレート付きのマルチフィールドシークレットをサポートしています:
| テンプレート | 用途 | フィールド |
|---|---|---|
| Login | Web サイト認証情報 | username, password |
| Database | データベース接続 | host, port, username, password, database |
| API Key | API 認証情報 | api_key, api_secret |
| SSH Key | SSH 認証 | private_key, passphrase |
SSH キー
SSH Key テンプレートの private_key フィールドはテキストエリア入力を使用し、複数行の PEM 形式キーを簡単に貼り付けられます:
- シークレットを追加をクリック
- SSH Key テンプレートを選択
- SSH 秘密鍵をテキストエリアに貼り付け
- オプションでパスフレーズを追加
- 保存をクリック
完全なテンプレートドキュメントはフィールド名リファレンスを参照してください。
次のステップ
- キーボードショートカット - ショートカットをマスター
- 監査ログ - アクティビティログの表示とエクスポート