5.2.3.2 PaaS接口安全
對于PaaS服務而言,它使客戶能夠將自己創建的某類應用程序部署到服務器端運行,并且允許客戶端對應用程序及其計算環境配置通過各類接口進行控制。PaaS接口范圍包括提供代碼庫、編程模型、編程接口、開發環境等。代碼庫封裝平臺的基本功能如存儲、計算、數據庫等,供用戶開發應用程序時使用,編程模型決定了用戶基于云平臺開發的應用程序類型,它取決于平臺選擇的分布式計算模型。
由于來自客戶端的代碼可能是惡意程序,如果PaaS平臺暴露過多的可用接口,會給攻擊者帶來可乘之機。例如,用戶通過接口提交一段惡意代碼,這段惡意代碼可能搶占CPU時間、內存空間和其他資源,也可能會攻擊其他用戶,甚至可能會攻擊提供運行環境的底層平臺。因此,PaaS層平臺的接口安全問題值得重點關注。
云平臺接口安全是指如何保證用戶可以安全地訪問各種業務應用,同時避免來自網絡的攻擊造成破壞。當用戶或者第三方應用欲訪問云平臺中受保護資源時,需先與云平臺認證服務器進行交互,利用自身攜帶的access key及相應的access keyID通過API endpoint進行認證授權。若認證成功,則可訪問云平臺中的受保護資源,或者云平臺返回處理后的數據。同時,為防止來自網絡的攻擊,可以在云平臺網元設備API endpoint處部署防止DDoS關鍵安全技術;為云平臺設備APIendpoint提供SSL保護機制,防止中間人攻擊篡改、刪除用戶隱私數據。SSL是大多數云安全應用的基礎,目前眾多黑客社區都在研究SSL,PaaS提供商應采取一定的技術手段來緩解SSL攻擊。用戶必須要確保有一個變更管理項目,在應用提供商指導下進行正確應用配置或打配置補丁,及時確保SSL補丁和變更程序能夠迅速發揮作用。開發人員需要熟悉云平臺的API、部署和管理執行的安全控制軟件模塊。同時,必須熟悉平臺特定的安全特性,這些特性被封裝成安全對象和Web服務,通過調用這些安全對象和Web服務實現在應用內配置認證和授權管理。