docs: 規劃個人自助指令群介面規格(issue #11)
This commit is contained in:
@@ -24,6 +24,12 @@ Bear 目前所有流程都依賴「瀏覽器」:登入 `/login`、儀表板 La
|
||||
| `bear logout` | 撤銷 refresh token(`POST /revoke`) | P2 |
|
||||
| `bear status` | 顯示登入狀態與 token 剩餘效期 | P2 |
|
||||
| `bear apps list/show/create/update/rotate-secret/toggle` | App 管理(需 bear App 管理 JSON API,PAT 登入、admin 限定) | P3 |
|
||||
| `bear profile show/set` | 個人資料檢視/更新(需 bear 個人自助 JSON API) | P3 |
|
||||
| `bear password change` | 變更密碼(互動輸入,不進 shell history) | P3 |
|
||||
| `bear email change --new EMAIL` | 變更 email(雙向驗證碼流程) | P3 |
|
||||
| `bear sessions list/revoke/revoke-others` | 管理網頁 session | P3 |
|
||||
| `bear tokens list/create/revoke` | 管理 PAT(create 一次性顯示明文) | P3 |
|
||||
| `bear mfa status/setup/disable/recovery-codes` | TOTP 兩因子管理 | P3 |
|
||||
|
||||
完整指令規格(選項、行為、輸出、退出碼)見 [`docs/commands.md`](docs/commands.md)。
|
||||
|
||||
@@ -41,6 +47,7 @@ Bear 目前所有流程都依賴「瀏覽器」:登入 `/login`、儀表板 La
|
||||
| `bear logout` | ✅ 已實作(清除本機憑證;PAT 需至網頁撤銷) |
|
||||
| `bear status` | ✅ 已實作(純本機判定,顯示 PAT/環境變數模式) |
|
||||
| `bear apps` | ⏳ 待 #5 規格與 alterminal/bear#28 API 就緒後實作 |
|
||||
| `bear profile`/`password`/`email`/`sessions`/`tokens`/`mfa` | ⏳ 規格已納入 `docs/commands.md` §3.7(#11);待 alterminal/bear#35 API 就緒後實作 |
|
||||
|
||||
### 建置與執行
|
||||
|
||||
@@ -111,7 +118,7 @@ $ bear login --token <PAT>
|
||||
|------|------|
|
||||
| **P1 伺服器:Device Flow** | `device_codes` 資料表、`POST /device_authorization`、`GET/POST /device` 授權頁、token 端點 `device_code` grant、Discovery 更新(於 bear 倉庫) |
|
||||
| **P2 CLI 登入** | 本倉庫實作 `login`(Device Flow 或 `--token <PAT>`)/`whoami`/`token`/`logout`/`status`、憑證儲存 0600 |
|
||||
| **P3 進階** | `bear apps` 管理指令群(list/show/create/update/rotate-secret/toggle,依賴 bear App 管理 JSON API)、QR 顯示、系統 keyring、發行二進位 |
|
||||
| **P3 進階** | `bear apps` 管理指令群(依賴 bear App 管理 JSON API)、個人自助指令群 `profile`/`password`/`email`/`sessions`/`tokens`/`mfa`(依賴 bear 個人自助 JSON API,#11)、QR 顯示、系統 keyring、發行二進位 |
|
||||
|
||||
---
|
||||
|
||||
@@ -119,4 +126,4 @@ $ bear login --token <PAT>
|
||||
|
||||
- **語言**:Elixir(與 Bear 主專案一致),HTTP 一律使用 `Req`。
|
||||
- **發行**:`mix escript`(單檔可執行)或 `mix release` 自包含二進位(待定)。
|
||||
- **安全**:device_code 只存 SHA-256 雜湊、user_code 限流、憑證檔 0600、token 與 PAT 一律不入 log/commit(PAT 僅在建立當下顯示一次,CLI 只「使用」不「管理」)。
|
||||
- **安全**:device_code 只存 SHA-256 雜湊、user_code 限流、憑證檔 0600、token 與 PAT 一律不入 log/commit;一次性明文(`apps` 的 client_secret、`tokens create` 的 PAT、`mfa` 的 recovery codes)僅在成功當下顯示一次;密碼與驗證碼一律互動輸入、不回顧。
|
||||
|
||||
Reference in New Issue
Block a user