使用安全文件
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
本文介绍了安全文件以及如何在 Azure Pipelines 中使用它们。 安全文件是一种存储文件的方式,可以在管道中使用这些文件,而无需将其提交到存储库中。
可以使用安全文件库来存储文件,例如:
- 签名证书。
- Apple 预配描述文件。
- Android 密钥存储文件。
- SSH 密钥。
每个安全文件的大小限制为 10 MB。
安全文件以加密形式存储在服务器上,只能从管道任务中读取。 安全文件是一种受保护的资源。 可以使用审批、检查和管道权限来限制对文件的访问权限。 安全文件还会使用库安全模型角色。
先决条件
- 有权创建管道和添加库项目的 Azure DevOps 项目。
- 要在管道中安全地使用的证书、密钥库或预置文件。
添加安全文件
在 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 预配配置文件任务是一个使用安全文件的任务的简单示例。 有关源代码,请参阅 InstallAppleProvisioningProfileV1。
要在生或发布任务期间处理安全文件,请参阅通用模块中的任务。