雲時代,如何保護你的企業資料安全?
大家對雲服務產品的資料安全的擔憂主要有兩個方面:
產品內部人員會不會有意或無意洩露使用者資料?
如何應對來自外部的破壞,如伺服器故障、黑客攻擊等?
作為產品的開發者和維護者,碼雲的技術人員無法避免需要有訪問伺服器的許可權,如何確保許可權不被濫用、保證平臺數據的安全呢?在這一篇,我們將針對第 1 點,介紹碼雲的內部安全治理措施。
碼雲目前包括幾個大系統:應用系統、倉庫儲存系統、運維繫統、備份系統以及基礎服務,它們各自獨立執行在一組伺服器上。
應用系統:包括 Web 訪問入口、API 介面
倉庫儲存系統:用來儲存 Git 倉庫,此係統只包含倉庫存放以及一個 RPC 服務,RPC 服務用來給應用系統提供訪問倉庫的能力,倉庫儲存系統不提供對外的網路連線。
運維繫統:負責監控應用系統和倉庫儲存系統,以及負責應用的更新和日誌的收集
備份系統:包括倉庫的備份以及企業倉庫的快照服務
基礎服務:包括資料庫、快取、佇列、郵件傳送服務等等,除郵件傳送服務外,其他服務均不提供對外的網路連線

基於這樣的架構,我們的安全治理措施主要有:
1. 嚴格限制訪問伺服器的許可權範圍
目前,碼雲內部只有 4 個人有訪問伺服器的許可權——總負責人、運維負責人、兩名資深開發工程師。
其中,倉庫儲存系統和備份系統僅總負責人和運維負責人有訪問許可權,運維繫統只允許運維負責人訪問。許可權界定清晰,且不同系統賬號密碼不同。
2. 所有操作留痕,一切有據可查
每個登入到伺服器上的工作人員使用獨立的賬號,任何操作記錄(包括登入記錄)都會被記錄,並傳輸到運維繫統中存放,無法更改或抹除。一旦發現問題,即可迅速定位。
同時,我們會定期對伺服器操作日誌進行審計,確保不出現違規操作。
3. 全自動化更新,將人工操作降到最低
碼雲產品迭代快速,幾乎每天都會需要更新程式,這個操作是由 ofollow,noindex">Ansible 自動化完成,不需登入伺服器即可完成。也就是說,許可權人也極少需要登入伺服器,極大降低了風險。
碼雲至今已執行經超過 5 年,我們深知程式碼對使用者的意義,始終將資料安全視為整個產品的生命線,把安全作為第一優先順序的任務,不容許半點閃失。
我們會不遺餘力確保所有使用者資料的安全,依託平臺資源優勢,讓碼雲成為比自建程式碼管理系統更安全、可靠的平臺。