Utilizar ficheiros seguros
Serviços do Azure DevOps | Azure DevOps Server 2022 - Azure DevOps Server 2019 | TFS 2018
Os ficheiros seguros proporcionam uma forma de armazenar ficheiros que pode partilhar entre pipelines. Utilize a biblioteca de ficheiros seguros para armazenar ficheiros, tais como:
- Certificados de assinatura
- Perfis de Aprovisionamento da Apple
- Ficheiros do Android Keystore
- Chaves SSH
Estes ficheiros podem ser armazenados no servidor sem ter de os consolidar no seu repositório.
O conteúdo dos ficheiros seguros é encriptado e só pode ser utilizado quando for consumido a partir de uma tarefa. Os ficheiros seguros são um recurso protegido. Pode adicionar aprovações e verificações e definir permissões de pipeline. Os ficheiros seguros também podem utilizar o modelo de segurança Biblioteca.
O limite de tamanho para cada ficheiro seguro é de 10 MB.
Nota
No Microsoft Team Foundation Server (TFS) 2018 e as versões anteriores, os pipelines de compilação e versão são denominados definições, as execuções são denominadas compilações, as ligações de serviço são denominadas pontos finais de serviço, as fases são denominadas ambientes e as tarefas são chamadas fases.
Adicionar um ficheiro seguro
Aceda aFicheirosseguros da Biblioteca > de Pipelines>.
Selecione
Ficheiro seguro para carregar um novo ficheiro seguro. Navegue para carregar ou arrastar e largar o ficheiro. Pode eliminar este ficheiro, mas não pode substituí-lo.
Adicione permissões ao seu ficheiro.
- Aplique restrições de função de segurança para todos os ficheiros do separador Segurança naBiblioteca de Pipelines>.
- Para adicionar permissões para um ficheiro individual, na vista de edição do ficheiro, selecione Permissões de pipeline para definir permissões por pipeline. Em alternativa, selecione Segurança para definir funções de segurança.
- Também pode definir Aprovações e Verificações para o ficheiro. Para obter mais informações, veja Aprovações e verificações.
Consumir um ficheiro seguro num pipeline
Utilize a tarefa Transferir utilitário de Ficheiro Seguro para consumir ficheiros seguros num pipeline.
O exemplo de pipeline YAML seguinte transfere um ficheiro de certificado seguro e instala-o num ambiente 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)
FAQ
P: Como posso criar uma tarefa personalizada com ficheiros seguros?
R: Crie as suas próprias tarefas que utilizam ficheiros seguros através de entradas com o task.json
tipo secureFile
no .
Saiba como criar uma tarefa personalizada.
A tarefa Instalar Perfil de Aprovisionamento da Apple é um exemplo simples de uma tarefa que utiliza um ficheiro seguro. Veja a documentação de referência e o código fonte.
Para processar ficheiros seguros durante a compilação ou a versão, pode consultar o módulo comum disponível aqui.
P: A minha tarefa não consegue aceder aos ficheiros seguros. O que posso fazer?
R: Certifique-se de que o agente está a executar a versão 2.116.0 ou superior. Veja Versão do agente e atualizações.
P: Como devo proceder para autorizar um ficheiro seguro para utilização num pipeline específico?
R:
- No Azure Pipelines, selecione o separador Biblioteca .
- Selecione o separador Proteger ficheiros na parte superior.
- Selecione o ficheiro seguro que pretende autorizar.
- Selecione o botão Permissões de pipeline .
- Reveja e modifique o acesso para cada pipeline disponível.
P: Por que motivo vejo um Invalid Resource
erro ao transferir um ficheiro seguro com o Azure DevOps Server/TFS no local?
R: Certifique-se de que a Autenticação Básica do IIS está desativada no TFS ou Azure DevOps Server.
P: Como são protegidos os ficheiros seguros?
R: Os ficheiros seguros, os grupos de variáveis e as ligações de serviço estão protegidos da mesma forma no Azure DevOps. Também são todos recursos protegidos.
Os segredos são encriptados e armazenados na base de dados. As chaves para desencriptar segredos são armazenadas no Azure Key Vault. As chaves são específicas para cada unidade de escala. Portanto, duas regiões não partilham as mesmas chaves. As chaves também são rodadas em todas as implementações do Azure DevOps.
Os direitos de obtenção de chaves seguras são concedidos apenas aos principais de serviço do Azure DevOps e (em ocasiões especiais) a pedido para diagnosticar problemas. O armazenamento seguro não tem nenhuma certificação.
O Azure Key Vault é outra opção mais segura para proteger informações confidenciais. Se decidir utilizar o Azure Key Vault, pode utilizá-lo com grupos de variáveis.