다음을 통해 공유


향상된 보안 및 워크플로 효율성

이 스프린트는 보안을 강화하고 워크플로 효율성을 간소화하는 데 초점을 맞춘 다양한 개선 사항을 제공합니다. 이러한 개선 사항 중에서 Azure Pipelines의 서비스 연결 만들기 환경입니다. 이를 통해 팀은 워크로드 ID 페더레이션을 사용하여 기존 관리 ID를 활용하는 서비스 연결을 설정할 수 있습니다. 또한 구성을 간소화하고 과도하게 권한 있는 ID의 위험을 줄입니다.

또한 Azure Repos에서 인어 구문이 있는 markdown 파일이 이제 파일 미리 보기 및 끌어오기 요청에서 다이어그램으로 렌더링되어 설명서에 더 명확한 시각적 개체를 제공한다는 사실을 알려드립니다.

마지막으로 GitHub Advanced Security에서 끌어오기 요청 주석은 이제 종속성 및 코드 검사에 대한 인라인 알림을 제공하여 팀이 코드 검토 중에 잠재적인 문제를 감지하고 해결하는 프로세스를 간소화합니다.

자세한 내용은 릴리스 정보를 확인하세요.

일반

Azure DevOps용 GitHub Advanced Security

Azure Boards:

Azure Repos

Azure Pipelines

Azure Artifacts

Wiki

일반

클립보드에 코드 블록 복사

개발자 커뮤니티의 피드백에 따라 렌더링된 markdown의 모든 코드 블록에 대한 "클립보드에 복사" 단추가 도입되었습니다. 이 향상된 기능은 Wiki 페이지, Repos의 markdown 파일 미리 보기, 끌어오기 요청 토론 및 설명 및 작업 항목 토론에서 사용할 수 있습니다.

클립보드에 복사하는 스크린샷.

Microsoft Entra 프로필 정보(미리 보기)

Microsoft Entra 프로필 정보가 Azure DevOps에 통합되어 별도의 프로필 업데이트가 필요하지 않습니다. 미리 보기를 사용하려면 미리 보기 기능에서 Microsoft Entra 프로필 정보를 사용하도록 설정합니다.

Microsoft Entra 프로필 정보 켜기 스크린샷

사용하도록 설정 하면 프로필 설정 이 읽기 전용이며 Microsoft Entra에서 자동으로 채워집니다. 이전 설정으로 되돌리거나 피드백을 제공하려면 미리 보기를 끄고 의견을 공유합니다.

Azure DevOps용 GitHub Advanced Security

종속성 및 코드 검사에 대한 끌어오기 요청 주석

고급 보안 로드맵 의 일부로 풀 요청 주석을 사용할 수 있습니다. 종속성 및/또는 코드 검색 작업을 포함하는 빌드 유효성 검사 정책과 연결된 파이프라인을 사용하는 끌어오기 요청에 대한 인라인 주석이 표시됩니다.

관련 분기에 대한 빌드 유효성 검사 정책을 만드는 것 외에는 추가 옵트인이 필요하지 않습니다.

Show more details 주석을 클릭하면 해당 경고에 대한 경고 세부 정보 보기로 연결됩니다.

자세한 내용 표시 클릭 스크린샷

자세한 내용은 여기의 최신 블로그 게시물을 참조하세요.

종속성 검사에 대한 새로운 pip 검색 전략

종속성 검사는 이제 pip 설치 보고서 기능을 기반으로 Python: PipReport에 대한 새로운 검색 전략을 사용합니다. 이 업데이트는 실제 실행에서 검색할 정확한 버전을 결정하기 위해 환경 지정자를 준수하여 정확도를 pip install 향상시킵니다. 기본적으로 탐지기는 종속성 그래프 빌드하는 데 사용합니다pypi.org. 필요에 따라 파이프라인 환경 변수 PIP_INDEX_URL 를 설정하여 대신 종속성 그래프 생성할 수 있습니다. 피드에 액세스하는 인증 문제가 있는 경우 피드에 PipAuthenticate@1 액세스할 수 있도록 파이프라인 작업을 설정해야 할 수 있습니다.

