這樣做原始碼肯定不能被洩露,但你會瘋...
今天吃個瓜。
昨天下午B站原始碼竟然被惡意開源,想必很多讀者都已吃過。就不在贅述了。不少網友吐槽官方對專案程式碼安全方面管理不到位也是造成洩露的主要原因。今天就說說關於程式碼安全方面的事情,真的是企業不夠重視專案程式碼安全或管理不到位嗎?
算上實習我也是入職過各類有代表性的公司,規模有大有小,性質有國企也有私企。他們對於程式碼安全方面的管理措施也各不相同。
確實有不重視程式碼安全的企業,但一般也都是些創業型的小公司,別說程式碼安全 ,就連自己的程式碼管理平臺都沒有,基本上就是直接購買第三方平臺的私有庫進行託管。只要有賬號密碼,專案可以clone到任意地方。但也可以理解,畢竟有限的資金和人力要用在刀刃上。
但大多數有點規模的企業會考慮到不限於程式碼方面的安全,都有一些通用的安全措施。
- 禁止使用自己的電腦辦公甚至測試機都必須報備在冊。
- 限制USB介面的許可權,禁止資料的傳輸。
- 禁止辦公電腦安裝一些軟體、訪問一些網站。
- 對專案程式碼設定對應的許可權,前端程式設計師是看不到後臺專案。有一種git clone的報錯叫你沒有許可權訪問。
- 還有一種環境叫做內網。
當然這些措施都是需要人力物力財力的支援。不過對於程式設計師來說越過這些”防火牆“還是很灑灑水的。
那麼企業真的沒有辦法保證專案程式碼的安全嗎?
有,我經歷過,且記憶猶新!
14年在北京實習時被外派到一家軍工企業,至今不知道叫什麼。後來才知道是做武器裝備資訊管理系統的專案,當然,提供的資料肯定是假的。
首先,地點很隱蔽,在北京一個深山老林中,開車繞了很久才到;一週為單位,工作環境全封閉,工作期間禁止外出;進去就要簽訂各種保密協議,進出辦公區除了刷卡外,要登記造冊;手機等裝置禁止帶入辦公區。
其次硬體方面,電腦主機竟然沒有USB介面,作業系統,資料庫等也不是市面上常見的,後來聽說是自主研發的,反正很難用。
網路環境方面也是全封閉,剛開始沒有任何機會訪問外網,想複製貼上開源的程式碼不可能,程式有了錯誤只能用筆記下來,到非辦公區用自己的手機聯網查詢解決。這樣肯定會影響開發效率,經過一週的協調,在作業系統上安裝了一個類似於沙盒機制的虛擬機器,通過虛擬機器可以上網,但資料傳輸是不可能的,連複製貼上都做不到。手敲異常資訊絕對是件讓人抓狂的事,沒經過你不會懂。那種無奈至今難忘。這也是我遇到過的最嚴的專案管理措施。專案原始碼肯定不能被洩露,但我真的會瘋...
別以為這專案技術有多高,其實就是個ERP系統,什麼框架都不用,全是jsp+servlet....
關於專案程式碼的安全方面,不是企業不重視,也不是技術做不到,它真的是個很蛋疼的事。用力不夠,效果不大。用力過猛,影響效率不說,相信很多程式設計師都接受不了吧。