서비스 계정 및 종속성
Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019
Azure DevOps의 모든 배포에 포함되고 모든 배포가 의존하는 서비스 및 여러 서비스 계정을 이해하면 Azure DevOps Server 더 잘 관리할 수 있습니다. Azure DevOps를 설치하고 구성한 방법에 따라 이러한 서비스 및 서비스 계정은 모두 한 컴퓨터에서 실행되거나 많은 컴퓨터에서 실행될 수 있습니다. 이 방식에 따라 배포 관리의 특정 측면이 변경됩니다. 예를 들어 배포의 서버 쪽 구성 요소가 둘 이상의 컴퓨터에서 실행되는 경우 배포에서 사용하는 서비스 계정에 제대로 작동하는 데 필요한 액세스 및 권한이 있는지 확인해야 합니다.
Azure DevOps Server 배포의 다음 컴퓨터에서 실행되는 서비스 및 서비스 계정이 있습니다.
- Azure DevOps Server 데이터베이스를 하나 이상 호스트하는 모든 서버
- Azure DevOps Server 애플리케이션 계층의 구성 요소를 호스트하는 모든 서버
- Azure DevOps Server 프록시를 실행하는 모든 컴퓨터
- 빌드 컴퓨터
- 테스트 컴퓨터
다양한 방법으로 Azure DevOps Server 다양한 기능을 설치하고 배포할 수 있습니다. 배포의 기능 분포에 따라 각 물리적 컴퓨터에서 실행되는 서비스 및 서비스 계정이 결정됩니다. 또한 SQL Server 서비스 계정과 같이 Azure DevOps Server 작동하도록 구성된 소프트웨어 프로그램의 서비스 계정을 관리해야 할 수도 있습니다.
서비스 계정
Azure DevOps Server 여러 서비스 계정을 사용하지만 대부분 또는 모두에 대해 동일한 도메인 또는 작업 그룹 계정을 사용할 수 있습니다. 예를 들어 TFSService(Azure DevOps Server 서비스 계정Contoso\\Example
) 및 SQL Server Reporting Services(TFSReports)에 대한 데이터 원본 계정과 동일한 도메인 계정을 사용할 수 있습니다. 하지만 서비스 계정에 따라 필요한 사용 권한 수준이 다를 수 있습니다. 예를 들어 TFSService 에는 서비스로 로그온 권한이 있어야 하고 TFSReports 에는 로컬로 로그온 허용 권한이 있어야 합니다. 둘 다에 대해 동일한 계정을 Contoso\\Example
사용하는 경우 이 두 가지 권한을 모두 부여해야 합니다. 또한 TFSService 는 이 항목의 뒷부분에 있는 표와 같이 TFSReports 에 필요한 권한보다 훨씬 더 많은 권한이 올바르게 작동해야 합니다. 보안을 유지하려면 이 두 서비스 계정에 대해 별도의 계정을 사용하는 것이 좋습니다.
중요
이러한 서비스 계정 중 하나에 대한 계정으로 Azure DevOps Server 설치하는 데 사용된 계정을 사용하면 안 됩니다.
Active Directory 도메인에 Azure DevOps Server 배포한 경우 계정이 중요하며 서비스 계정에 대해 위임할 수 없음 옵션을 설정해야 합니다. 예를 들어 다음 표에서는 TFSService에 대해 해당 옵션을 설정해야 합니다. Azure DevOps Server 설명서에 사용된 필수 서비스 계정 및 자리 표시자 이름에 대한 자세한 내용은 Team Foundation 설치 가이드의 "Azure DevOps Server 설치에 필요한 계정" 항목을 참조하세요. Active Directory의 계정 위임에 대한 자세한 내용은 Microsoft 웹 사이트의 Active Directory 위임 기관을 참조하세요.
여러 서비스 계정을 관리해야 하므로 이 항목 뒷부분의 표에 나와 있는 것처럼 각 서비스 계정의 이름은 해당 기능을 나타내는 자리 표시자 이름으로 지정됩니다. 자리 표시자 이름은 각 서비스 계정에 사용하는 계정의 실제 이름은 아닙니다. 실제 계정 이름은 배포에 따라 달라집니다. 이전 예제에서 TFSService 및 TFSReports 모두에 사용된 계정은 이었습니다 Contoso\\Example
. 자체 배포에서 및 TFSReports
의 TFSService
특정 이름을 사용하여 도메인 계정을 만들거나 시스템 계정 Network Service를 Team Foundation Server의 서비스 계정으로 사용할 수 있습니다.
중요
달리 구체적으로 명시하지 않는 한, 다음 표에 있는 그룹이나 계정은 Azure DevOps Server 배포하는 서버에서 Administrators 그룹의 구성원이 아니어야 합니다.
다음 표에서는 Azure DevOps Server 배포에 사용할 수 있는 대부분의 서비스 계정을 나열합니다. 여기에 나열되지 않은 추가 서비스 계정은 사용 권한 및 그룹, 서비스 계정을 참조하세요.
서비스 계정 대상
자리 표시자 이름 및 사용할 수 있는 계정 형식
필요한 사용 권한 및 그룹 멤버 자격
참고
Azure DevOps Services
계정 서비스(CollectionName)
없음 이 계정은 Azure DevOps의 호스트된 배포를 사용하는 경우에만 사용됩니다.
Azure DevOps Services organization 만들 때 자동으로 만들어집니다. 클라이언트가 호스트된 서비스와 통신할 때 사용되며 웹 포털 관리 페이지를 통해 볼 수 있습니다.
Azure DevOps Server
TFSService: 로컬 계정, 도메인 계정, 작업 그룹의 로컬 서비스 또는 도메인의 네트워크 서비스일 수 있습니다.
애플리케이션 계층 서버에서 서비스로 로그온
이 서비스 계정은 모든 Azure DevOps 웹 서비스에 사용됩니다. 이 계정에 대해 도메인 계정을 사용하는 경우 해당 계정은 배포 전체에서 모든 컴퓨터가 완전히 신뢰하는 도메인의 멤버여야 합니다.
Team Foundation Build
TFSBuild- 작업 그룹의 로컬 계정, 도메인 계정 또는 로컬 서비스일 수 있습니다.
서비스로 로그온
이 서비스 계정은 빌드를 구성할 때 및 빌드 컨트롤러와 빌드 에이전트 간에 빌드 상태 정보를 교환할 때 사용됩니다.
SQL Server Reporting Services
TFSReports- 작업 그룹의 로컬 계정, 도메인 계정 또는 로컬 서비스일 수 있습니다.
애플리케이션 계층 서버 및 보고서 서버에서 TFSWareHouseDataReader를 SQL Server Reporting Services
실행 중인 서버에서 로컬로 로그온 허용
이 서비스 계정은 Reporting Services에서 보고서의 데이터를 검색합니다.
Azure DevOps Server 프록시
로컬 계정, 도메인 계정, 작업 그룹의 로컬 서비스 또는 도메인의 네트워크 서비스일 수 있는 TFSProxy
서비스로 로그온
모든 프록시 서비스에 사용됩니다. 이 계정에 대해 도메인 계정을 사용하는 경우 해당 계정은 배포 전체에서 모든 컴퓨터가 완전히 신뢰하는 도메인의 멤버여야 합니다.
테스트 에이전트 및 테스트 에이전트 컨트롤러
TFSTest: 도메인의 로컬 계정, 도메인 계정 또는 네트워크 서비스일 수 있습니다.
서비스로 로그온
테스트 에이전트 컨트롤러와 테스트 에이전트 간에 테스트에 대한 정보가 전달될 때 사용됩니다.
서비스 계정에서 실행되는 서비스
다음 표에서는 온-프레미스 Azure DevOps 배포의 서비스 계정으로 실행되는 서비스를 나열합니다.
서비스 이름 | 서비스 계정 | 논리적 계층 |
---|---|---|
코드 검사 서비스 | TFSService | 응용 프로그램 계층이 |
Azure DevOps Server Web Services | TFSService | 응용 프로그램 계층이 |
SQL Server Reporting Services(명명된 instance 사용하는 경우 MSSQLSERVER 또는 InstanceName) | 로컬 시스템 또는 도메인 계정 | 응용 프로그램 계층이 |
보고서 웹 서비스 | 로컬 시스템, 네트워크 서비스 또는 도메인 계정 | 응용 프로그램 계층이 |
Visual Studio Team Foundation 빌드 서비스 호스트(Team Foundation Build가 설치된 경우) | TFSBuild | 빌드 컴퓨터 |
Visual Studio Team Foundation 백그라운드 작업 에이전트 | TFSService | 응용 프로그램 계층이 |
Visual Studio Test Controller | TFSTest | 모든 컴퓨터 |
Visual Studio Test Agent | TFSTest | 테스트 컴퓨터 |
Analysis Server(명명된 instance 사용하는 경우 MSSQLSERVER 또는 InstanceName) | 로컬 시스템 또는 도메인 계정 | 데이터 계층 |
SQL Server Browser | 로컬 서비스 또는 도메인 계정 | 데이터 계층 |
SQL Server(명명된 instance 사용하는 경우 MSSQLSERVER 또는 InstanceName) | 로컬 시스템, 네트워크 서비스 또는 도메인 계정 | 데이터 계층 |
SQL Server 에이전트(명명된 instance 사용하는 경우 MSSQLSERVER 또는 InstanceName) | 로컬 시스템, 네트워크 서비스 또는 도메인 계정 | 데이터 계층 |
Account Service(CollectionName) | 자동 | 웹 계층(Azure DevOps Services만 해당) |
SQL Server 서비스 계정에 대한 자세한 내용은 Microsoft 웹 사이트의 SQL Server 온라인 설명서 페이지를 참조하세요. Azure DevOps Server 서비스 계정에 대한 최신 정보는 온-프레미스에서 Azure DevOps 설치 및 구성을 참조하세요.
참고
Team Foundation Build에 대한 서비스 계정을 변경하는 경우 새 서비스 계정이 Build Services 그룹의 구성원인지 확인해야 합니다. 또한 임시 폴더 및 ASP.NET 임시 폴더에 대한 읽기/쓰기 권한이 계정에 있어야 합니다. 마찬가지로 Team Foundation Server 프록시 서비스에 대한 서비스 계정을 변경하는 경우 계정이 적절한 그룹의 구성원인지 확인해야 합니다. 자세한 내용은 빌드 시스템 구성을 참조하세요.
Q & A
Q: 서비스 계정은 액세스 수준 그룹에 할당되나요?
A: 기본적으로 서비스 계정은 기본 액세스 수준에 추가됩니다. 이해 관계자를 기본 액세스 수준으로 만드는 경우 Azure DevOps Server 서비스 계정을 기본 또는 고급 그룹에 추가해야 합니다.
Q: 서비스 계정에는 라이선스가 필요하나요?
A: 아니요. 서비스 계정에는 별도의 라이선스가 필요하지 않습니다.