검색 전략에 대한 자세한 내용은 Pip 검색 설명서를 참조하세요.

Azure Boards

작업 항목 양식의 향상된 태그 관리

Azure Boards의 태그 관리가 향상되어 보다 간소화된 환경을 제공합니다. 삭제된 태그는 작업 항목 양식의 제안된 목록에 더 이상 표시되지 않아 활성 태그만 표시됩니다.

작업 항목 주석의 향상된 이미지 지원

이미지를 작업 항목 주석에 붙여넣기 위한 지원이 향상되었습니다. 이제 Microsoft Teams, 전자 메일 및 Word 문서와 같은 원본의 이미지를 작업 항목의 토론 섹션에 직접 붙여넣을 수 있습니다.

GitHub 끌어오기 요청 인사이트

GitHub 끌어오기 요청과 Azure Boards 간의 통합이 향상되었습니다. 열기 및 닫힌 상태를 표시하는 것 외에도 끌어오기 요청이 초안 모드에 있는지, 검토가 필요한지, 상태 확인이 필요한지 확인할 수 있습니다. 모두 끌어오기 요청을 열 필요가 없습니다.

Gif를 사용하여 향상된 GitHub 끌어오기 요청 인사이트를 데모합니다.

이 기능을 사용하도록 설정하려면 GitHub의 Boards 앱으로 이동하여 체크에 대한 읽기 및 쓰기 액세스에 대해 요청된 업데이트된 권한을 수락해야 합니다.

업데이트된 권한의 스크린샷입니다.

Azure Repos

끌어오기 요청에 대한 대상 분기 구성

리포지토리에서 여러 분기를 관리하는 것은 특히 새 끌어오기 요청을 만들 때 어려울 수 있습니다. 끌어오기 요청에 대한 새 대상 분기 구성 기능을 사용하면 이제 기본 설정 대상 분기 목록을 지정하여 끌어오기 요청 제안이 더 정확하고 관련성이 높도록 할 수 있습니다. 이렇게 하면 워크플로를 간소화하고 잘못된 분기를 대상으로 지정할 가능성을 줄일 수 있습니다. 이 기능을 사용하려면 리포지토리의 기본 분기 파일을 만듭니 .azuredevops/pull_request_targets.yml 다. 이 YAML 파일에는 후보 분기와 일치하는 분기 이름 또는 접두사가 있는 목록이 pull_request_targets 포함되어야 합니다. 예시:

