Share via


적합한 인증 메커니즘 선택

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Azure DevOps Services와 인터페이스하는 애플리케이션의 경우 REST API와 같은 리소스에 액세스하려면 인증해야 합니다. 이 문서에서는 애플리케이션에 적합한 인증 메커니즘을 선택하는 데 도움이 되는 지침을 제공합니다.

다음 표에서는 다양한 애플리케이션 유형에 권장되는 인증 메커니즘을 간략하게 설명합니다. 시작하려면 다음 기본 설명, 예제 및 코드 샘플을 참조하세요.

애플리케이션 유형 설명 예시 인증 메커니즘 샘플 코드
대화형 클라이언트 쪽(REST) Azure DevOps Services REST API를 호출하는 사용자 상호 작용을 허용하는 클라이언트 애플리케이션 조직의 프로젝트를 열거하는 콘솔 애플리케이션 MSAL(Microsoft 인증 라이브러리) sample
대화형 클라이언트 쪽(클라이언트 라이브러리) Azure DevOps Services 클라이언트 라이브러리를 호출하는 사용자 상호 작용을 허용하는 클라이언트 애플리케이션 현재 사용자에게 할당된 버그를 열거하는 콘솔 애플리케이션 클라이언트 라이브러리 sample
대화형 JavaScript GUI 기반 JavaScript 애플리케이션 사용자에 대한 프로젝트 정보를 표시하는 AngularJS 단일 페이지 앱 JavaScript용 Microsoft 인증 라이브러리(MSAL JS) sample
PAT(개인용 액세스 토큰) 사용자 고유의 리소스에 액세스하기 위한 전달자 토큰 암호 대신 PAT를 사용합니다. Pats
비대화형 클라이언트 쪽 헤드리스 텍스트 전용 클라이언트 쪽 애플리케이션 사용자에게 할당된 모든 버그를 표시하는 콘솔 앱 디바이스 프로필 sample
Azure DevOps를 대상으로 하는 대화형 클라이언트 쪽 앱 사용자 상호 작용을 허용하는 클라이언트 애플리케이션은 Azure DevOps 사용자를 인증합니다. Azure DevOps 사용자가 할당된 버그를 볼 수 있도록 하는 콘솔 애플리케이션 클라이언트 라이브러리(대화형 및 Windows 인증) sample
대화형 웹 사용자 동의가 필요한 GUI 기반 웹 애플리케이션 빌드 요약을 표시하는 사용자 지정 웹 대시보드 Azure DevOps OAuth sample
서비스 주체 또는 관리 ID 조직의 Azure DevOps 리소스에 액세스할 수 있는 애플리케이션 작업 항목을 만드는 Azure 함수 서비스 주체 및 관리 ID sample
Azure DevOps Server 애플리케이션 클라이언트 OM 라이브러리를 사용하는 Azure DevOps Server 앱 팀 버그 대시보드를 표시하는 Azure DevOps Server 확장 클라이언트 라이브러리 sample
Azure DevOps Services 확장 Azure DevOps Services 확장 Agile 카드 VSS 웹 확장 SDK sample

Azure DevOps의 보안 및 ID 개념에 대한 입문은 보안 및 ID 정보(About Security and IDENTITy)를 참조 하세요. 자격 증명을 저장하는 방법에 대한 자세한 내용은 Azure DevOps에 대한 자격 증명 스토리지를 참조하세요.

IIS 기본 인증을 사용하도록 설정하면 Azure DevOps Server에 대한 PAT 사용이 무효화됩니다.

자세한 내용은 Azure DevOps 온-프레미스에서 IIS 기본 인증 사용을 참조 하세요.

FAQ(질문과 대답)

Q: 내 서비스 계정 중 하나가 Azure DevOps REST API에 액세스할 수 없는 이유는 무엇인가요?

A: 서비스 계정이 "구체화"되지 않았을 수 있습니다. 대화형 로그인 권한이 없는 서비스 계정으로 로그인할 수 없으므로 이 해결을 검사.

Q: 대화형 클라이언트 쪽 애플리케이션을 만들고 있습니다. Azure DevOps Services 클라이언트 라이브러리 또는 Azure DevOps Services REST API를 사용해야 하나요?

A: Azure DevOps Services 리소스에 액세스할 때 REST API를 통해 Azure DevOps Services 클라이언트 라이브러리를 사용하는 것이 좋습니다. REST 엔드포인트의 버전 변경이 발생할 때 더 간단하고 쉽게 기본. 클라이언트 라이브러리 에서 기능이 누락된 경우 MSAL 은 REST API와 함께 사용할 수 있는 최상의 인증 메커니즘입니다.

Q: 이 지침은 Azure DevOps Services에만 해당합니까, 아니면 온-프레미스 Azure DevOps Server 사용자와도 관련이 있나요?

A: 이 지침은 기본 Azure DevOps Services 사용자를 위한 것입니다. 클라이언트 라이브러리 는 Azure DevOps Server 기능을 확장하기 위해 특별히 빌드된 일련의 패키지입니다. 온-프레미스 사용자의 경우 클라이언트 라이브러리, Windows 인증 또는 PAT(개인용 액세스 토큰)를 사용하여 사용자를 인증하는 것이 좋습니다.

Q: 내 애플리케이션이 Azure DevOps Server와 Azure DevOps Services 모두에서 인증되도록 하려면 어떻게 해야 하나요?

A: 모범 사례는 Azure DevOps Server 및 Azure DevOps Services에 대해 서로 다른 인증 경로를 갖는 것입니다. requestContext를 사용하여 어떤 것을 타격하고 있는지 파악한 다음 각각에 가장 적합한 메커니즘을 사용할 수 있습니다. 대신 통합 솔루션을 원하는 경우 PAT는 둘 다에 대해 작동합니다 .