跳到內容

登入工作階段與密碼

設定

  1. 開啟 My account > Signed-in devices(我的帳號 > 已登入的裝置)。每一列會顯示裝置名稱,例如「Firefox on Windows」、登入時間和上次使用時間。你目前的裝置會標示 This device(這台裝置)。
  2. 在某一列按下 Sign out(登出)。那一列會消失;那台裝置下次操作時會被帶到登入頁。
  3. 或是按下 Sign out all other devices(登出所有其他裝置),只保留目前這一台。

兩種做法都需要用密碼登入,或使用有 admin 範圍的 API 金鑰。區域網路捷徑不夠。

成員與管理員: 請擁有者幫忙。

擁有者: 在 HolyArrs 執行時,於它所在的電腦上執行:

Terminal window
docker exec -i holyarrs /holyarrs reset-owner

在一行輸入名稱,下一行輸入新密碼,然後按 Ctrl+D。沒有 Docker 的話,請執行 holyarrs reset-owner。之後你應該可以用新密碼登入。

登入頁的 Forgot the password?(忘記密碼?)底下也寫了同樣的步驟。

事件 結果
7 天沒有使用 裝置被登出
登入後 30 天 裝置被登出,不論有沒有使用
你變更密碼 其他每一台裝置都被登出

裝置和 API 金鑰的上次使用時間,最多可能延遲 1 小時。

開啟 Settings > Users and roles(設定 > 使用者與角色),然後按那個人旁邊的 Devices(裝置)。在某一台裝置上按 Sign out,或按 Sign (name) out everywhere(在所有地方登出某人)。擁有者可以對任何人這樣做;管理員只能對成員。關閉某個人的帳號也會讓他在所有地方登出。

症狀: Sign out all other devices 被拒絕。 原因: 你是用 API 金鑰或區域網路捷徑進來的。 解決方式: 在瀏覽器用密碼登入,再試一次。

工作階段 API
路由 誰可以用 作用
GET /api/v1/auth/sessions 任何已登入的人 你的裝置:id、device、created_at、last_used_at、expires_at、current
DELETE /api/v1/auth/sessions 任何已登入的人 結束其他每一台裝置。回應 {"ended": n};用 API 金鑰或區域網路捷徑時回應 400
DELETE /api/v1/auth/sessions/{sid} 任何已登入的人 結束一台裝置
GET /api/v1/users/{id}/sessions 擁有者、管理員 某個人的裝置
POST /api/v1/users/{id}/sessions/end-all 擁有者、管理員 讓某個人在所有地方登出
DELETE /api/v1/users/{id}/sessions/{sid} 擁有者、管理員 結束他的其中一台裝置

id 是隨機的公開值,不能用來讓任何人登入。API 金鑰需要 admin 範圍。

HolyArrs 是免費的。如果它幫你省下了時間,歡迎在 GitHub 上給顆星、贊助專案,或請我喝杯咖啡。