沿襲我們的月度發佈傳統,極狐GitLab 發佈了 18.2 版本,該版本帶來了議題和任務的自定義工作流狀態、新的合併請求主頁、新的羣組概覽合規儀表盤、下載安全報告的 PDF 導出文件、中心化的安全策略管理(Beta)等幾十個重點功能的改進。下面是對部分重點功能的詳細解讀。
關於極狐GitLab 的安裝升級,可以查看官方指導文檔。
- 18.2.0 容器鏡像
registry.gitlab.cn/omnibus/gitlab-jh:18.2.0-jh.0
- 18.2.0 Helm Chart
helm search repo gitlab-jh
NAME CHART VERSION APP VERSION
gitlab-jh/gitlab 9.2.0 v18.2.0
gitlab-jh/gitlab-runner 0.79.0 18.2.0
極狐GitLab 18.2 重要改進
議題和任務的自定義工作流狀態
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | Y | |
| 私有化部署 | Y | Y |
不再侷限於簡單的開啓/關閉狀態,你可以自定義流程階段,以便更貼合團隊的真實工作方式。
與依賴標籤不同的是,現在你可以定義能夠準確反映你工作進度的狀態。有了可配置的狀態,你就可以:
- 定義自定義工作流以便更加貼合團隊的實際進度。
- 用合適的狀態(更加容易找到、更新以及報告)替代工作流標籤。
- 除了使用“已完成”或“被取消”來關閉議題外,讓完成結果更清晰化。
- 對工作項狀態進行更精準的過濾和報告來獲得更好的項目洞察。
- 當議題在不同列中移動時,議題看板中使用狀態可以自動更新。
- 跨多個工作項的批量更新狀態讓工作流管理更高效。
- 為關聯工作項使用狀態可見性來追蹤依賴。
自定義工作流狀態還支持在評論中的快捷操並和極狐GitLab 開啓/關閉系統自動同步。
新的合併請求主頁
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | Y | Y |
| 私有化部署 | Y | Y | Y |
當你同時擔任提交者和審核者,處理幾十個合併請求時,在多個項目之間管理代碼評審可能會讓人應接不暇、難以應對。
新的合併請求主頁通過智能優先排序當前最需要你關注的內容,徹底改變了你管理評審任務的方式,並提供了兩種強大的視圖模式:
- 工作流視圖:通過合併請求的審核狀態進行組織,通過代碼審核工作流中的階段進行分組。
- 角色視圖:通過你是否是作者或審核者來對你的合併請求進行分組,能讓你的職責劃分更清晰。
活躍選項表明合併請求需要你的關注,已合併顯示最近完成的工作,搜索提供了完整的過濾能力。
新的主頁通過將作者和審核者結合起來擴展了你對合並請求的可見性,確保你從不會忽略已經委託給你的工作。
使用不可變容器標籤來提高安全
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | ||
| 私有化部署 | Y |
容器倉庫對現代化 DevSecOps 團隊來説是非常重要的基礎設施。然而,即使已經具有了受保護容器標籤功能,組織依舊面臨挑戰:標籤在創建後,具有足夠權限的用户是可以修改標籤的。這對於通過使用指定容器鏡像標籤版本以確保生產穩定的團隊來説充滿了風險。任何修改——即使是認證用户——也可能引入非期望的比啊功能或破壞部署完整性。
有了不可變容器標籤,您可以保護容器鏡像免受非期望變更。一旦標籤被創建而且和不可變規則相匹配,那麼任何人都無法修改該容器鏡像。現在你可以:
- 使用 RE2 正則表達式模式來為每個項目創建至多 5 個保護規則(包括受保護和不可變規則)。
- 保護重要的標籤,諸如 latest、語義版本(比如 v1.0.0)或從任何修改而來的候選版本。
- 確保不可變標籤能從清除策略中自動排除在外。
不可變容器標籤需要下一代容器鏡像,這在 JihuLab.com 上是默認啓用的。對於私有化部署用户,你必須啓用元數據數據庫來使用不可變容器標籤。
新的羣組概覽合規儀表盤
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | ||
| 私有化部署 | Y |
合規中心是合規團隊的重要位置,來對合規狀態報告、違規報告以及羣組的合規框架進行管理。
新的羣組概覽合規儀表盤能夠讓合規經理對羣組中所有項目的合規信息有一個聚合視圖。第一個迭代能夠展示如下信息:
- 特定合規框架覆蓋的項目百分比。
- 羣組所有項目中不合格需求的佔比。
- 羣組所有項目中受控失敗的佔比。
- 需要“注意”的特定合規性。
有了此新的羣組視圖,合規管理者現在擁有一個統一的視圖,可以清晰地從高層次瞭解其合規狀況。
為實例映射工作空間 Kubernetes 代理
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | |||
| 私有化部署 | Y | Y |
現在,極狐GitLab 管理員可以為實例映射啓用的工作空間 Kubernetes 代理了。然後用户就可以從實例的任意羣組或項目創建工作空間了。
此項變更通過允許組織一次性創建工作空間 Kubernetes 代理來增加工作空間的可擴展性,而且可以讓這些代理能夠被整個實例上的當前和將來創建的項目所訪問。
下載安全報告的 PDF 導出文件
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | ||
| 私有化部署 | Y |
為了和其他利益相關者溝通你在漏洞管理努力方面的狀態和進度,現在你可以將每個項目獲羣組的安全儀表盤導出為 PDF 文檔。
中心化的安全策略管理(Beta)
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | |||
| 私有化部署 | Y |
在合規性至關重要的大型企業中,團隊常常苦於策略管理分散在多個項目和羣組中難以統一管理。沒有集中式的可見性,確保一致的強制執行就會變成一件非常耗時的事情,而且增加了合規風險。
集中式安全策略管理通過單獨設計的合規和安全策略(CSP)羣組來在極狐GitLab 整個組織中引入了統一的方法來創建、管理並強制執行安全策略。這能夠讓安全團隊:
- 一次定義策略並在任意地方應用:通過 CSP 一次性創建實例範圍的安全策略並在所有羣組和項目上自動強制執行。
- 配置業務單元策略:頂級羣組可以配置他們專屬的策略體系同時從 CSP 羣組繼承組織策略。
- 確保遵循最小權限原則:為實例建立中心化的策略管理層。
此次 Beta 版的發佈,為中心化策略管理建立了基礎框架,可以支持所有現有的安全策略類型,而且對於羣組、項目或實例來説是可配置的。
極狐GitLab 18.2 中的其他改進
管理員可在無需用户確認的情況下重新指派貢獻
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | |||
| 私有化部署 | Y | Y | Y |
現在,管理員可以將貢獻從佔位用户重新指派給活躍用户而無需用户確認。此項功能為大型組織解決了一個關鍵挑戰:當用户不檢查其郵件來審批重新指派時,流程就會被卡住。
在啓用了用户模擬的極狐GitLab 實例上,管理員可以維護數據的完整性同時簡化用户的管理工作流。重新指派完成後用户依舊可以接收到通知郵件,這是為了確保整個流程的透明性。
為團隊成員指派史詩
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | Y | |
| 私有化部署 | Y | Y |
現在你可以為個體指派史詩,這就明確了誰負責統籌戰略舉措。史詩指派人有助於你在項目組合層面明確歸屬,讓長期目標的決策更快速、責任歸屬更清晰。團隊可以快速看到對於史詩的進度、依賴或範圍變更應該去聯繫誰。
配置史詩展示外觀
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | Y | |
| 私有化部署 | Y | Y |
現在當你查看你的工作項列表時,你可以完全控制要顯示哪些元數據,以便更加容易地聚焦在那些對你最重要的信息上。
之前,所有的元數據字段都是可見的,這可能讓對工作項的整體掃描變成巨量的工作。現在,你可以通過關閉或打開指定的字段,諸如指派人、標記、日期或里程碑來自定義你的視圖。
GLQL 視圖排序和分頁
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | Y | Y |
| 私有化部署 | Y | Y | Y |
此版本對 GLQL 視圖引入了增強排序和分頁,讓大型數據集的工作更簡單。
現在你可以對關鍵字段進行排序,包括截止日期、健康狀態以及受歡迎度等,來快速找到最相關的項。新的“加載更多”分頁系統對數據加載提供了更好的控制,把原先一次性鋪滿整頁、令人應接不暇的大量結果,替換成可按需分批加載、易於消化的小塊內容。
這些改進能夠幫助團隊在複雜項目數據間進行高效導航而且在任何時候都能聚焦在最重要的事情上。
極狐GitLab Runner 18.2
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | Y | Y |
| 私有化部署 | Y | Y | Y |
我們還發布了極狐GitLab Runner 18.0。極狐GitLab Runner 是一個輕量級、高擴展的代理,用來運行你的 CI/CD 作業並且將結果發送回極狐GitLab 實例。極狐GitLab Runner 和極狐GitLab CI/CD 綁定在一起,而極狐GitLab CI/CD 是一個開源且內置在極狐GitLab 裏面的服務。
修復的缺陷:
- 當你升級到極狐GitLab Runner 18.1.0 以後,Runner 會在 FIPS 模式下失敗
- 使用
FF_USE_DUMB_INIT_WITH_KUBERNETES_EXECUTOR時,無法啓動作業 pod ubi-fips鏡像並非極狐GitLab Runner FIPS 的默認 helper 鏡像版本- 當你禁用極狐GitLab 模式後,Runner 依舊會有一定時間的離線
容器掃描支持多架構容器鏡像
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | ||
| 私有化部署 | Y |
容器掃描功能現已內置 Linux Arm64 架構的容器鏡像版本。當在 Linux Arm64 runner 上運行時,分析器將不再需要模擬,就會讓分析更加快速。此外,現在你還可以在你想掃描的平台上通過設置 TRIVY_PLATFORM環境變量來掃描多架構鏡像。
改進了容器掃描的歸檔文件支持
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | Y | Y |
| 私有化部署 | Y | Y | Y |
極狐GitLab 18.2 為容器掃描帶來了改進的歸檔文件掃描支持。如果特定軟件包中的某個漏洞在多個鏡像中都存在,你現在會看到該漏洞分別歸屬到每一張被掃描的鏡像。
對 JavaScript 的靜態可達性支持
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | ||
| 私有化部署 | Y |
現在,組件成分分析對 JavaScript 庫支持靜態可達性分析了。現在你可以將靜態可達性產生的數據用作你管理和修復決策的一部分了。靜態可達性數據還可以和 EPSS、KEV 以及 CVSS 分數一起使用來為你的漏洞提供一個更加聚焦的視圖。
漏洞報告中的可達性過濾
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | ||
| 私有化部署 | Y |
現在用户可以在漏洞報告中對數據進行過濾以僅包含可觸達的漏洞。可觸達的漏洞代表漏洞:
- 在通用漏洞披露”(CVE)列表中。
- 作為顯示導入庫的一部分。
審批策略的源分支模式例外
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | ||
| 私有化部署 | Y |
之前,使用 GitFlow 的團隊在將 release/*分支合併到 main分支的時候總是會遇到審批死鎖問題,因為絕大多數貢獻者都已經參與到了版本開發中,因此他們就不能作為審核人員。
合併請求審批策略中的分支模式例外通過繞過指定源-目標分支中的審批要求來解決了此問題。為分支到主分支的合併配置嚴格審批的同時還簡化了發版到主分支的工作流。
關鍵能力:
- 基於模式的配置:定義源分支模式,諸如
release/*或hotfix/*來繞過審批要求。 - 簡化集成:分支例外是直接集成到現有合併請求審批策略中的,而且可以通過 UI 或
policy.yml來進行配置。
這既消除了採用複雜變通方案的必要,又保留了合併請求審批策略在標準開發工作流中的安全優勢。
漏洞 ID 添加到漏洞報告的 CSV 導出中
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | ||
| 私有化部署 | Y |
之前,漏洞報告的 CSV 導出是不報告漏洞 ID 的。現在你可以在 CSV 導出的漏洞列表中找到每一個漏洞的 ID。
自定義管理員角色處於 beta
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | |||
| 私有化部署 | Y |
自定管理員角色能夠給私有化部署實例的管理員帶來精細化的權限管控。相比賦予所有訪問權限,現在,管理員可以創建特定的角色來僅訪問用户所需的指定功能。此項功能可以幫助組織實現對於管理功能的最小權限實踐,從過度授權訪問方面上減少了安全風險,而且提高了運營效率。
停用向審計流目標的數據推送
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | ||
| 私有化部署 | Y |
之前,是沒有辦法臨時停止向審計流目的地推送數據的。在有些情況下你可能想這麼做,包括對於流的連接性進行故障排查或在不刪除配置的情況下對配置進行變更並重啓。
在極狐GitLab 18.2 中,我們增加了一個開關來打開或關閉審計流。當審計流關閉時,審計事件就不會被髮送到所選擇的目的地。當再次激活時,審計流又會被再次推送到所選擇的目的地。
對所有審計流目的地進行功能過濾
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | ||
| 私有化部署 | Y |
之前,特定的審計流目的地沒有可用的過濾功能。
現在對於所有的目的地,我們支持通過 UI 進行功能過濾,可過濾的功能包括:
- 通過審計事件類型。
- 通過羣組或項目。
此項變更還意味着審計事件目的地(諸如 AWS)現在可以通過審計事件進行過濾了。
從佔位用户重新指派為非活躍用户
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | |||
| 私有化部署 | Y | Y | Y |
之前,管理員可將貢獻和成員關係從佔位用户重新指派給活躍用户。
現在在私有化部署實例上,管理員還可以將貢獻和成員關係從佔位用户重新指派給非活躍用户。此項功能能夠允許你保留實例上被阻塞、禁止或停止用户的貢獻歷史和成員關係。
管理員需要首先啓用此設置,啓用後,在重新指派期間,此項設置能夠通過跳過用户確認來簡化用户管理同時保持安全的訪問控制。
為史詩(Epic)分配里程碑,以強化長期規劃
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | Y | |
| 私有化部署 | Y | Y |
現在你可以直接將里程碑指派給史詩,實現從戰略舉措到具體執行的自然級聯規劃。這項增強功能幫助你把季度規劃或 SAFe 項目增量等更長期規劃節奏,與史詩對齊;同時仍可保持迭代專注於開發衝刺。
有了這樣清晰的層級結構,你可以減少管理工作量而且能更清楚地洞察戰略舉措如何按照組織既定時間框架推進。
在史詩頁面上以抽屜形式或完成形式打開史詩
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | Y | |
| 私有化部署 | Y | Y |
你現在可以通過新增的切換開關,在從列表頁打開史詩時,選擇以抽屜視圖還是整頁導航方式呈現。
使用抽屜形式能夠快速查看史詩詳情同時保持史詩列表內容,或當你需要更多屏幕空間以進行詳情編輯和完整導航時,你就可以打開完整頁面。
極狐GitLab Flavored Markdown 工作項引用和編輯器改進
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | Y | Y |
| 私有化部署 | Y | Y | Y |
現在你可以在極狐GitLab Flavored Markdown 中使用統一的 [work_item:123]語法來引用議題、史詩和工作項了。此項新的語法能夠和現有的引用(諸如對議題的 #123或史詩的 &123)一起工作,而且支持使用 [work_item:namespace/project/123]進行跨項目引用。
純文本編輯器還新增了一項偏好設置:在你按下回車鍵時保持光標縮進,從而讓撰寫嵌套列表、代碼塊等結構化內容變得更加輕鬆。
觸發器作業可以鏡像下游流水線狀態
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | Y | Y |
| 私有化部署 | Y | Y | Y |
之前,使用 strategy:depend的觸發器作業在處理複雜流水線狀態(諸如手動作業、阻塞流水線或在執行期間具有變更狀態的嘗試流水線)會有限制。這可能會讓下游流水線看起來像是正在運行,但是實際上它卻被手動作業所阻塞。新的 strategy:mirror關鍵字通過鏡像下游流水線的事實狀態來提供更精準的狀態報告。中間狀態包括 running、manual、blocked以及 canceled。這能夠讓團隊對於其下游流水線的當前狀態有更好的可見性,同時又不會打破當前工作流。
DAST 支持基於事件的一次性密碼 MFA
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | ||
| 私有化部署 | Y |
動態分析現在支持基於事件的一次性密碼(TOTP)多多因素認證。
現在你可以在啓用了 TOTP MFA 的項目上運行 DAST 掃描以確保完整的安全測試。此項強化功能可以通過在從部署了 MFA 的生產環境上鏡像到的配置中測試應用程序來交付更加精準的掃描結果。
對驗證 DAST 登錄成功提供了更完善的支持
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | ||
| 私有化部署 | Y |
之前, DAST_AUTH_SUCCESS_IF_AT_URL變更需要一個外部 URL 來匹配驗證成功的認證。此項工作對於靜態登錄頁面來説非常有效,但是對於登錄 URL 中包含動態元素的應用來説就很困難了。
現在,你可以在 DAST_AUTH_SUCCESS_IF_AT_URL變量中使用通配符模式來匹配動態的 URL 模式。此項改進為需要驗證認證成功的需求提供了靈活性,即使精確的 URL 在會話間進行變動。
顯示依賴路徑
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | ||
| 私有化部署 | Y |
之前,確定依賴是否是直接依賴或是由其他依賴導入的間接依賴是非常困難的。
現在你可以使用新的依賴路徑功能來確定一個庫是直接引入的還是通過其他方式導入的。你可以在項目羣組的依賴項列表以及漏洞詳情頁面上找到依賴路徑。該功能讓開發者可以根據庫的導入方式,判斷最高效的修復路徑。
完整的資產可見性安全清單現在處於 beta
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | ||
| 私有化部署 | Y |
應用安全團隊需要對其組織下面的所有資產安全有全面的可見性。之前,極狐GitLab 的安全工作流主要聚焦在項目級別的掃描器配置和項目級別的漏洞上,讓理解覆蓋率差距的理解、銷量以及基於風險的優先級排序決策變得很困難。
安全清單提供了極狐GitLab 實例的中心化視圖,能夠讓應用安全團隊:
- 獲取跨項目和羣組的安全覆蓋率完整可見性。
- 識別缺乏安全掃描和有配置缺陷的資產。
- 基於風險做出有依據的決策,明確將安全工作聚焦在何處。
- 持續追蹤安全態勢的改進情況。
此項目能夠幫助縮小單個項目安全和組織級的安全策略方面的差距,為你提供高效管理安全項目的資產清單基礎。
漏洞 GraphQL API 返回額外信息
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | ||
| 私有化部署 | Y |
現在你可以通過 GraphQL API 查詢漏洞最初被引入的流水線,以及最近一次檢測到它的流水線。漏洞 GraphQL API 現已新增:
initialDetectedPipeline:用來獲取漏洞是什麼時候被引入的額外提交信息,比如作者的用户名。latestDettectedPipeline:用來獲取漏洞是什麼時候被移除的額外提交信息,比如提交 SHA。
憑據清單現已包含服務賬號令牌
| 基礎版 | 專業版 | 旗艦版 | |
|---|---|---|---|
| SaaS | Y | ||
| 私有化部署 | Y |
現在,極狐GitLab 在憑據清單中支持服務賬號令牌了,能夠給你更好的可見性以及控制在你軟件供應鏈安全中使用的多種認證方式。憑據清單提供了一個在你組織中使用憑據完整的視圖。