다음을 통해 공유


구성 요소, 용어 및 주요 개념

Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019

Azure DevOps Server를 효과적으로 배포하고 관리하려면 작동 방식을 이해하고 다른 배포 구성 요소와 통신해야 합니다. Azure DevOps 관리자는 Windows 인증, 네트워크 프로토콜 및 트래픽 및 Azure DevOps가 설치된 비즈니스 네트워크의 구조를 잘 알고 있어야 합니다. 또한 Azure DevOps 그룹 및 권한을 이해해야 합니다.

SQL Server, SQL Server Reporting Services 및 SharePoint 제품에 대한 이해가 유용할 수도 있습니다.

이 문서에 설명된 구성 요소 및 용어를 이해하면 Azure DevOps Server를 더 잘 계획, 배포 및 관리할 수 있습니다.

분석 서비스

분석 서비스는 Azure DevOps에 대한 미래의 보고 플랫폼입니다. 현재 Azure DevOps Services에서 사용할 수 있으며 Azure DevOps Server의 Azure DevOps Marketplace에서 설치할 수 있습니다. 자세한 내용은 Analytics 서비스란?을 참조하세요.

애플리케이션 계층, 데이터 계층 및 클라이언트 계층

Azure DevOps Server를 구성하는 논리 계층입니다. 이러한 계층은 모두 동일한 물리적 컴퓨터에 배포되거나 여러 컴퓨터에 설치될 수 있습니다. 자세한 내용은 Azure DevOps Server에 대한 아키텍처 개요를 참조하세요.

프로젝트 컬렉션

Azure DevOps Server의 모든 데이터에 대한 기본 조직 구성 단위입니다. 컬렉션은 추가된 프로젝트에 사용할 수 있는 리소스를 결정합니다. 이러한 리소스에는 SQL Server Reporting Services, 코드 검색, Marketplace 확장 등이 포함될 수 있습니다. 자세한 내용은 프로젝트 컬렉션 관리를 참조 하세요.

프로젝트

팀이 특정 소프트웨어 기술 또는 제품을 개발하는 데 필요한 팀 활동을 공유할 수 있는 중심점입니다. 프로젝트는 프로젝트 컬렉션으로 구성됩니다. 자세한 내용은 프로젝트 및 조직 크기 조정에 대해 참조하세요.

Azure DevOps 서버 관리 콘솔

Azure DevOps Server 관리자가 리소스를 구성하고 관리하기 위한 중앙 집중식 관리 도구입니다. 자세한 내용은 관리 작업 빠른 참조를 참조하세요.

서비스 계정

Azure DevOps에서 실행하는 웹 서비스 및 애플리케이션의 계정입니다. Azure DevOps Server를 사용하려면 서비스 계정이 서버 및 웹 서비스에서 작업을 수행해야 합니다. 이러한 서비스 계정에는 특정 요구 사항이 있습니다. 자세한 내용은 Azure DevOps Server Service 계정 및 종속성을 참조하세요.

SharePoint 제품

프로젝트 포털 및 대시보드에 대한 지원을 제공하는 소프트웨어입니다. 하나 이상의 SharePoint 웹 애플리케이션을 Azure DevOps Server 배포의 일부로 포함할 수 있습니다. 이러한 애플리케이션 중 하나를 포함하려면 SharePoint 제품에 대한 Azure DevOps Server 확장을 설치 및 구성해야 하며 배포 전체에서 권한을 구성해야 합니다. 자세한 내용은 프로젝트 포털을 사용하여 정보 공유를 참조하세요. SharePoint 제품과의 통합은 TFS 2018 이상 버전에서 더 이상 사용되지 않습니다.

SQL Server 및 SQL Server Reporting Services

데이터 웨어하우징을 위한 데이터베이스 플랫폼과 데이터 통합, 분석 및 보고 솔루션을 위한 비즈니스 인텔리전스 플랫폼을 제공하는 소프트웨어입니다. Azure DevOps Server는 SQL Server 데이터베이스에 데이터를 저장합니다. 필요에 따라 SQL Server Reporting Services를 실행하고 프로젝트에 대한 보고서를 자동으로 생성하는 서버를 포함할 수도 있습니다. 자세한 내용은 보고서, 데이터 웨어하우스 및 분석 서비스 큐브 관리를 참조하세요.

