設定ストレージ
設定ストレージは、デバイス間でCLI設定のゼロ知識暗号化同期を提供します。設定はパスキーから派生したキーで暗号化されます — サーバーは平文データを一切参照しません。
前提条件
- 二要素認証がアカウントで有効になっていること
- PRFサポート付きパスキープロバイダー: FIDO2セキュリティキー(例: YubiKey)、iCloud Keychain、Google Password Manager、1Password、またはDashlane
- ブラウザ: Chrome 133+、Edge 133+、Firefox 130+、またはSafari 17+
セットアップ
- サイドバーの設定ストレージに移動し、設定ストレージをセットアップをクリックします
- 要件チェックリストがブラウザ、2FA、セッションのステータスを確認します
- セットアップ開始をクリックします — セキュリティキーを2回タッチする必要があります:
- 1回目のタッチ: パスキーを登録
- 2回目のタッチ: PRFを介して暗号化キーを派生
- セットアップ完了 — パスキーシークレットはOSのキーリングに保存されます
セットアップ後、日常のCLI操作(push/pull)はパスキーなしで動作します。
PRFプロバイダー互換性
| プロバイダー | PRFサポート | プラットフォーム |
|---|---|---|
| YubiKey / FIDO2セキュリティキー | ✅ | Windows 11、macOS、Linux |
| iCloud Keychain | ✅ | macOS 15+、iOS 18+ |
| Google Password Manager | ✅ | Android |
| 1Password | ✅ | Android、iOS |
| Dashlane | ✅ | クロスプラットフォーム |
| Bitwarden拡張機能 | ❌ | 開発中 |
| Windows Hello | ❌ | 非対応 |
メンバー管理
設定ストレージは組織ごとにスコープされます。メンバーはWebポータルで管理されます:
- メンバーの表示: 設定ストレージ → メンバー
- メンバーの追加: 現在はCLIのみ(Web UIは計画中)
- メンバーの削除: メンバーページの削除ボタンをクリック(2FA + 再認証が必要)
安全ガードにより、最後のアクティブメンバーの削除や自分自身の削除が防止されます。
セキュリティ
- ゼロ知識: サーバーは復号できない三重暗号化データを保存します
- 分割キー: 復号にはパスキーシークレット(クライアント)とサーバーシークレット(サーバー)の両方が必要です
- ローテーショントークン: 各API呼び出しは新しいトークンを使用し、古いトークンは自動破棄されます
- IPバインディング: トークンは初回使用時にIPにバインドされます
- 即時失効: 削除されたメンバーは30秒以内にアクセスを失います
トラブルシューティング
| エラー | 原因 | 修正方法 |
|---|---|---|
| PRF not supported | 認証器にPRF拡張機能がない | YubiKey、iCloud Keychain、1Password、またはDashlaneを使用してください |
| X25519 not supported | ブラウザバージョンが古すぎる | Chrome 133+、Edge 133+、Firefox 130+、またはSafari 17+に更新してください |
| Already configured | 組織のストアが既に存在する | /account/config-storageにアクセスして管理してください |
| Config storage not configured | サーバーにblobストレージがない | 管理者に連絡してR2/RustFSを設定してください |
| Token expired | 24時間アクティビティがない | 任意の設定ストレージコマンドを実行してリフレッシュしてください |
| Cannot remove last member | ストアが永久にロックされる | 先に別のメンバーを追加してください |