開源治理有方,讓安全和風險可控
器有尺度,物有準繩,不以規矩,不成方圓。對于企業來說,想要玩好開源,也是需要講究開源之法,有據可依。開源是把雙刃劍,一方面,開源代碼公開透明,容易獲取,能有效降低企業初期投入成本;另一方面,如果使用不當,會把風險引入企業,并且對業務造成一定損害。因此企業必須探索出一條規范使用和管控好開源技術的道路,讓開源價值最大化。
近年來,開源治理漸漸走進人們的視野,并逐漸成為開源領域的一個熱點話題。比如,2018年信通院推出《開源治理白皮書》,2019年進一步推出《金融行業開源治理白皮書》,去年信通院還推出了開源治理培訓計劃等等。
那么,何謂開源治理?為什么要開源治理?怎么做到開源治理?這些都是企業在擁抱開源之前需要進行的靈魂三問。
開源背后蘊藏風險
被奉為開源運動《圣經》的《大教堂與集市》一書中,作者把開源比作熱鬧的集市,開放且來去自由,它歡迎任何一行開源代碼在這里流通,也不拒絕任何一家企業在這里收獲開源成果。
經過多年的發展,開源熱度持續攀升,越來越多的公司在擁抱開源,并使用開源。《開源治理白皮書》指出,開源項目呈指數級增長,到2026年全球預計超3億;與此同時,我國企業內部已經應用開源軟件的比例,已經達到86.7%,正在引入開源軟件的企業占10.6%,呈現主動開源趨勢。開源軟件更是百花齊放,借著云計算、大數據、人工智能等東風,各種DevOps平臺、新一代系統都應用了開源軟件。
相比較閉源的商用軟件,開源代碼公開帶來的好處顯而易見,而對引入、使用和管理開源軟件的過程中出現的風險卻關注甚少。《金融行業開源治理白皮書》指出,引入開源的用戶往往成為開源軟件使用的風險落腳點。在開源生態中,金融機構往往以最終用戶的角色出現,難免存在潛在的風險問題。總的來看,這些風險主要有運維和技術風險、管理風險、安全和數據風險、合規和知識產權風險四個方面。
首先,運維和技術風險。開源軟件的開發和運維往往需要金融機構自己來負責,開發難度更大,人才的數量和質量跟不上,消耗企業更多資源。
其次,管理風險。商業軟件大部分不會主動說明產品中是否有開源代碼,用戶很可能被動引入開源代碼;金融用戶如果沒有對源代碼掃描,通常也并不清楚企業開發者是否使用了開源代碼片段以及引入了多少開源代碼;大量級的開源軟件和代碼規模給代碼合規性檢查帶來了不小的挑戰。基于上面三點,金融企業想要統計完全準確的開源軟件數目和使用情況存在一定困難。
此外,安全和數據風險。由于開源軟件是由多人協作完成,且開源許可證具有復雜性的特點,很容易造成開源軟件存在惡意代碼、病毒或造成隱私泄露等問題。開源軟件的安全缺陷密度較高,金融企業對安全漏洞應予以重視。
最后,合規和知識產權風險。每一個開源軟件,都需要遵守開源許可證上規定的要求,但很多情況下,金融企業無法明確得知該軟件是否遵守;開源軟件上游供應鏈涉及眾多開源基金會、開源產品、服務企業等等,存在很大不確定性,影響開源許可證的使用方式,企業很可能因為許可證變化而影響后續開源軟件的使用;開源背后的知識產權問題相對專業,如果不準確掌握知識,很可能會埋下很大的風險隱患。
實際上,出于安全要求,我國一些傳統行業用戶也已經開始探索開源的治理,尤其在金融行業,由于對開源技術的應用比較廣泛,在治理方面覺醒得也比較早。比如,浦發銀行就在去年成立了創新實驗室,進行開源方面的研究和使用規范工作。同樣,中國農業銀行、中信銀行、中國太平洋保險等企業也有類似舉措。
治理開源宜早不宜晚
開源有需求,有挑戰,也有解決之道。面對這一系列痛點,國家、金融企業和第三方機構應共同采取措施,催生開源治理新范式,使開源產業健康有序發展。
不久前正式發布的“十四五”規劃綱要明確指出,支持數字技術開源社區等創新聯合體發展,完善開源知識產權和法律體系,鼓勵企業開放軟件源代碼、硬件設計和應用服務。這從整體上提高了國家或行業層面對開源的重視程度;產業界可以通過白皮書或書籍灌輸開源理念,解讀開源許可證要求,組織相關演講與培訓;金融機構可以通過調查問卷等形式了解行業情況,摸清現狀,形成調研報告以供參考。
光靠單方的力量,很難推動自身開源技術的應用和治理快速成長,這時可以聯合多家金融機構,形成行業運作、交流、共治平臺,例如,在2018年10月12日,浦發銀行和中國信通院共同發起金融行業開源技術應用社區,目前超過30家成員單位,每隔1-2個月社區就會發起研討會,整合優勢資源和技術成果共享開源經驗,共同推動金融行業開源生態健康發展。
前文提到,企業想要玩好開源,也是需要講究開源之法,梳理開源治理規范,推動相關標準制定迫在眉睫。第三方機構可以通過標準化的手段來樹立規范,例如,信通院聯合30多家金融企業和科技公司,制定《開源治理能力評價方法》,從“申請-審批-使用”全流程幫助企業建立自上而下的開源治理體系。
同時,一些開源領先的企業(如紅帽)也推出了開源治理的方法論以及開源治理的相關資訊服務,把它們在開源軟件的管理經驗傳授給市場,對開源市場的繁榮起到了很好的促進作用。
對于企業來說,需要構建一套適合自身情況的開源治理體系,涉及組織架構、管理制度、軟件選型、使用規范、風險管理、二次開發、持續跟蹤、社區反饋、退出機制九個方面。除此以外,企業還可以建立內部開源治理支撐平臺,完成對開源軟件的引入評估、使用評估、安全漏洞評估等,實現開源軟件全生命周期的跟蹤和記錄。
小結
正如春耕種,夏生成,秋收割,冬儲藏,開源的正確引入和規范管理,也要遵守一系列規則,開源治理不僅能夠做到風險可防可控,保障金融機構充分滿足合規要求,更能以開源新技術的應用促進金融機構向數字化、智能化方向轉型。