天天看點

[10.14 Workshop] 容器 DevSecOps 實踐

場景介紹

[10.14 Workshop] 容器 DevSecOps 實踐

【漏洞風險識别,自動阻斷】研發同學在代碼疊代過程中,由于依賴錯誤的 Base Image,導緻容器鏡像存在高危風險。基于雲原生應用傳遞鍊支援鏡像的自動安全掃描及政策阻斷。當安全政策沒有通過後,研發同學應用的上線被中斷,并收到一條通知資訊。

【漏洞一鍵修複,自動傳遞】研發同學通過控制台一鍵修複漏洞,自動觸發安全掃描。當安全政策驗證通過後,會自動觸發鏡像的簽名并傳遞至 ACK 部署。

前提條件

  • 建立一個 ACR EE 執行個體-進階版,相關操作,請參考 建立企業版執行個體
  • 完成企業版執行個體的初始化操作,添加一個 VPC 作為雲安全中心通路企業版執行個體的通道。相關操作,請參考配置 VPC 通路控制
  • 開通 Codeup 代碼源,點選右側添加庫,選擇導入代碼庫。在導入代碼庫的彈框中,選擇 URL 導入。在源代碼庫位址中填寫: https://github.com/susanna8930/workshop 完成導入。

操作步驟

步驟一:綁定代碼源

登入

建立,點選個人設定,點選個人通路令牌。

  1. 在個人通路令牌中,選擇設定目前實驗所需的最小權限。
    • 使用者相關資訊的隻讀權限:read:user
    • 代碼庫的隻讀權限:read:repo
    • 代碼庫分支的隻讀權限:read:repo:branch
    • 代碼庫标簽的隻讀權限:read:repo:tag
    • 代碼庫Webhook的全部讀寫權限:read:repo:webhook、write:repo:webhook
    • 代碼組的全部讀權限:read:group
    • 企業相關資訊的隻讀權限:read:org
  1. 在個人資訊中,對話框左側導航欄單擊 HTTPS 密碼,檢視克隆賬号。擷取對應的賬号名。
ACR

控制台,在代碼源部配置設定置前面擷取到的賬号名及個人通路令牌。

[10.14 Workshop] 容器 DevSecOps 實踐

在代碼源頁面顯示 Codeup 已綁定,則說明綁定成功。參考關于

源代碼綁定的幫助文檔

步驟二:建立源代碼倉庫

  1. 在企業版執行個體管理頁面左側導航欄,選擇倉庫管理 > 鏡像倉庫,點選建立鏡像倉庫。
  2. 建立命名空間 demo,倉庫名稱 workshop,設定倉庫類型為公開。(僅 Workshop 示意,不建議生産環境開啟)。
  3. 選擇預先導入的 Codeup 代碼倉庫,預設開啟代碼變更自動建構鏡像,點選建立鏡像倉庫。
  4. 在鏡像倉庫頁面,單擊目标倉庫右側操作列中的管理。單擊左側導航欄中的建構,在建構規則設定區域單擊添加規則,配置建構規則,然後單擊确定。
    1. 建構資訊頁面:選擇 Branch 類型,從下拉框中選擇 master 分支。
    2. 鏡像版本頁面:填寫鏡像版本 v1.0,點選儲存。
[10.14 Workshop] 容器 DevSecOps 實踐

建立完成後,可在源代碼倉庫檢視對應的建構規則,點選立即建構,可從 Codeup 上拉取容器鏡像進行建構。

步驟三:建立雲原生應用傳遞鍊

  1. 在企業版執行個體管理頁面左側導航欄中選擇雲原生傳遞鍊 > 傳遞鍊。
  2. 在建立傳遞鍊頁面基本資訊區域,輸入以下資訊。
    • 傳遞鍊名稱:設定傳遞鍊的名稱。
    • (可選)傳遞鍊描述:設定傳遞鍊的基本描述。
    • 傳遞鍊作用範圍:選擇前面建立的源代碼倉庫。
  1. 在傳遞鍊的安全掃描節點,配置一下資訊。
    1. 安全引擎:選擇雲安全中心安全引擎。
    2. 是否阻斷:選擇阻斷。
    3. 是否删除:選擇不删除。
    4. 漏洞等級:選擇高危,漏洞個數:1個。
[10.14 Workshop] 容器 DevSecOps 實踐

步驟四:修改 Codeup 源代碼,觸發傳遞鍊自動建構及安全掃描

  1. ,任意修改 hello-world.go 的檔案内容。
  2. 在傳遞鍊的執行記錄頁面,檢視目前傳遞鍊的執行情況。稍等片刻,發現傳遞鍊已被阻斷,執行狀态為取消。

3. 點選操作詳情,檢視容器鏡像的漏洞情況。

[10.14 Workshop] 容器 DevSecOps 實踐

步驟五:一鍵修複容器鏡像,再次觸發傳遞鍊流程

  1. 點選一鍵修複,選擇不覆寫,将以 _fixed 為字尾形成新的容器鏡像版本。點選立即修複。
[10.14 Workshop] 容器 DevSecOps 實踐

2. 在傳遞鍊的執行記錄頁面,檢視目前傳遞鍊的執行情況。稍等片刻,發現容器鏡像已修複完成,順着傳遞鍊完成了後續流程。

[10.14 Workshop] 容器 DevSecOps 實踐

3. 點選安全掃描節點,發現鏡像漏洞已經全部修複完成了。

[10.14 Workshop] 容器 DevSecOps 實踐

總結

  • 【安全政策】容器安全防護需要“左移”,從容器供應鍊源頭的建構階段就保障鏡像的内容安全可信。
  • 【DevSecOps】基于 ACR 雲原生應用傳遞鍊,可将 DevOps 全面更新 DevSecOps。全鍊路可觀測、可追蹤、可自定義安全政策,保障端到端的容器業務安全。

附錄

  • 完整 Demo 視訊
  • 示意源代碼倉庫位址

繼續閱讀