Partilhar via


Sobre recursos para Azure Pipelines

Serviços de DevOps do Azure | Azure DevOps Server | Azure DevOps Server 2022

Um recurso é qualquer coisa utilizada por um pipeline que existe fora do contexto do pipeline.

Os recursos oferecem os seguintes benefícios:

  • Maneiras de compartilhar algo, como um arquivo seguro ou senha, entre pipelines.
    • Exemplos de uso de recursos para compartilhamento são grupos variáveis, arquivos seguros e conexões de serviço. Em todos os casos, utiliza-se um recurso como uma forma de um pipeline acessar e consumir algo.
  • Uma ferramenta para melhorar a segurança através de verificações de acesso e outras restrições.
    • Por exemplo, pode-se limitar uma conexão de serviço para executar apenas num único pipeline. Você também pode garantir que um repositório só possa ser acessado a partir de um pipeline após uma verificação de aprovação manual.
  • Maneiras de melhorar a rastreabilidade para o seu pipeline e tornar mais fácil a resolução de problemas nos ambientes.
    • Por exemplo, você pode ver o número da última execução que foi implantada em um ambiente.

Compartilhar recursos entre pipelines

Compartilhe recursos entre diferentes pipelines configurando-os na UI dos pipelines. Em seguida, faça referência a esses recursos em uma tarefa. Você também pode aceder a alguns recursos partilhados com a sintaxe YAML de pipeline.

Exemplos de compartilhamento de recursos com a interface do usuário de pipelines incluem arquivos seguros, grupos de variáveis e conexões de serviço. Com a sintaxe resources, exemplos incluem aceder a pipelines, repositórios e pacotes.

Como um recurso é usado em um pipeline depende do tipo de pipeline e tipo de recurso.

Para pipelines YAML:

  • Conexões de serviço e arquivos seguros são usados diretamente como entradas para tarefas e não precisam ser pré-declarados.
  • Os grupos de variáveis usam a group sintaxe.
  • Pipelines e repositórios usam a sintaxe resources.

Por exemplo, para usar grupos de variáveis em um pipeline, adicione suas variáveis na Biblioteca de Pipelines>. Em seguida, podes fazer referência ao grupo de variáveis no teu pipeline YAML com a sintaxe variables.

variables:
- group: my-variable-group

Para chamar um segundo pipeline do seu pipeline com a resources sintaxe, consulte 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

Use recursos para melhorar a segurança

Você pode melhorar a segurança do seu pipeline com recursos, identificando como o recurso é consumido e como impedir o acesso não autorizado.

Apenas para pipelines YAML, defina os recursos como protegidos ou abertos. Quando um recurso está protegido, você pode aplicar aprovações e verificações para limitar o acesso a usuários específicos e pipelines YAML. Os recursos protegidos incluem conexões de serviço, pools de agentes, ambientes, repositórios, grupos de variáveis e arquivos seguros.

Recurso Como é consumido? Como evitar que um pipeline não intencional use isso?
Conexões de serviço Requerido por tarefas que utilizam a conexão de serviço como entrada num ficheiro YAML. Protegido com verificações e permissões de processos. As verificações e permissões de pipeline são controladas pelos usuários da conexão de serviço. Um proprietário de recurso pode controlar quais pipelines podem aceder a uma conexão de serviço. Você também pode usar permissões de pipeline para restringir o acesso a pipelines YAML particulares e a todos os pipelines clássicos.
variáveis secretas em grupos de variáveis Existe uma sintaxe especial para o uso de grupos de variáveis em um pipeline ou em um trabalho. Um grupo de variáveis é adicionado como uma ligação de serviço. Protegido com verificações e permissões de processos. As verificações e permissões de pipeline são controladas por usuários de grupos variáveis. Um proprietário de recurso pode controlar quais pipelines podem acessar um grupo de variáveis. Você também pode usar permissões de pipeline para restringir o acesso a pipelines YAML particulares e a todos os pipelines clássicos.
ficheiros seguros Os arquivos seguros são consumidos por tarefas (exemplo: tarefa Baixar arquivo seguro). Protegido com verificações e permissões de processos. As verificações e permissões de pipeline são controladas pelos utilizadores de ficheiros seguros. Um proprietário de recurso pode controlar quais pipelines podem acessar arquivos seguros. Você também pode usar permissões de pipeline para restringir o acesso a pipelines YAML particulares e a todos os pipelines clássicos.
Pools de agentes Há uma sintaxe especial para usar um pool de agentes para executar um trabalho. Protegido com verificações e permissões de processos. As verificações e permissões de pipeline são controladas pelos usuários do pool de agentes. Um proprietário de recurso pode controlar quais pipelines podem acessar um grupo de agentes. Você também pode usar permissões de pipeline para restringir o acesso a pipelines YAML particulares e a todos os pipelines clássicos.
ambientes Há uma sintaxe especial para usar um ambiente em um YAML. Protegido com verificações e permissões de pipeline que são controladas por usuários do ambiente. Você também pode usar permissões de pipeline para restringir o acesso a um ambiente específico.
repositórios Um script pode clonar um repositório se o token de acesso ao trabalho tiver acesso ao repositório. Protegido com verificações e permissões de fluxo de trabalho controladas por colaboradores do repositório. O proprietário de um repositório pode restringir a propriedade.
artefactos, itens de trabalho, pipelines Os artefatos de pipeline são recursos, mas os artefatos do Azure não são. Um script pode baixar artefatos se o token de acesso ao trabalho tiver acesso ao feed. Um artefato de pipeline pode ser declarado como um recurso na seção de recursos – principalmente com o objetivo de acionar o pipeline quando um novo artefato estiver disponível, ou para consumir esse artefato no pipeline. Artefatos e itens de trabalho têm seus próprios controles de permissões. Não há suporte para verificações e permissões de pipeline em feeds.
contentores, embalagens, webhooks Eles vivem fora do ecossistema de DevOps do Azure e o acesso é controlado com conexões de serviço. Há uma sintaxe especial para usar todos os três tipos em pipelines YAML. Protegido com verificações e permissões de tubulação controladas pelos utilizadores de ligação de serviço.

Utilizar recursos para rastreabilidade

Os ambientes suportam os seguintes tipos de recursos:

Próximos passos