Shared Responsibility Model(責任分擔模型)
責任分擔模型(shared responsibility model,其他中文資料常寫作「共同責任模型」,例如 AWS 的繁中文件)是雲端業者與使用者之間的分工:業者負責它營運的那幾層(機房、硬體、虛擬化、它提供的網路),使用者負責放在上面的東西(作業系統、應用程式、設定、資料、帳號與金鑰)。分界的位置隨服務形態移動,租虛擬機(IaaS)時使用者管的最多,用託管服務時業者多管了作業系統與中介軟體。攻擊防護同樣依這條線分,應用層的過濾見 WAF。
概念位置
這個模型決定「上雲端之後還要做什麼」。業者處理的是所有客戶共用、規模化才做得起來的部分:電力與硬體故障時把虛擬機搬到別台實體機、在網路邊緣吸收大流量的網路層攻擊(DDoS,處置見 9.15 無預警瞬時大流量 的〈體積型攻擊(DDoS)的處置:流量清洗與邊緣網路〉)。依每個應用而不同的部分留給使用者:判斷哪些請求是惡意的、決定流量變大時要不要多開機器(自動擴充見 Autoscaling)、更新作業系統、備份資料。主機形態與分界位置的對照見 主機形態光譜。
可觀察訊號與例子
租一台虛擬機跑網站時,業者的網路層防護擋得掉灌爆頻寬的流量,而有人以正常的 HTTPS 請求大量爬取頁面、反覆嘗試登入,在網路層看起來與一般使用者相同,要由使用者自己在入口限流、或在前面加 CDN 與 WAF。流量突增時,單台虛擬機不會自己變大;要用業者的自動擴充群組或託管服務,擴充才變成業者的工作。
部分業者面對超出防護容量的攻擊時,會把被攻擊的 IP 暫時從網路上移除(null route,也叫黑洞路由),保護同一個網路裡的其他客戶,對被攻擊的服務來說結果與被打掛相同。各業者的防護範圍與處置方式寫在它的服務條款與文件裡,選用之前查自己那一家的。
判讀方式
判斷一項風險由誰處理,問它是不是每個客戶都一樣:硬體、電力、網路層的大流量是,業者處理;應用層的請求內容、帳號權限、資料、作業系統的設定不是,使用者處理。業者處理的部分也只到它承諾的範圍,承諾寫在服務等級協議(SLA)與文件裡;它沒寫的,預設是使用者的事。