共用方式為


關於 Azure Pipelines 的資源

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

資源是指任何在管線外部使用的東西。

資源提供下列優點:

  • 在跨管線間共用安全檔案或密碼的方法。
    • 使用資源進行共用的範例包括變數群組、安全檔案和服務連線。 在所有情況下,您都是使用資源作為處理流程存取和使用某個項目的方式。
  • 透過存取檢查和其他限制來增強 安全性 的工具。
    • 例如,您可以將服務連線限制為只在一個管線上執行。 您也可以確定存放庫只能在手動核准檢查之後從管線存取。
  • 改善管線 可追蹤性 的方法,並讓您更輕鬆地針對 環境進行疑難解答。
    • 例如,您可以看到最後一次部署到 環境 的執行次數。

跨管線共享資源

在管線 UI 內設定資源,以跨管線共用資源。 然後,在任務中參考那些資源。 您也可以使用 resources YAML 管線語法來存取一些共享資源。

使用管線 UI 共用資源的範例包括 安全檔案變數群組和服務 連線resources使用語法時,範例包括存取管線本身、存放庫和套件。

資源在管線中的使用方式取決於管線類型和資源類型。

針對 YAML 管線:

  • 服務連線和安全檔案會直接作為工作的輸入,而且不需要預先宣告。
  • 變數群組使用 group 語法。
  • 管線和存放庫會使用 resources 語法。

例如,若要在管線中使用變數群組,請在 Pipelines>Library 中新增變數。 然後,您可以在 YAML 管線中使用 variables 語法來參考變數群組。

variables:
- group: my-variable-group

若要使用 resources 語法從管線呼叫第二個管線,請參考 pipelines

resources:
  pipelines:
  - pipeline: SmartHotel-resource # identifier for the resource (used in pipeline resource variables)
    source: SmartHotel-CI # name of the pipeline that produces an artifact

使用資源來增強安全性

您可以使用資源來增強管線的安全性,方法是識別資源的取用方式,以及如何防止未經授權的存取。

若僅限於 YAML 管線,請將資源設定為 保護中或開放。 當資源受到保護時,您可以套用核准和檢查,以限制特定使用者和 YAML 管線的存取權。 受保護的資源包括服務連線、代理程式集區、環境、存放庫、變數群組和安全檔案。

資源 它是如何被使用的? 如何防止非預期的使用此管線?
服務連線 由 YAML 檔案中利用服務連線作為輸入的任務所執行。 使用檢查和管線權限進行保護。 檢查和管線許可權是由服務連線使用者所控制。 資源擁有者可以控制哪些管線可以存取服務連線。 您也可以使用管線許可權來限制特定 YAML 管線和所有傳統管線的存取。
變數群組中的秘密變數 存在一個用於在管線或作業中使用變數群組的特殊語法。 變數群組會以類似於服務連線的方式新增。 使用檢查和管線權限進行保護。 檢查和管線許可權是由變數群組使用者所控制。 資源擁有者可以控制哪些管線可以存取變數群組。 您也可以使用管線許可權來限制特定 YAML 管線和所有傳統管線的存取。
安全檔案 工作會取用安全檔案(例如: 下載安全檔案工作)。 使用檢查和管線權限進行保護。 檢查和管線許可權是由安全檔案使用者所控制。 資源擁有者可以控制哪些管線可以存取安全檔案。 您也可以使用管線許可權來限制特定 YAML 管線和所有傳統管線的存取。
代理程式池 有一種特殊語法可用於使用代理池來執行作業。 使用檢查和管線權限進行保護。 驗證和管道權限是由代理程式集區使用者所控制。 資源擁有者可以控制哪些管線可以存取代理程式集區。 您也可以使用管線許可權來限制特定 YAML 管線和所有傳統管線的存取。
環境 使用 YAML 定義環境變數有一種特殊的語法。 受到環境使用者控制之檢查和管線許可權的保護。 您也可以使用管線許可權來限制特定環境的存取。
存儲庫 如果作業存取令牌具有存放庫的存取權,腳本可以複製存放庫。 受到存放庫參與者控制的檢核和管線權限的保護。 存放庫擁有者可以限制擁有權。
工件、工作項目、流水線 管線成品 是資源,但 Azure Artifacts 不是。 如果作業存取令牌具有對該來源的存取權,腳本就可以下載成品。 管線成品可以在 resources 區段中宣告為資源,主要是用於在有新成品可用時觸發管線的意圖,或在管線中取用該成品。 文物和工作項目有自己的權限控制。 不支援對於供應項目的檢查和流程許可權。
容器套件Webhook 這些即時存在於 Azure DevOps 生態系統之外,並使用服務連線來控制存取權。 在YAML管線中使用這三種類型時,有一種特殊的語法。 檢查和管線許可權由服務連線使用者控制,以確保受到保護。

使用資源進行追蹤

環境支援下列資源類型:

後續步驟