자체 호스팅 에이전트 인증 옵션
Azure Pipelines는 에이전트를 등록할 때 사용할 수 있는 몇 가지 인증 옵션을 제공합니다. 이러한 인증 방법은 에이전트 등록 중에만 사용됩니다. 등록 후 에이전트가 통신하는 방법에 대한 자세한 내용은 에이전트 통신 참조하세요.
에이전트 등록 방법 | Azure DevOps Services | Azure DevOps Server & TFS |
---|---|---|
PAT(개인용 액세스 토큰) | 지원 | HTTPS를 사용하여 서버를 구성할 때 지원됩니다. |
서비스 프린시펄(SP) | 지원됨 | 현재 지원되지 않음 |
디바이스 코드 흐름(Microsoft Entra ID) | 지원되는 | 현재 지원되지 않음 |
통합 | 지원되지 않음 | Windows 에이전트만 |
협상 | 지원되지 않음 | Windows 에이전트만 |
대체(ALT) | 지원되지 않음 | HTTPS를 사용하여 서버를 구성할 때 지원됩니다. |
PAT(개인용 액세스 토큰)
에이전트를 구성하는 동안 인증 유형에 대한 PAT 지정하여 에이전트 등록 중에 개인 액세스 토큰을 사용하여 인증한 다음 에이전트 풀(읽기, 관리) 범위(또는 배포 그룹 에이전트에 대한 배포 그룹(읽기, 관리) 범위를 사용하여 PAT(개인 액세스 토큰)를 에이전트 등록에 사용할 수 있도록 지정합니다.
자세한 내용은 PAT(개인 액세스 토큰) 사용하여 에이전트 등록을 참조하세요.
서비스 프린시펄
에이전트를 구성하는 동안 인증 유형에 대한 SP 지정하여 서비스 주체를 사용하여 에이전트 등록 중에 인증합니다.
자세한 내용은 서비스 주체 사용하여 에이전트 등록참조하세요.
디바이스 코드 흐름
에이전트를 구성하는 동안 인증 유형에 대한 AAD
지정하여 에이전트 등록 중에 디바이스 코드 흐름을 사용하여 인증합니다.
자세한 내용은 디바이스 코드 흐름 사용하여 에이전트 등록참조하세요.
통합
에이전트 등록을 위한 Windows 통합 인증은 Azure DevOps Server 및 TFS에서 Windows 에이전트 등록에만 사용할 수 있습니다.
에이전트를 구성하는 동안 인증 유형에 대한 통합 지정하여 통합 Windows 인증을 사용하여 에이전트 등록 중에 인증합니다.
NTLM 또는 Kerberos와 같은 Windows 인증 체계를 통해 로그인한 사용자의 자격 증명을 사용하여 Windows 에이전트를 TFS에 연결합니다.
이 인증 방법을 사용하려면 먼저 TFS 서버를 구성해야 합니다.
TFS를 실행하는 컴퓨터에 로그인합니다.
IIS(인터넷 정보 서비스) 관리자를 시작합니다. TFS 사이트를 선택하고 NTLM 또는 Kerberos와 같은 유효한 공급자를 사용하여 Windows 인증을 사용하도록 설정했는지 확인합니다.
교섭하다
에이전트 등록에 대한 협상 인증 방법은 Azure DevOps Server 및 TFS에서 Windows 에이전트 등록에만 사용할 수 있습니다.
NTLM 또는 Kerberos와 같은 Windows 인증 체계를 통해 로그인한 사용자 이외의 사용자로 TFS에 연결합니다.
이 인증 방법을 사용하려면 먼저 TFS 서버를 구성해야 합니다.
TFS를 실행하는 컴퓨터에 로그온합니다.
IIS(인터넷 정보 서비스) 관리자를 시작합니다. TFS 사이트를 선택하고 협상 공급자 및 NTLM 또는 Kerberos와 같은 다른 방법으로 Windows 인증이 사용하도록 설정되어 있는지 확인합니다.
대체(ALT)
에이전트 등록을 위한 대체(기본) 인증 방법은 Azure DevOps Server 및 TFS에서만 사용할 수 있습니다.
기본 인증을 사용하여 TFS에 연결합니다. 이 메서드를 사용하려면 먼저 TFS 에서 HTTPS를 구성해야 합니다.
이 인증 방법을 사용하려면 다음과 같이 TFS 서버를 구성해야 합니다.
TFS를 실행하는 컴퓨터에 로그인합니다.
기본 인증을 구성합니다. Team Foundation Server 2015에서
tfx
을(를) 기본 인증 와 함께 사용하는 방법에 대해을(를) 참조하세요.
메모
제품 설계에 따라 OAuth 인증이 작동하려면 IIS 익명 인증이 필요합니다. 이 OAuth 인증은 에이전트 및 파이프라인 기능에 대해 Azure DevOps에서 사용됩니다. 이러한 이유로 이미 구성된 에이전트가 있더라도 익명 인증을 사용하지 않도록 설정하면 해당 에이전트를 사용할 수 없게 됩니다. Azure DevOps 제품에는 이미 뛰어난 보안 접근 방식이 있습니다. IIS의 TFS/Azure DevOps 서버 애플리케이션은 인증되지 않은 요청을 허용하지 않습니다. 그것은 그냥 IIS 프론트 도어를 통해 애플리케이션으로 전달되어, 그곳에서 OAuth를 시행하게 됩니다. 예를 들어 파이프라인 실행에서 빌드 서버는 빌드당 OAuth 토큰을 생성합니다. 이 토큰은 빌드로 범위가 지정되고 빌드 후에 만료됩니다. 따라서 토큰이 보호되더라도 유출된 경우 ID와 반대로 빌드 후에는 쓸모가 없습니다. OAuth 토큰은 빌드 프로세스(개발자에 의해 소스 코드에 커밋된 단위 테스트)에서 실행되는 코드에도 사용할 수 없습니다. Windows 서비스가 실행한 Windows ID에 의존하는 경우, CI에서 단위 테스트를 실행하는 개발자는 권한을 상승시켜 자신에게 허가되지 않은 코드를 액세스하거나 삭제할 수 있습니다.