個人存取權杖
目錄
個人存取權杖 (PATs) 為 Docker CLI 驗證提供了一種比密碼更安全的替代方案。使用 PAT 可以驗證自動化系統、CI/CD 管線以及開發工具,而無需洩露您的 Docker Hub 密碼。
主要優勢
與密碼驗證相比,PAT 具有顯著的安全性優勢
- 增強安全性:您可以審查權杖的使用情況、停用可疑權杖,並防止在系統受損時導致帳號被全面接管的管理動作。
- 更好的自動化:可針對不同的整合功能發行多個權杖,每個權杖具有特定的權限,並能在不再需要時獨立撤銷。
- 支援雙重驗證 (2FA):當您啟用雙重驗證後,CLI 必須使用權杖驗證,這能在不繞過 2FA 保護的前提下,提供安全的 CLI 存取。
- 使用追蹤:監控權杖的使用時間與方式,以識別潛在的安全問題或閒置的自動化腳本。
誰應該使用個人存取權杖?
將 PAT 用於這些常見場景
- 開發工作流程:在本地開發過程中驗證 Docker CLI
- CI/CD 管線:在持續整合系統中自動化映像檔的建置與部署
- 自動化腳本:在自動部署或備份腳本中推送與拉取映像檔
- 開發工具:將 Docker Hub 存取權整合至 IDE、容器管理工具或監控系統中
- 雙重驗證:啟用 2FA 後,進行 CLI 存取的必要條件
注意若為組織層級的自動化,請考慮使用組織存取權杖,這類權杖不與個人使用者帳號綁定。
建立個人存取權杖
重要請將存取權杖視同密碼妥善保管。請將權杖儲存在憑證管理系統中,切勿將其提交至原始碼儲存庫。
若要建立個人存取權杖
- 登入 Docker Home。
- 點擊右上角的頭像,並從下拉式選單中選擇 **Account settings** (帳號設定)。
- 選擇 **Personal access tokens** (個人存取權杖)。
- 選擇 **Generate new token** (產生新權杖)。
- 設定您的權杖
- **描述 (Description):** 使用一個能說明該權杖用途的描述性名稱。
- **過期日期 (Expiration date):** 根據您的安全政策設定過期日期。
- **存取權限 (Access permissions):** 選擇 **Read** (讀取)、**Write** (寫入) 或 **Delete** (刪除)。
- 選擇 **Generate** (產生)。複製螢幕上顯示的權杖並妥善儲存。一旦離開此頁面,您將無法再次取得該權杖。
使用個人存取權杖
使用個人存取權杖登入 Docker CLI
$ docker login --username <YOUR_USERNAME>
Password: [paste your PAT here]
當系統提示輸入密碼時,請輸入您的個人存取權杖,而非 Docker Hub 密碼。
修改個人存取權杖
注意您無法編輯現有個人存取權杖的過期日期。若需要設定新的過期日期,必須建立一個新的 PAT。
您可以根據需要重新命名、啟用、停用或刪除權杖。您可以在帳號設定中管理您的權杖。
- 登入 Docker Home。
- 點擊右上角的頭像,並從下拉式選單中選擇 **Account settings** (帳號設定)。
- 選擇 **Personal access tokens** (個人存取權杖)。
- 此頁面會顯示您所有權杖的概覽,並標示該權杖是手動產生還是自動產生。您也可以查看權杖的範圍、啟用/停用狀態、建立日期、最後使用時間以及過期日期。
- 點擊權杖列最右側的動作選單,然後選擇 **Deactivate** (停用)、**Activate** (啟用)、**Edit** (編輯) 或 **Delete** (刪除) 來修改權杖。
- 編輯權杖後,請選擇 **Save token** (儲存權杖)。
自動產生的權杖
當您登入 Docker Desktop 時,系統會自動建立驗證權杖,其特性如下:
- 自動建立:在登入 Docker Desktop 時產生。
- 完整權限:包含讀取 (Read)、寫入 (Write) 和刪除 (Delete) 權限。
- 工作階段導向:在 Docker Desktop 工作階段過期時自動移除。
- 帳號限制:每個帳號最多可擁有 5 個自動產生的權杖。
- 自動清理:當建立新權杖時,舊的權杖會被刪除。
如有必要,您可以手動刪除自動產生的權杖,但當您使用 Docker Desktop 時,它們會再次被重新建立。
公平使用政策
使用個人存取權杖時,請注意過度建立權杖可能會導致存取限制或產生額外費用。Docker 保留對 PAT 使用量過大的帳號施加限制的權利,以確保資源分配公平並維持服務品質。
公平使用的最佳做法包括:
- 在類似的使用場景中重複使用權杖,而非建立大量單一用途的權杖。
- 定期刪除未使用的權杖。
- 針對組織層級的自動化,使用組織存取權杖。
- 監控權杖使用情況,以識別優化空間。