GitHub的個人存取權杖(Personal Access Token,PAT)將可配置更為精細的存取權限,使管理員可以細微地控制PAT權限,進而控制儲存庫存取,還能以政策控制存取組織資源的權杖,並獲得權杖可見性。新的精細度PAT現在已可供GitHub.com上所有用戶、組織和企業使用。

官方提到,企業資料洩漏的第一大原因是憑證洩漏。當前GitHub雖然有許多安全措施,避免開發人員和企業遭遇這類安全問題,像是以行動應用和支援webauthn,讓開發人員更簡單地採用2FA,並且在推送時替GitHub進階安全用戶掃描機密資訊。

但是這些機制仍難以完全保護憑證,因此限制能夠存取儲存庫和資料的用戶,僅獲得工作所需的最小存取權限就顯得重要,GitHub現在的PAT只提供非常粗略的權限設定,包括授權用戶存取所有儲存庫和組織的權限,而組織擁有者也幾乎沒有任何控制和可見性,因此為了要進一步提高開發人員和組織安全層級,GitHub加入了能夠精細控制存取權限的新型PAT。

原本的PAT仍然存在並且受完全支援,只不過現在稱為典型(Classic)個人存取權杖,使用者可獲得廣泛的讀取和寫入權限,可以存取所有的儲存庫和組織,無時效性永遠存在,像是在私有儲存庫中,對儲存庫範圍的所有資料獲得永久存取權限。

而精細度PAT的權限相對更為限縮,整體權限具有50多項精細權限控制項,這些權限控制限制用戶對GitHub組織、用戶和儲存庫API的存取,例如,管理員現在可以創建一個只能讀取問題,但不能讀取儲存庫的PAT。精細度PAT有時效,而且只能存取明確被授予存取權限的儲存庫和組織,可被配置只能存取組織中的單一儲存庫。

典型PAT不受組織和企業管理員控制,但精細度PAT提供組織更多控制權,在組織配置中的精細度PAT頁籤,組織擁有者可以選擇准許開發人員存取組織中任一儲存庫,並且查看和撤銷組織中的精細度PAT。另外,管理員還可以在政策頁籤中,對精細度PAT設置組織政策。

官方鼓勵用戶在所有適用之處使用精細度PAT,因為即便精細度PAT洩漏,也能夠最大程度降低攻擊面。不過,部分功能還不能使用細度PAT,用戶現在還需要使用典型PAT存取企業外組織,這代表開源和內部資源貢獻,仍無法透過精細度PAT管理,且企業帳戶API整合,還是需要典型PAT或是oAuth應用程式。

而對於有長期自動化的需求,官方則是建議使用GitHub Actions或GitHub應用程式,GitHub應用程式提供與精細度PAT相同,具高度針對性的權限選項和管理員控制,並且與潛在離開公司和專案的個人用戶無關。目前精細度PAT僅支援REST API,未來還會提供GraphQL支援。

熱門新聞

Advertisement