2021年初,,和許多新技術(shù)一樣,,低代碼(Low-code)開(kāi)發(fā)被推上了“風(fēng)口”:阿里云認(rèn)為低代碼開(kāi)發(fā)將是一場(chǎng)“革命”;騰訊云將低代碼視為一種有益的技術(shù)手段,,并與Mendix(被西門(mén)子收購(gòu))展開(kāi)了深度合作,;高瓴、IDG,、華創(chuàng)資本等投資機(jī)構(gòu)將低代碼視為投資新賽道,,據(jù)統(tǒng)計(jì),2020年1月-2021年8月,,僅中國(guó)國(guó)內(nèi)就有至少15個(gè)低代碼平臺(tái)獲得超20家主流機(jī)構(gòu)的投資,。
以上統(tǒng)計(jì)數(shù)據(jù)引自《財(cái)經(jīng)》報(bào)道
Gartner數(shù)據(jù)顯示,2020年,,全球低代碼市場(chǎng)規(guī)模達(dá)84億美元,,預(yù)計(jì)在2021年將超過(guò)百億美元。到2025年,,全球低代碼市場(chǎng)規(guī)模將達(dá)到471億美元,,復(fù)合增長(zhǎng)率將達(dá)到41%,而且70%的新應(yīng)用將由低代碼或無(wú)代碼技術(shù)完成開(kāi)發(fā),。
然而,,低代碼開(kāi)發(fā)在為企業(yè)打開(kāi)“方便之門(mén)”的同時(shí),也為威脅敞開(kāi)了后門(mén),。企業(yè)在享受低代碼系統(tǒng)帶來(lái)的便利時(shí),,也往往埋下了系統(tǒng)附帶的安全問(wèn)題隱患。
低代碼的誕生
事實(shí)上,,通過(guò)低代碼進(jìn)行敏捷開(kāi)發(fā)的理念早在30年前就已萌芽,。21世紀(jì)初,,歐洲誕生了兩家低代碼創(chuàng)業(yè)公司——葡萄牙的Outsystems以及荷蘭的Mendix。它們也是目前公認(rèn)的低代碼開(kāi)發(fā)拓荒者和領(lǐng)導(dǎo)者,。
只是,,Outsystem和Mendix誕生后的很長(zhǎng)一段時(shí)間,該項(xiàng)技術(shù)被稱(chēng)為“敏捷開(kāi)發(fā)平臺(tái)”,。直至2014年,,研究機(jī)構(gòu)Forrester Research才正式提出了低代碼的定義,即利用很少或幾乎不需要寫(xiě)代碼就可以快速開(kāi)發(fā)應(yīng)用,,并可以快速配置和部署的一種技術(shù)和工具,。如今,低代碼已經(jīng)從簡(jiǎn)單的儀表板發(fā)展為復(fù)雜的應(yīng)用程序,,功能越來(lái)越多樣化,,得到業(yè)界的廣泛采用。
低代碼開(kāi)發(fā)讓企業(yè)組織看到了“降本,、增效,、提質(zhì)”的可能性。它使非技術(shù)用戶(hù)能夠在數(shù)小時(shí)或數(shù)天內(nèi)生成出色的業(yè)務(wù)應(yīng)用程序,。據(jù)Creatio調(diào)查結(jié)果顯示,,在接受采訪的1000位開(kāi)發(fā)高管中,95%的人認(rèn)為低代碼開(kāi)發(fā)速度相對(duì)于傳統(tǒng)方式有提高,,其中 61%的高管認(rèn)為提高速度在40%以上,。
可以說(shuō),低代碼開(kāi)發(fā)為企業(yè)降低了研發(fā)成本,、人力成本,,提升了效率,縮短了產(chǎn)品交付周期,,使企業(yè)產(chǎn)品和服務(wù)能夠以更快的速度進(jìn)行迭代和優(yōu)化,,并在激烈的市場(chǎng)競(jìng)爭(zhēng)中脫穎而出。
低代碼開(kāi)發(fā)風(fēng)險(xiǎn)
不過(guò),,作為一項(xiàng)尚不成熟的技術(shù),,機(jī)遇與挑戰(zhàn)總是相伴而生。
1. 缺乏可見(jiàn)性
全民開(kāi)發(fā)人員(citizen developer)隨意構(gòu)建應(yīng)用程序會(huì)危及企業(yè)業(yè)務(wù)安全,,IT部門(mén)很難跟蹤員工開(kāi)發(fā)的應(yīng)用程序,甚至一些應(yīng)用程序還為惡意軟件和黑客提供訪問(wèn)業(yè)務(wù)和客戶(hù)數(shù)據(jù)的“后門(mén)”,。
過(guò)去,,手動(dòng)編碼由一支專(zhuān)業(yè)的IT人員和程序員負(fù)責(zé)編寫(xiě)、檢查和測(cè)試,。雖然這個(gè)過(guò)程未免漫長(zhǎng)且磨人,,但至少它所遵循的內(nèi)在邏輯安全且透明,。但是,低代碼開(kāi)發(fā)平臺(tái)中的組件是“黑盒”,,其背后的邏輯并不對(duì)外展示,,這些組件搭建起來(lái)是否相容、適配等均未知,。一旦出現(xiàn)問(wèn)題,,企業(yè)將無(wú)法進(jìn)行排查和解決。
即便是進(jìn)行排查,,這一過(guò)程不僅成本高昂,,還會(huì)催生更多的“影子IT”,尤其是對(duì)那些完全依賴(lài)全民開(kāi)發(fā)人員的組織而言,。企業(yè)將很難注意到或跟進(jìn)全民開(kāi)發(fā)人員使用低代碼構(gòu)建或修改的內(nèi)容,。影子IT無(wú)疑會(huì)給企業(yè)增加額外成本,種種成本相加或許要比手動(dòng)編碼更多,。
2. 數(shù)據(jù)可訪問(wèn)性(即對(duì)數(shù)據(jù)訪問(wèn)的許可和控制)
低代碼開(kāi)發(fā)平臺(tái)是集中部署的,,整個(gè)企業(yè)的用戶(hù)可通過(guò)瀏覽器進(jìn)行訪問(wèn),這會(huì)帶來(lái)網(wǎng)絡(luò)入侵的風(fēng)險(xiǎn),。比如為未授權(quán)的開(kāi)發(fā)人員提供訪問(wèn)權(quán)限,,并為遠(yuǎn)程訪問(wèn)中不需要它的用戶(hù)提供更大權(quán)限。因此,,在部署任何低代碼系統(tǒng)之前,,企業(yè)應(yīng)該限制數(shù)據(jù)的可訪問(wèn)性。
IT部門(mén)可以通過(guò)邊界防護(hù)產(chǎn)品,,限制對(duì)所有關(guān)鍵數(shù)據(jù)的訪問(wèn)行為,。另外,還可以設(shè)置僅對(duì)企業(yè)家,、IT 團(tuán)隊(duì)或核心圈子可用的強(qiáng)安全代碼,,這樣其他任何需要業(yè)務(wù)信息的人,都需要獲得批準(zhǔn)或通過(guò)驗(yàn)證,,才能獲得數(shù)據(jù),,此舉可以有效遏制影子IT。
控制數(shù)據(jù)訪問(wèn),,不僅可以幫助企業(yè)減少隱藏業(yè)務(wù)產(chǎn)生的額外成本,,而且還可以輕松地將公共、私有內(nèi)容分開(kāi),,更好地保護(hù)企業(yè)的內(nèi)部數(shù)據(jù),,這對(duì)業(yè)務(wù)交易至關(guān)重要。
3. 第三方集成的風(fēng)險(xiǎn)
第三方集成同樣帶來(lái)了一定比例的安全風(fēng)險(xiǎn),,因?yàn)榇蠖鄶?shù)低代碼開(kāi)發(fā)平臺(tái)依賴(lài)第三方系統(tǒng)來(lái)交換或傳輸數(shù)據(jù),,而組織無(wú)法定期跟進(jìn)這些數(shù)據(jù),,從而為業(yè)務(wù)帶來(lái)了高風(fēng)險(xiǎn)。而且,,大多數(shù)第三方系統(tǒng)也使用低代碼功能,,例如拖放、可視化圖形等,,這也為企業(yè)帶來(lái)了不可控性,。
此外,傳輸風(fēng)險(xiǎn)很有可能不是在低代碼系統(tǒng)和第三方平臺(tái)中,,而是包含在其他代碼庫(kù)源中,。因此,系統(tǒng)中任何錯(cuò)誤操作或缺陷都將使企業(yè)的數(shù)據(jù)面臨風(fēng)險(xiǎn),,也很容易被黑客入侵,,一旦系統(tǒng)受到威脅,恢復(fù)組織系統(tǒng)或客戶(hù)詳細(xì)信息將極具挑戰(zhàn)性,。
4. 審核供應(yīng)商系統(tǒng)存在問(wèn)題
大多數(shù)低代碼平臺(tái)安全控件對(duì)企業(yè)或組織都是可見(jiàn)的,,不過(guò),也有部分低代碼平臺(tái)供應(yīng)商不提供其整體平臺(tái)的管理員訪問(wèn)權(quán)限,,因此,,企業(yè)需要使用第三方審核服務(wù)來(lái)檢查安全性,例如使用第三方安全工具,、安全和合規(guī)性認(rèn)證,、服務(wù)水平協(xié)議以及網(wǎng)絡(luò)安全保險(xiǎn)等等。
值得注意的是,,無(wú)法提供安全細(xì)節(jié)的低代碼平臺(tái),,會(huì)使組織和安全部門(mén)變得異常依賴(lài)第三方工具,但是這些工具很有可能會(huì)存在缺陷,,甚至非常糟糕,。因此,建議組織選擇在安全系統(tǒng)中提供透明度的低代碼平臺(tái),。
現(xiàn)在,,有不少低代碼供應(yīng)商通過(guò)提供可訪問(wèn)和透明的審計(jì)方法來(lái)改進(jìn)其服務(wù),如此一來(lái),,企業(yè)或組織將能夠消除在第三方工具上的昂貴支出,。
低代碼安全建議
開(kāi)發(fā)團(tuán)隊(duì)在部署低代碼平臺(tái)前,可考慮以下安全建議:
1,、在實(shí)施低代碼平臺(tái)之前,,讓IT和安全部門(mén)參與。IT部門(mén)、安全和開(kāi)發(fā)團(tuán)隊(duì)對(duì)低代碼平臺(tái)進(jìn)行充分了解和分析,,這將有助于檢查平臺(tái)中的漏洞,以及它們對(duì)企業(yè)或組織的有效性,。
2,、確保API安全性。組織往往會(huì)忽視API安全性,,然而,,在實(shí)行低代碼平臺(tái)或管理任何數(shù)字資產(chǎn)時(shí),API安全性都是必不可少的,。
3,、評(píng)估低代碼供應(yīng)商。一旦組織同意使用低代碼平臺(tái),,就需要仔細(xì)審查有關(guān)供應(yīng)商的每一個(gè)細(xì)節(jié),。具體如下:
所選的低代碼平臺(tái)必須設(shè)置在企業(yè)安全的DMZ或私有云中,并且必須毫不費(fèi)力地通過(guò)網(wǎng)絡(luò)安全許可,;
該平臺(tái)必須對(duì)自動(dòng)生成的代碼以及開(kāi)發(fā)人員編寫(xiě)的自定義代碼,,實(shí)施最佳編程方案(編碼約定,設(shè)計(jì)模式和數(shù)據(jù)加密),,以簡(jiǎn)化與現(xiàn)有CI/CD流程和工具的集成,;
該平臺(tái)必須針對(duì)Web和移動(dòng)應(yīng)用程序Top 10 OWASP漏洞提供全面保護(hù),并具有第三方認(rèn)證以保證代碼質(zhì)量和安全性,。此外,,組織還應(yīng)確保所選平臺(tái)的二進(jìn)制文件以及CVE庫(kù)中列出的所有第三方依賴(lài)項(xiàng)(包括開(kāi)源庫(kù))中均不存在漏洞;
該解決方案必須支持提供多個(gè)身份驗(yàn)證程序(數(shù)據(jù)庫(kù),,LDAP,,AD,SSO,,SAML,,Open-ID,多因素,,生物識(shí)別),,以構(gòu)建具有強(qiáng)大用戶(hù)安全性的應(yīng)用程序。對(duì)于用戶(hù)授權(quán),,請(qǐng)確保同時(shí)支持粗粒度訪問(wèn)控制策略和細(xì)粒度訪問(wèn)控制策略,,以保護(hù)基于RBAC應(yīng)用程序的各個(gè)方面。
一套真正意義上的低代碼平臺(tái),,必須能夠覆蓋軟件研發(fā)全生命周期,,實(shí)現(xiàn)工業(yè)級(jí)的效率提升。我們期待著,在業(yè)已成熟的軟件開(kāi)發(fā)領(lǐng)域,,能產(chǎn)生一次生產(chǎn)力大變革,。