보안 개념

Azure DevOps Server의 보안을 최적화하려면 다음 개념을 이해해야 합니다.

  • 토폴로지에는 Azure DevOps 구성 요소를 실행하는 서버가 배포되는 위치 및 방법, Azure DevOps Server와 Azure DevOps 클라이언트 간에 전달되는 네트워크 트래픽 및 Azure DevOps Server에서 실행해야 하는 서비스가 포함됩니다.
  • Azure DevOps Server에서 사용자, 그룹 및 서비스의 유효성을 결정하는 인증을 포함합니다.
  • Azure DevOps Server의 유효한 사용자, 그룹 및 서비스에 특정 작업을 수행할 수 있는 적절한 권한이 있는지 여부를 결정하는 권한 부여가 포함됩니다.

Azure DevOps Server가 의존하는 다른 구성 요소 및 서비스도 고려해야 합니다.

Azure DevOps Server에 대한 보안을 고려할 때 인증과 권한 부여의 차이점을 이해해야 합니다. 인증은 클라이언트, 서버 또는 프로세스에서 연결 시도의 자격 증명을 확인하는 것입니다. 권한 부여는 연결하려는 ID에 개체 또는 메서드에 액세스할 수 있는 권한이 있는지 확인하는 것입니다. 권한 부여는 인증에 성공한 후에만 발생합니다. 연결이 인증되지 않은 경우 권한 부여 검사가 수행되기 전에 실패합니다. 연결 인증에 성공하면 사용자 또는 그룹이 해당 작업을 수행할 권한이 없기 때문에 특정 작업이 여전히 허용되지 않을 수 있습니다.

토폴로지, 포트 및 서비스

Azure DevOps Server에 대한 배포 및 보안의 첫 번째 요소는 배포의 구성 요소가 서로 연결하여 통신할 수 있는지 여부입니다. 목표는 Azure DevOps 클라이언트와 Azure DevOps Server 간의 연결을 사용하도록 설정하고 다른 연결 시도를 제한하거나 방지하는 것입니다.

Azure DevOps Server는 작동할 수 있도록 특정 포트 및 서비스에 따라 달라집니다. 이러한 포트를 보호하고 모니터링하여 비즈니스 보안 요구 사항을 충족할 수 있습니다. Azure DevOps Server에 대한 네트워크 트래픽이 Azure DevOps 클라이언트, 애플리케이션 계층 및 데이터 계층의 논리적 구성 요소를 호스트하는 서버, Team Foundation Build용 컴퓨터 및 Azure DevOps 프록시 서버를 사용하는 원격 클라이언트 간에 전달되도록 허용해야 합니다. 기본적으로 Azure DevOps Server는 웹 서비스에 HTTP를 사용하도록 구성됩니다. Azure DevOps Server에서 사용하는 포트 및 서비스의 전체 목록과 해당 아키텍처 내에서 사용되는 방법은 Azure DevOps Server 아키텍처를 참조하세요.

Active Directory 도메인 또는 작업 그룹에 Azure DevOps Server를 배포할 수 있습니다. Active Directory는 작업 그룹이 제공하는 것보다 더 많은 기본 제공 보안 기능을 제공합니다. Active Directory 기능을 사용하여 Azure DevOps Server 배포를 보호할 수 있습니다. 예를 들어 악의적인 사용자가 Azure DevOps Server를 실행하는 Rogue 서버로 컴퓨터 이름을 스푸핑할 수 없도록 중복된 컴퓨터 이름을 방지하도록 Active Directory를 구성할 수 있습니다. 작업 그룹에서 동일한 종류의 위협을 완화하려면 컴퓨터 인증서를 구성해야 합니다.

