作者:新思科技高級技術(shù)撰稿人Derek Handova
全球每年有至少上千宗交易與技術(shù)并購有關(guān),價值不下于數(shù)十億美元。收購方必須通過盡職調(diào)查來審查目標(biāo)公司的技術(shù)資產(chǎn),以識別未知風(fēng)險。
如今,相比編寫代碼,開發(fā)人員更可能為他們的應(yīng)用程序組裝代碼。當(dāng)然,他們?nèi)詴帉戧P(guān)鍵的業(yè)務(wù)的代碼。但是,代碼庫中包含多達(dá)90%的開源或第三方組件,開發(fā)人員可將代碼重用于常見功能,節(jié)約時間。有一種可重用的組件類型是基于API的Web服務(wù),其中許多可免費(fèi)用于開發(fā)基本功能。但是,使用基于API的Web服務(wù)可能會產(chǎn)生版權(quán)、最終用戶許可、使用條款以及數(shù)據(jù)和隱私政策等相關(guān)問題。
開發(fā)人員經(jīng)常在互聯(lián)網(wǎng)上找到適用于其應(yīng)用程序的有用API。但是軟件開發(fā)公司可能無法控制甚至不知道開發(fā)人員正在使用哪些API。然后,您的公司有一天決定購買該開發(fā)公司。您要如何在收購的時候減少基于API的Web服務(wù)的相關(guān)風(fēng)險?
減少基于API的Web服務(wù)的4個方面的風(fēng)險
當(dāng)您考慮收購的公司有軟件需要進(jìn)行實質(zhì)性估值,而且此類軟件是基于API的Web服務(wù)時,需要注意以下4個方面:
法律和合規(guī)風(fēng)險
API安全風(fēng)險
數(shù)據(jù)隱私風(fēng)險
運(yùn)營/業(yè)務(wù)風(fēng)險
1.法律和合規(guī)風(fēng)險
基于API的Web服務(wù)通常伴隨版權(quán)問題和使用條件,您需要了解這些版權(quán)和使用條件。使用條款也可能是復(fù)雜且不斷變化的。當(dāng)使用條款更改時,用戶只要是繼續(xù)使用基于API的Web服務(wù)即表示同意新條款?梢哉f,當(dāng)您購買基于API的公司許可的Web服務(wù)時,您還可能繼承了其法律和合規(guī)風(fēng)險。
2.API 安全風(fēng)險
基于API的Web服務(wù)給收購方帶來了兩個風(fēng)險:API發(fā)送的數(shù)據(jù)和接收的數(shù)據(jù)。發(fā)送的數(shù)據(jù)可能會泄漏或被竊聽;接收的數(shù)據(jù)可能包括可執(zhí)行文件、篡改的圖像、病毒或惡意代碼。而且,無論是發(fā)送還是接受的數(shù)據(jù)都可能受到中間人攻擊。
3.數(shù)據(jù)隱私風(fēng)險
企業(yè)有時會將來自API的數(shù)據(jù)與從其它來源獲得的數(shù)據(jù)區(qū)別對待。當(dāng)涉及到數(shù)據(jù)隱私時,所有數(shù)據(jù),尤其是個人身份信息(PII),都需要同樣的保護(hù)。作為收購方,您必須對多方面進(jìn)行盡職調(diào)查,包括目標(biāo)應(yīng)用程序如何處理API數(shù)據(jù)、如何將其與其它來源的匿名數(shù)據(jù)進(jìn)行合并以及在何處(從地理角度而言)將數(shù)據(jù)發(fā)送至何處、從何處接收、存儲并處理等,還需要審查其是否遵守區(qū)域數(shù)據(jù)隱私法規(guī),例如歐洲的《通用數(shù)據(jù)保護(hù)條例》(GDPR)。
4.運(yùn)營/業(yè)務(wù)風(fēng)險
基于API的Web服務(wù)是免費(fèi)的,不提供服務(wù)級別協(xié)議(SLA)。在尋找潛在的收購機(jī)會時,您需要知道使用免費(fèi)Web服務(wù)會帶來哪些持續(xù)的風(fēng)險。如果吊銷了API許可證、不贊成使用API?6?7?6?7或競爭對手購買了API提供商并限制了直接競爭的訪問權(quán)限,您最終可能會遇到業(yè)務(wù)無法進(jìn)展的問題。您必須制定應(yīng)急計劃,以隨時應(yīng)對API出于任何原因變得不可用的情況。
3個步驟緩解基于API的Web服務(wù)風(fēng)險
與對開源軟件的審查一樣,收購方要降低基于API的Web服務(wù)風(fēng)險,必須圍繞著全面披露和發(fā)現(xiàn);旧,需要三個步驟:
1.識別應(yīng)用程序中所有基于API的Web服務(wù)。明確地知道應(yīng)用了哪些API,提供了哪些數(shù)據(jù),它們的關(guān)聯(lián)許可證以及使用了多少和使用頻率。您可以通過詢問應(yīng)用程序開發(fā)人員來獲取此信息,或者最好通過使用API?6?7?6?7 /代碼掃描器對應(yīng)用程序的API進(jìn)行審核。
2.分析應(yīng)用程序的API許可證。仔細(xì)檢查應(yīng)用程序的API許可,以確保目標(biāo)公司正確遵守合同條款。審查在理論上和現(xiàn)實中使用API?6?7?6?7是否有不一致之處。另外,請留意應(yīng)該提供和實際提供的數(shù)據(jù)之間存在的任何差異。
3.制定補(bǔ)救計劃。補(bǔ)救計劃應(yīng)涵蓋不同類別的問題,包括代碼、法律、冗余和突發(fā)事件、數(shù)據(jù)隱私和合同風(fēng)險分配等。這將分別涉及由于服務(wù)中斷而更換API、尋求對現(xiàn)有許可證的補(bǔ)充或棄用、準(zhǔn)備好API備份、向用戶群通知收集和傳輸了哪些數(shù)據(jù),以及讓目標(biāo)公司對交易中包含的基于API的Web服務(wù)提供具有約束力的證明和保證。