Azure DevOps 服務 |Azure DevOps Server |Azure DevOps Server 2022
本文說明如何在 Azure Pipelines 中安全儲存及使用敏感檔案,例如憑證與金鑰,並搭配安全檔案庫。 安全檔案透過在伺服器上加密敏感資料並限制授權管道存取,有助於保護您的憑證及其他重要檔案安全。
使用安全檔案 庫 來儲存以下檔案:
- 簽署憑證
- Apple 配置設定檔
- Android 金鑰儲存檔案
- SSH 金鑰
每個安全檔案的大小限制為 10 MB。
安全檔案會以加密形式儲存在伺服器上,而且只能從管線工作取用。 安全檔案是受保護的資源。 您可以使用核准、檢查和管線許可權來限制檔案的存取權。 安全檔案也會使用 連結庫安全性模型 角色。
必要條件
| 要求 | 詳細資料 |
|---|---|
| Azure DevOps Project | - Azure DevOps 專案。 - 建立管線及新增資料庫項目的權限。 - 必要角色: - 專案管理員、貢獻者,或具有管理圖書館項目權限的自訂角色。 - 若要管理圖書館安全與權限,您需要專案管理員或同等權限。 - 設定: - 確保您的 Azure DevOps 組織允許管線資源存取。 - 確認專案的管線設定不限制安全檔案使用。 |
| 安全檔案 | - 你想在管線中安全使用的憑證、金鑰儲存或配置檔案。 - 檔案大小不得超過 10 MB。 |
新增安全檔案
在您的 Azure DevOps 專案中,移至 [管線連結>庫],然後選取 [安全檔案] 索引標籤。
選擇 + 安全檔案 來上傳一個安全的檔案。 瀏覽後上傳或拖放你的檔案。
選取 [確定]。 上傳檔案後,你可以刪除它,但無法替換。
定義安全性角色和許可權
你可以為圖書館中所有項目或個別項目定義安全角色的限制與權限。
若要為連結庫中的所有專案指派安全性角色,請在 [連結庫] 頁面上選取 [安全性]。
若要定義個別檔案的權限:
- 從 [ 保護檔案 ] 列表中選取檔案。
- 在 [ 安全檔案 ] 頁面頂端,選取:
- 設定 可存取檔案之用戶和安全性角色的安全性。
- 用來選取可存取檔案的 YAML 管線許可權 。
- 核准和檢查 ,以設定核准者和其他使用檔案的檢查。 如需詳細資訊,請參閱 核准和檢查。
授權 YAML 管線使用安全檔案
若要在 YAML 管線中使用安全檔案,請授權管線使用該檔案。 所有經典管線都能存取安全檔案。
若要授權管線或所有管線使用安全檔案:
- 在安全檔案頁面頂端,選取 [ 管線許可權]。
- 在 [ 管線許可權] 畫面上,選取 +,然後選取要授權的專案管線。 或者,若要授權所有管線使用檔案,請選取 [更多動作] 圖示,選取 [ 開啟存取權],然後再次選取 [ 開啟存取 權] 以確認。
取用管線中的安全檔案
若要取用管線中的安全檔案,請使用 下載安全檔案 公用程式工作。 管線代理程式必須執行 2.182.1 版或更新版本。 如需詳細資訊,請參閱 代理程式版本和升級。
下列範例 YAML 管線會下載安全的憑證檔案,並將其安裝在 Linux 環境中。
- task: DownloadSecureFile@1
name: caCertificate
displayName: 'Download CA certificate'
inputs:
secureFile: 'myCACertificate.pem'
- script: |
echo Installing $(caCertificate.secureFilePath) to the trusted CA directory...
sudo chown root:root $(caCertificate.secureFilePath)
sudo chmod a+r $(caCertificate.secureFilePath)
sudo ln -s -t /etc/ssl/certs/ $(caCertificate.secureFilePath)
注意
如果您在使用 Azure DevOps Server 內部部署下載安全檔案時看到 Invalid Resource 錯誤,請確定 伺服器上已停用 IIS 基本身份驗證 。
相關內容
若要建立使用安全檔案的自定義工作,請使用輸入與 task.json
secureFile類型。 如需詳細資訊,請參閱 瞭解如何建置自定義工作。安裝 Apple Provisioning Profile 工作是使用安全檔案的簡單範例。 如需原始程式碼,請參閱 InstallAppleProvisioningProfileV1。
若要在建置或發行工作期間處理安全檔案,請參閱 工作的一般模組 。