작업 그룹 또는 도메인에 Azure DevOps Server를 배포하든 관계없이 Azure DevOps Server 자체의 요구 사항에 따라 적용되는 특정 제약 조건을 준수해야 합니다. Azure DevOps Server의 토폴로지에 대한 자세한 내용은 간단한 Azure DevOps Server 토폴로지, 보통 Azure DevOps Server 토폴로지, 복잡한 Azure DevOps Server 토폴로지, Windows SharePoint Services 이해SQL Server 및 SQL Server Reporting Services 이해를 참조하세요.

인증

Azure DevOps Server에 대한 보안은 Windows 통합 인증 및 Windows 운영 체제의 보안 기능과 통합되어 있습니다. Windows 통합 인증을 사용하여 Azure DevOps 클라이언트와 Azure DevOps Server 간의 연결, 논리 애플리케이션 및 데이터 계층을 호스트하는 서버의 웹 서비스 및 애플리케이션 계층과 데이터 계층 서버 자체 간의 연결에 대한 계정을 인증할 수 있습니다.

비고

Azure DevOps Server를 설치한 후 클라이언트와 서버의 상호 인증을 위해 Kerberos를 지원하도록 Azure DevOps Server를 구성할 수 있습니다.

Windows 인증만큼 안전하지 않으므로 SQL Server 인증을 사용하도록 Azure DevOps Server와 SharePoint 제품 간에 SQL Server 데이터베이스 연결을 구성해서는 안 됩니다. 데이터베이스에 연결하면 데이터베이스 관리자 계정의 사용자 이름과 암호가 암호화되지 않은 형식으로 전송됩니다. Windows 통합 인증은 사용자 이름과 암호를 보내지 않습니다. 대신 Windows 통합 인증 보안 프로토콜을 사용하여 호스트 IIS(인터넷 정보 서비스) 애플리케이션 풀과 연결된 서비스 계정 ID 정보를 SQL Server로 전송합니다.

승인

Azure DevOps Server 권한 부여는 Azure DevOps의 사용자 및 그룹, 해당 사용자 및 그룹 모두에 직접 할당된 권한 및 해당 사용자 및 그룹이 Azure DevOps Server의 다른 그룹에 속하여 상속할 수 있는 권한을 기반으로 합니다. Azure DevOps의 사용자 및 그룹은 로컬 사용자 또는 그룹, Active Directory 사용자 또는 그룹 또는 둘 다일 수 있습니다.

Azure DevOps Server는 서버, 컬렉션 및 프로젝트 수준에서 기본 그룹으로 미리 구성됩니다. 개별 사용자를 추가하여 이러한 그룹을 채울 수 있습니다. 그러나 Active Directory 보안 그룹을 사용하여 이러한 그룹을 채우는 경우 관리가 더 쉬울 수 있습니다. 이 방법을 사용하면 SharePoint 제품 및 SQL Server와 같은 여러 컴퓨터 또는 애플리케이션에서 그룹 멤버 자격 및 권한을 보다 효율적으로 관리할 수 있습니다.

특정 배포에서는 여러 컴퓨터 및 여러 애플리케이션 내에서 사용자, 그룹 및 권한을 구성해야 할 수 있습니다. 예를 들어 보고서 및 프로젝트 포털을 배포의 일부로 포함하려면 Reporting Services, SharePoint 제품 및 Azure DevOps Server의 사용자 및 그룹에 대한 권한을 구성해야 합니다. Azure DevOps Server에서 각 프로젝트, 각 컬렉션 및 배포 전체(서버 수준)에 대한 권한을 설정할 수 있습니다. 또한 사용자 또는 그룹이 Azure DevOps 유효한 사용자에 자동으로 추가되므로 Azure DevOps Server에 추가하는 모든 사용자 또는 그룹에는 기본적으로 특정 권한이 부여됩니다. 자세한 내용은 사용자 또는 그룹 관리를 참조하세요.

Azure DevOps Server에서 권한 부여에 대한 권한을 구성하려면 버전 제어 및 작업 항목 내에서 권한 부여가 필요할 수 있습니다. 명령 프롬프트에서 이러한 권한을 별도로 관리하지만 팀 탐색기 인터페이스의 일부로 통합됩니다.