다음을 통해 공유


Azure Pipelines의 리소스

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Azure Pipelines의 리소스 는 파이프라인이 연결하거나 사용하는 관리되는 엔터티입니다. 리소스에는 서비스 연결, 에이전트 풀, 환경, 변수 그룹, 보안 파일, 리포지토리 및 패키지가 포함됩니다. 리소스는 외부 시스템에 안전하게 연결하고, 파이프라인 간에 구성을 공유하고, 규정 준수 및 문제 해결을 위한 감사 내역을 유지할 수 있기 때문에 Azure Pipelines의 기본 사항입니다.

리소스는 다음과 같은 이점을 제공합니다.

파이프라인 간에 리소스 공유

파이프라인 UI 내에서 구성하여 파이프라인 간에 리소스를 공유합니다. 그런 다음 작업에서 해당 리소스를 참조합니다. YAML 파이프라인 구문을 사용하여 일부 공유 리소스에resources 액세스할 수도 있습니다.

파이프라인 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는 리소스가 아닙니다. 스크립트는 작업 액세스 토큰이 피드에 액세스할 수 있는 경우 Azure Artifacts를 다운로드할 수 있습니다. 파이프라인 아티팩트를 리소스 섹션에서 리소스로 선언할 수 있습니다. 주로 새 아티팩트를 사용할 수 있을 때 파이프라인을 트리거하거나 파이프라인에서 해당 아티팩트를 사용하려는 의도입니다. Azure Artifacts 및 작업 항목에는 고유한 권한 제어가 있습니다. 피드에 대한 검사 및 파이프라인 권한은 지원되지 않습니다.
컨테이너, 패키지, 웹후크 이들은 Azure DevOps 에코시스템 외부에 존재하며, 서비스 연결을 통해 액세스가 제어됩니다. YAML 파이프라인에서 세 가지 형식을 모두 사용하기 위한 특수 구문이 있습니다. 서비스 연결 사용자가 제어하는 검사 및 파이프라인 권한으로 보호됩니다.

추적 기능을 위해 리소스 사용

환경은 다음 리소스 유형을 지원합니다.

다음 단계

파이프라인 리소스 추가