pull_request_targets:
  - main
  - release/*
  - feature/*

이 구성에서는 주 분기의 우선 순위가 지정되지만 적절한 경우 분기부터 release/ 시작하거나 feature/ 고려됩니다. 구성은 다음 시나리오에서 적용됩니다.

  • 끌어오기 요청 제안: 분기를 Azure DevOps로 푸시한 후 Repos 페이지에서 해당 분기에서 끌어오기 요청을 만들고 대상 분기를 동적으로 선택하는 것이 좋습니다.
  • 끌어오기 요청 URL: sourceRef 매개 변수를 사용하여 끌어오기 요청 만들기 페이지로 직접 이동하지만 targetRef 매개 변수를 생략하면 Azure DevOps는 이 동적 선택에 따라 대상 분기를 선택합니다.

팁 커밋의 첫 번째 부모 기록에서 일관성을 보장하기 위해 끌어오기 요청 정책으로 보호되는 분기만 포함하는 것이 좋습니다.

markdown 파일 미리 보기에서 인어 다이어그램 지원

인어 구문을 포함하는 Markdown 파일은 이제 리포지토리 파일 브라우저 및 끌어오기 요청의 파일 미리 보기 내에서 다이어그램으로 렌더링됩니다. 이렇게 하면 리포지토리에 더 풍부한 설명서를 추가할 수 있습니다.

markdown 파일 미리 보기의 인어 다이어그램 스크린샷

Azure Pipelines

Azure Pipelines 호스팅 에이전트의 Ubuntu 24.04

이제 Ubuntu 24.04 이미지를 Azure Pipelines 호스팅 에이전트에 사용할 수 있습니다. 이 이미지를 사용하려면 다음을 포함 vmImage:'ubuntu-24.04'하도록 YAML 파일을 업데이트합니다.

- job: ubuntu2404
  pool:
    vmImage: 'ubuntu-24.04'
  steps:
  - bash: |
      echo Hello from Ubuntu 24.04
      lsb_release -d

참고 항목

이미지 레이블은 ubuntu-latest 올해 말까지 ubuntu-22.04를 계속 가리킵니다.

설치된 소프트웨어에 대한 Ubuntu 24.04 이미지 추가 사항을 참조하세요 .

Azure 통합 테스트에서 워크로드 ID 페더레이션 사용

6월에 Azure ID 라이브러리 for.NET, C++, Go, Java, JavaScript 및 Python 은 워크로드 ID 페더레이션에 대한 지원을 추가했습니다. 이렇게 하면 AzureCLI@2 및 AzurePowerShell@5 작업에서 실행되는 코드가 클래스를 사용하여 Microsoft Entra(예: Azure에 액세스)AzurePipelinesCredential로 인증하는 기능이 추가되었습니다.

많은 고객이 다른 작업에서 호출된 통합 테스트에서 Azure ID 라이브러리를 사용하고 있습니다. 이제 DotNetCoreCLI@2, Maven@4VSTest@3 작업에 대한 AzurePipelinesCredential 지원을 추가했습니다.

워크로드 ID 페더레이션으로 구성된 Azure 서비스 연결로 속성을 설정할 connectedService 수 있습니다. AzurePipelinesCredential 설정해야 합니다SYSTEM_ACCESSTOKEN.

- task: DotNetCoreCLI@2
  inputs:
    command: 'run'
    connectedService: <Azure service connection configured with workload identity federation>
  env:
    SYSTEM_ACCESSTOKEN: $(System.AccessToken)

자세한 AzurePipelinesCredential내용은 이 블로그 게시물을 참조하세요.

향상된 관리 ID 지원을 통해 새로운 Azure 서비스 연결 만들기 환경

새 Azure 서비스 연결 생성 환경은 향상된 유연성과 보안 기본값을 제공합니다. 또한 용어를 Microsoft Entra ID로 통일하여 Microsoft Entra ID 개체를 수동으로 생성하는 사용자가 다른 포털을 탐색할 때 더 쉽게 이해할 수 있습니다.

새 Azure Resource Manager 서비스 연결을 만들 때 ID를 구성하는 다양한 옵션을 이전에 사용한 고유한 최상위 항목을 대체하는 단일 통합 대화 상자에서 사용할 수 있습니다.

Azure 서비스 연결 최상위 옵션의 스크린샷

ID 유형 은 Azure 서비스 연결에서 지원하는 모든 인증 체계를 나열합니다.

ID 형식의 스크린샷.

앱 등록의 경우 독립적으로 자격 증명을 선택하여 워크로드 ID 페더레이션 또는 비밀이 될 수 있습니다.

Azure 서비스 연결 관리 ID 지원

이제 기존 관리 ID를 선택하고 이를 사용하여 워크로드 ID 페더레이션을 사용하는 서비스 연결을 구성할 수 있습니다. 먼저 사용자 할당 관리 ID를 만듭니다.

그런 다음, Azure 서비스 연결을 만들고 관리 ID ID 유형을 선택합니다. 이렇게 하면 관리 ID에서 페더레이션 ID 자격 증명이 구성됩니다.

관리 ID 지원의 스크린샷

에이전트(풀)에 할당된 관리 ID를 사용하는 옵션이 관리 ID(에이전트 할당)로 바뀌었습니다. 권한이 초과된 관리 ID를 공유하지 않도록 하려면 에이전트 풀에 할당된 관리 ID 대신 워크로드 ID 페더레이션이 있는 관리 ID를 사용하는 것이 좋습니다.

관리 ID는 Microsoft Entra ID에서 사용하지 않도록 설정된 경우 앱 등록을 만들 수 없는 사용자에게도 권장되는 옵션입니다.

워크로드 ID 페더레이션과 함께 관리 ID를 사용하려면 먼저 관리 ID를 보유하는 구독 및 리소스 그룹을 선택합니다. 이는 서비스 연결이 파이프라인 작업에서 액세스하는 구독과 다를 수 있습니다. 워크로드 ID 페더레이션에 대해 구성된 관리 ID를 선택합니다. 페더레이션 ID 자격 증명을 만들려면 관리 ID 기여자 역할 또는 관리 ID에 대한 동등한 권한이 필요합니다.

서비스 연결의 배포 범위로 사용할 구독을 계속 선택합니다.

관리 ID 선택 스크린샷

서비스 관리 참조 필드

일부 조직에서는 앱 등록의 서비스 관리 참조를 ITSM 데이터베이스의 관련 컨텍스트 정보로 채워야 합니다. 이렇게 해야 하는 경우 사용자는 서비스 연결 생성 시 이 참조를 지정할 수 있습니다.

자세한 정보

새 Azure 서비스 연결 만들기 환경은 다음 달에 배포됩니다. 자세한 내용은 다음을 참조하세요.

부모 단계가 실패할 때 자식 단계 실행

Azure Pipelines를 사용하여 배포를 더 쉽게 계속할 수 있도록 했습니다. 예를 들어 Pipelines를 사용하여 여러 Azure 지역에 새 버전의 애플리케이션을 배포하는 경우에 유용합니다.

5개 연속 Azure 지역에 배포해야 한다고 가정해 보겠습니다. 파이프라인에 각 지역에 대한 스테이지가 있고 각 스테이지에 태스크를 실행하는 AzureResourceManagerTemplateDeployment 작업이 있다고 가정하고 일부 원격 분석을 기록합니다. 후자는 가지고 좋은,하지만 중요하지 않습니다. 원격 분석을 로깅하는 데 문제가 있다고 상상해 보십시오. 이제 스테이지가 실패하고 배포가 중지됩니다.

이 스프린트부터 스테이지가 실패하면 자식 스테이지 실행을 다시 시작할 수 있습니다.

부모 단계가 실패하는 경우 자식 단계를 실행하는 스크린샷

Azure Artifacts

퍼블릭 피드 및 Cargo를 사용하여 Azure Artifacts에 대한 인증

Cargo 클라이언트의 제한으로 인해 인증은 전부 또는 전혀 수행하지 않습니다. 프라이빗 피드의 경우 인증이 전송되지만 익명 사용자를 허용해야 하는 퍼블릭 피드의 경우 사용 가능하거나 필요한 경우에도 인증이 전송되지 않습니다.

이제 인증된 사용자는 프라이빗 피드와 마찬가지로 공용 Azure Artifacts 피드에 연결할 수 있습니다. 사용자 또는 파이프라인 에이전트가 업스트림 원본에서 패키지를 저장할 수 있는 권한이 있는 경우 피드를 통해 crates.io 패키지에 액세스할 수 있습니다. 이 변경은 피드 관리자의 손에 다시 피드에 올 수 있는 패키지를 제어할 수 있습니다. 패키지가 업스트림 원본에서 피드로 가져오면 익명 사용자가 액세스할 수 있습니다.

인증을 보장하려면 레지스트리 URL에 피드 이름을 추가 ~force-auth 합니다. 공개 설명서를 통해 자세한 내용을 확인할 수 있습니다.

Wiki

WIKI에 HTML 기반 콘텐츠 붙여넣기 개선

HTML 기반 콘텐츠를 Wiki에 더 쉽게 붙여넣을 수 있습니다. 이제 링크, 목록, 테이블, 이미지, Excel 시트, Microsoft Teams 메시지, 전자 메일 및 Azure Data Explorer 쿼리와 같은 HTML 요소가 보다 원활한 편집을 위해 Markdown 구문으로 자동으로 변환됩니다.

다음 단계

참고 항목

이러한 기능은 향후 2~3주 동안 출시될 예정입니다.

Azure DevOps로 이동하여 살펴보세요.

피드백을 제공하는 방법

이러한 기능에 대해 어떻게 생각하는지 듣고 싶습니다. 도움말 메뉴를 사용하여 문제를 보고하거나 제안을 제공합니다.

제안하기

Stack Overflow에서 커뮤니티에서 조언과 질문에 답변할 수도 있습니다.

감사합니다,

댄 헬렘