企業(yè)機(jī)密管理的快速指南
集中管理用于訪問(wèn)應(yīng)用程序、服務(wù)和IT生態(tài)系統(tǒng)所有其他部分的工具、方法和憑據(jù)是值得企業(yè)關(guān)注的。
如今的企業(yè)IT場(chǎng)景的特點(diǎn)是持續(xù)的數(shù)字化轉(zhuǎn)型和大規(guī)模的數(shù)據(jù)生成。隨著遠(yuǎn)程工作和移動(dòng)工作成為新冠疫情發(fā)生之后的新常態(tài),移動(dòng)性和敏捷性已經(jīng)成為企業(yè)業(yè)務(wù)連續(xù)性的重要驅(qū)動(dòng)因素。
為了自動(dòng)化和集成所有可能的業(yè)務(wù)功能,集中并加快數(shù)據(jù)和信息的流動(dòng),提高生產(chǎn)力并提供更好的客戶(hù)體驗(yàn),很多企業(yè)正在使用復(fù)雜的混合多云的運(yùn)營(yíng)模型構(gòu)建敏捷的DevOps環(huán)境。
然而,隨著巨大的移動(dòng)性和即時(shí)的數(shù)據(jù),隨之而來(lái)的是巨大的責(zé)任。企業(yè)在保持?jǐn)?shù)據(jù)、服務(wù)和個(gè)人身份信息(PII)安全方面面臨著越來(lái)越多的挑戰(zhàn)。盡管技術(shù)一直不斷進(jìn)步,但人們?nèi)匀荒陱?fù)一年地看到大量的數(shù)據(jù)泄露事件。
企業(yè)如何發(fā)展其數(shù)據(jù)存儲(chǔ)、管理和保護(hù)方法,以確保員工能夠直接訪問(wèn)數(shù)字資源,同時(shí)加強(qiáng)整個(gè)IT基礎(chǔ)設(shè)施的安全性?答案在于有效的企業(yè)機(jī)密管理。
什么是機(jī)密管理?為什么需要機(jī)密管理?
機(jī)密管理是一套適當(dāng)?shù)墓ぞ吆妥罴褜?shí)踐,用于在整個(gè)生命周期內(nèi)安全地存儲(chǔ)、訪問(wèn)和集中管理數(shù)字身份驗(yàn)證憑證。機(jī)密是用于身份驗(yàn)證和授權(quán)的數(shù)據(jù)項(xiàng)——它們包括密碼、公共和私人加密密鑰、SSH密鑰、API、令牌和證書(shū)。機(jī)器和人類(lèi)都使用機(jī)密進(jìn)行身份驗(yàn)證和通信。
但是,為什么首先需要機(jī)密管理?基于SaaS的機(jī)密管理工具Akeyless公司首席執(zhí)行官兼聯(lián)合創(chuàng)始人Oded Hareven解釋說(shuō),“隨著向混合多云基礎(chǔ)設(shè)施的普遍轉(zhuǎn)變以及對(duì)應(yīng)用程序容器化的依賴(lài),機(jī)器和人員持續(xù)訪問(wèn)系統(tǒng)和數(shù)據(jù)的需求已經(jīng)大幅增長(zhǎng)。例如,越來(lái)越多的應(yīng)用程序必須不斷地訪問(wèn)不同的數(shù)據(jù)源、云服務(wù)和服務(wù)器,通常每個(gè)資源都需要不同類(lèi)型的憑據(jù)。這在DevOps流程中產(chǎn)生了對(duì)機(jī)密的指數(shù)級(jí)需求?!?/p>
棘手的是,開(kāi)發(fā)人員經(jīng)常將各種機(jī)密編碼到應(yīng)用程序或微服務(wù)代碼、腳本、自動(dòng)化工具和代碼庫(kù)中——所有這些都駐留在各種基礎(chǔ)設(shè)施中。更糟糕的是,這些代碼處于不同的開(kāi)發(fā)階段,存在管理不當(dāng)和未受保護(hù)的實(shí)際風(fēng)險(xiǎn)。其結(jié)果是總體上缺乏對(duì)機(jī)密的控制和整合,導(dǎo)致安全行業(yè)稱(chēng)之為“機(jī)密蔓延”。
麻煩還不止于此。在執(zhí)行持續(xù)集成(CI)/持續(xù)交付(CD)的云平臺(tái)中保存的機(jī)密本質(zhì)上是管理和允許訪問(wèn)其他機(jī)器和軟件所必需的。為此,他們需要存儲(chǔ)機(jī)密和簽名密鑰(用于密封代碼和軟件更新),這些密鑰通常存儲(chǔ)在非安全位置,如開(kāi)發(fā)人員的筆記本電腦或他們構(gòu)建的服務(wù)器。
機(jī)密蔓延不僅使憑證難以跟蹤和管理,而且容易受到黑客攻擊。事實(shí)上,根據(jù)Verizon公司日前發(fā)布的一份調(diào)查報(bào)告,被盜憑證占所有數(shù)據(jù)泄露的近一半。
最近發(fā)生的許多黑客攻擊,包括軟件供應(yīng)鏈黑客攻擊,都利用了代碼中的機(jī)密,這些機(jī)密再次存儲(chǔ)在GitHub等易于訪問(wèn)的存儲(chǔ)庫(kù)中。事實(shí)上,GitHub最近在數(shù)千個(gè)私有存儲(chǔ)庫(kù)中檢測(cè)到70多萬(wàn)次潛在的憑證泄漏,并且已經(jīng)準(zhǔn)備就緒。
這些例子不斷涌現(xiàn)。最近曝光的軟件供應(yīng)鏈攻擊劫持了流行的PHP和Python庫(kù)以竊取AWS密鑰。在另一個(gè)例子中,一項(xiàng)幫助開(kāi)源開(kāi)發(fā)人員編寫(xiě)和測(cè)試軟件的常用服務(wù)被發(fā)現(xiàn)泄露了數(shù)千個(gè)身份驗(yàn)證令牌和其他機(jī)密,允許黑客訪問(wèn)開(kāi)發(fā)人員在Docker、Github、AWS和其他代碼存儲(chǔ)庫(kù)上的私人賬戶(hù).
但是有人會(huì)問(wèn),是否已經(jīng)有方法可以保護(hù)密碼、密鑰和其他憑據(jù)?有,這就是問(wèn)題的一部分。
機(jī)密管理中的挑戰(zhàn)
在管理機(jī)密方面,當(dāng)今的安全解決方案存在相當(dāng)?shù)偷男屎椭貜?fù)。其中的一些挑戰(zhàn)是:
(1)機(jī)密蔓延
很多企業(yè)將業(yè)務(wù)從內(nèi)部部署遷移到云端——機(jī)密也是如此。全球三大云計(jì)算提供商和其他云計(jì)算提供商都提供自己的機(jī)密管理解決方案,大多數(shù)企業(yè)默認(rèn)接受這些解決方案,只是為了獲得更好的解決方案,還有什么比云計(jì)算提供商自己采用的平臺(tái)更安全的呢?
但是,隨著混合多云架構(gòu)占據(jù)中心位置(這是唯一一種越來(lái)越多采用的IT運(yùn)營(yíng)模型),大多數(shù)DevOps團(tuán)隊(duì)發(fā)現(xiàn)自己要處理充滿(mǎn)不同工作負(fù)載的微服務(wù)和容器的多個(gè)環(huán)境。這些環(huán)境擁有數(shù)千個(gè)相互通信的機(jī)器對(duì)機(jī)器組件,導(dǎo)致流通中的密鑰、令牌和其他機(jī)密的數(shù)量多得驚人。
機(jī)密的爆炸式增長(zhǎng)和分散對(duì)管理員和DevOps從業(yè)者來(lái)說(shuō)是一個(gè)巨大的運(yùn)營(yíng)負(fù)擔(dān)。當(dāng)今可用的大量云計(jì)算和虛擬化解決方案讓用戶(hù)可以大規(guī)模創(chuàng)建和銷(xiāo)毀虛擬機(jī)和應(yīng)用程序。不用說(shuō),這些虛擬機(jī)實(shí)例中的每一個(gè)都有自己的一組需要管理的機(jī)密。此外,在企業(yè)中僅SSH密鑰就可以達(dá)到數(shù)百萬(wàn)個(gè)。除此之外,Ansible作業(yè)、Kubernetes容器和日常批處理例程都傾向于使用需要輪換的密碼。
所有這些系統(tǒng)都無(wú)法訪問(wèn)其環(huán)境外部的安全資源。沒(méi)有統(tǒng)一的控制平臺(tái)可以幫助企業(yè)管理存儲(chǔ)在不同平臺(tái)上的多個(gè)機(jī)密存儲(chǔ)庫(kù)。
(2)能見(jiàn)度不足
本地化到不同環(huán)境(如云平臺(tái)、內(nèi)部部署、邊緣計(jì)算或混合部署)的靜態(tài)機(jī)密由不同的個(gè)人、團(tuán)隊(duì)和管理員管理,從而創(chuàng)建“機(jī)密孤島”。這不可避免地會(huì)導(dǎo)致審計(jì)挑戰(zhàn)和安全漏洞。
(3)保管庫(kù)解決方案的復(fù)雜性
由于大量現(xiàn)有和遺留工具和平臺(tái)(包括DevOps和非DevOps)以及每個(gè)工具和平臺(tái)的大量擴(kuò)展,本地庫(kù)解決方案在許多情況下都無(wú)法正常工作。此外,在混合環(huán)境中很難根據(jù)底層計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)基礎(chǔ)設(shè)施配置保管庫(kù)。頻繁更新的需求只會(huì)增加內(nèi)部部署保管庫(kù)的復(fù)雜性。
基于云計(jì)算的保管庫(kù)也并不安全。一個(gè)巨大的危險(xiǎn)信號(hào)是,這些產(chǎn)品是云計(jì)算提供商專(zhuān)有的,只支持在他們自己的環(huán)境和生態(tài)系統(tǒng)中運(yùn)行的工作負(fù)載,因此它們也不適合混合云架構(gòu)。即使企業(yè)只采用一個(gè)主要的云提供商提供的服務(wù),也只會(huì)導(dǎo)致保管庫(kù)蔓延。另一個(gè)問(wèn)題是企業(yè)的主密鑰與云計(jì)算提供商共享。這意味著流氓管理員、黑客或政府機(jī)構(gòu)可以訪問(wèn)它們,而用戶(hù)卻束手無(wú)策。
完美的機(jī)密管理解決方案
完美的機(jī)密管理解決方案可能并不存在。但這并不意味著企業(yè)無(wú)法創(chuàng)建萬(wàn)無(wú)一失的身份和訪問(wèn)管理(IAM)策略來(lái)保護(hù)自己免受已知類(lèi)型的威脅。
身份和訪問(wèn)管理(IAM)是新的邊界——它是現(xiàn)代安全策略的基礎(chǔ)。隨著自動(dòng)化程度的提高和隨需求波動(dòng)的動(dòng)態(tài)工作負(fù)載的數(shù)量的增加,驗(yàn)證人類(lèi)和機(jī)器用戶(hù)的身份(身份驗(yàn)證)并證明他們?cè)L問(wèn)資源(授權(quán))的需求變得越來(lái)越復(fù)雜。
此外,身份驗(yàn)證的性質(zhì)在不斷變化。應(yīng)用程序和數(shù)據(jù)庫(kù)模塊不再像以前那樣局限于一些代碼。與其相反,它們是微服務(wù)和子組件的復(fù)雜且動(dòng)態(tài)的集成,每個(gè)子組件都有自己的身份驗(yàn)證過(guò)程。
以下是在多云環(huán)境中運(yùn)營(yíng)或擁有內(nèi)部部署、私有云和公有云系統(tǒng)混合組合的企業(yè)應(yīng)該在機(jī)密管理平臺(tái)或解決方案中尋找的內(nèi)容:
- 適用于混合云、多云和多個(gè)云區(qū)域設(shè)置:這可能是企業(yè)最重要的一個(gè)關(guān)注因素。盡可能選擇使用云原生技術(shù)與跨平臺(tái)、跨環(huán)境工作流無(wú)縫集成的平臺(tái)。企業(yè)的機(jī)密管理解決方案應(yīng)支持啟用身份和訪問(wèn)管理(IAM)的機(jī)器對(duì)機(jī)器和人對(duì)機(jī)器身份驗(yàn)證和驗(yàn)證不同類(lèi)型的機(jī)密,例如SSH證書(shū)、API密鑰、x.509證書(shū)、加密密鑰等,以強(qiáng)制執(zhí)行連續(xù)安全合規(guī)性。
- 適用于不同的身份驗(yàn)證協(xié)議、語(yǔ)言和設(shè)備:重要的是,企業(yè)的機(jī)密管理工具通過(guò)所有主要接口(當(dāng)然)包括命令行、GUI、RESTAPI和SDK,通過(guò)第三方身份提供者支持人工、硬件和軟件身份驗(yàn)證主要語(yǔ)言。不用說(shuō),它應(yīng)該促進(jìn)動(dòng)態(tài)機(jī)密并與常見(jiàn)的基于云的平臺(tái)集成,例如Docker、Kubernetes、Terraform、Ansible和Jenkins,以實(shí)現(xiàn)不間斷的DevOps操作。
然后是擴(kuò)展問(wèn)題。如果企業(yè)想以“云計(jì)算規(guī)模”增長(zhǎng)并擴(kuò)展其地理或技術(shù)基礎(chǔ)設(shè)施,需要能夠擴(kuò)展其機(jī)密管理功能以支持所有現(xiàn)有以及即將推出的工具和插件。
- 可以通過(guò)統(tǒng)一的SaaS平臺(tái)進(jìn)行管理:當(dāng)今的安全團(tuán)隊(duì)需要對(duì)企業(yè)使用的所有環(huán)境中的所有用戶(hù)、應(yīng)用程序和設(shè)備的身份驗(yàn)證進(jìn)行集中可見(jiàn)性和控制。Hareven說(shuō),“一些安全負(fù)責(zé)人表示,直觀的基于SaaS的機(jī)密管理工具可以實(shí)時(shí)查看每個(gè)機(jī)密使用實(shí)例、審計(jì)日志記錄和強(qiáng)大的分析,這是他們的需求。”
- 實(shí)現(xiàn)機(jī)密零問(wèn)題并實(shí)施零信任模型:密碼管理是當(dāng)今的常見(jiàn)功能。例如某人可能有一個(gè)電子表格或文檔,其中存儲(chǔ)了他們使用的各種應(yīng)用程序或控制面板的所有密碼。然而,要打開(kāi)這個(gè)電子表格,他們可能需要另一個(gè)密碼。他們還需要用戶(hù)憑據(jù)才能登錄操作系統(tǒng)并訪問(wèn)電子表格。
機(jī)密管理解決方案應(yīng)該提供一組初始憑證,其中包含一個(gè)臨時(shí)令牌或密鑰,用于進(jìn)行持續(xù)身份驗(yàn)證,以便永遠(yuǎn)不會(huì)泄露機(jī)密。
這屬于零信任架構(gòu)(ZTA)的前提,該架構(gòu)遵循最小特權(quán)(PoLP)原則,在這一原則下,用戶(hù)和應(yīng)用程序被授予“即時(shí)”和細(xì)粒度訪問(wèn)特定時(shí)間內(nèi)的特定數(shù)量的資源——只有在向管理員“證明”他們的請(qǐng)求合理之后。這些特權(quán)是動(dòng)態(tài)授予的,并在預(yù)設(shè)的時(shí)間范圍后自動(dòng)過(guò)期。
保守機(jī)密
理想的機(jī)密管理平臺(tái)通過(guò)使不同的團(tuán)隊(duì)能夠訪問(wèn)他們需要的資源并自主管理他們的機(jī)密,從而為企業(yè)中的DevOps、云遷移和數(shù)字化轉(zhuǎn)型提供支持。通過(guò)從云中“即服務(wù)”交付的解決方案,可以減少維護(hù)開(kāi)銷(xiāo)、提高可用性并擴(kuò)展運(yùn)營(yíng),以滿(mǎn)足企業(yè)的增長(zhǎng)目標(biāo)。