다음을 통해 공유


방법: 테스트 및 워크플로 통합을 위한 서비스 계정 구성

응용 프로그램을 빌드, 배포 및 테스트하기 위해 또는 가상 환경에서 자동화된 테스트 또는 수동 테스트를 실행하기 위해서만 Lab Management 워크플로를 사용할 경우에는 랩 서비스 계정을 구성해야 합니다. 이 항목에서는 랩 서비스 계정의 기능, 권한 및 구성에 대해 설명합니다. 랩 서비스 계정에 대한 자세한 내용은 이 Microsoft 웹 사이트에서도 확인할 수 있습니다.

이 항목에서는 랩 서비스 계정의 기능, 권한 및 구성에 대해 설명합니다. 랩 서비스 계정에 대한 자세한 내용은 이 Microsoft 웹 사이트에서도 확인할 수 있습니다.

랩 서비스 계정

Lab Management에서는 테스트 에이전트와 테스트 컨트롤러 사이 그리고 빌드 에이전트와 Team Foundation 사이의 통신을 위해 랩 서비스 계정을 사용합니다.

참고

랩 서비스 계정을 사용하는 것이 가장 좋지만 각 컴퓨터의 로컬 계정을 사용할 수도 있으므로 필수 사항은 아닙니다. 하지만 Team Foundation 관리 콘솔에서 랩 서비스 계정을 구성하면 시간을 들여 권한을 수동으로 프로비전하거나 특정 서비스 계정에 에이전트와 컨트롤러를 할당할 필요가 없습니다.

랩 서비스 계정을 사용하면 임의의 시스템 계정으로 빌드, 테스트 및 랩 에이전트를 실행할 수 있습니다. 하지만 랩 서비스 계정을 구성하면 테스트 및 빌드 에이전트가 해당 컨트롤러와 통신하는 데 필요한 최소 권한 집합만 계정에 자동으로 제공됩니다. 이러한 권한을 통해 다음과 같은 통신을 수행할 수 있습니다.

  • 테스트 에이전트가 테스트 컨트롤러와 통신할 수 있습니다. 테스트 지원 가상 환경에서 테스트 에이전트는 랩 서비스 계정을 사용하여 테스트 컨트롤러와 통신합니다. 이 계정은 테스트 에이전트와 테스트 컨트롤러 사이의 통신 채널에만 사용되며 테스트 에이전트를 실제로 실행하는 데에는 사용되지 않습니다. 테스트 에이전트는 계속해서 테스트를 실행하고 로그를 수집합니다. 여기에는 테스트 에이전트 구성 도구를 사용할 때 구성된 계정이 사용됩니다.

  • 빌드 에이전트가 Team Foundation Server와 통신할 수 있습니다. 랩 서비스 계정은 Project Collection Build Service Accounts 그룹에 자동으로 추가됩니다. 워크플로 지원 가상 환경에서 빌드 에이전트는 랩 서비스 계정을 사용하여 Team Foundation과 통신합니다. 이 계정은 빌드 에이전트와 Team Foundation 사이의 통신을 위해서만 사용되고 빌드 에이전트를 실행하는 데에는 사용되지 않습니다. 빌드 에이전트에는 관리 콘솔을 사용할 때 구성된 계정이 사용됩니다. 빌드 에이전트가 로컬 컴퓨터에 대한 관리 권한이 있는 도메인 또는 시스템 계정으로 실행되는지 확인합니다.

    경고

    랩 서비스 계정을 구성해도 빌드 저장 위치에 대한 읽기 권한이 계정에 자동으로 제공되지 않습니다. 빌드 저장 위치를 읽을 수 있는 계정에 랩 서비스 계정을 수동으로 추가해야 합니다.

  • 빌드 에이전트는 랩 서비스 계정을 사용하여 빌드 저장 위치에 액세스합니다. 랩 워크플로에서 사용되는 빌드 에이전트는 빌드를 컴파일하는 데 사용되는 빌드 에이전트와 동일한 권한으로 구성되지 않습니다. 소스 파일을 컴파일하는 데 사용되는 빌드 에이전트에는 소스 제어 시스템의 읽기 권한이 제공됩니다. 랩 워크플로에서 사용되는 빌드 에이전트는 소스 파일을 읽을 필요가 없으므로 프로젝트 컬렉션에 있는 소스 제어 아티팩트에 대한 모든 권한이 명시적으로 거부됩니다. 랩 워크플로의 빌드 에이전트는 워크플로 템플릿에 지정된 배포 스크립트를 실행하기 위해서만 사용됩니다. 각 배포 스크립트를 실행하기 전에 빌드 에이전트는 랩 서비스 계정을 사용하여 저장 위치에 액세스하기 위한 로그온된 세션을 구성합니다. 스크립트가 완료되면 빌드 에이전트가 해당 구성을 제거합니다.

서비스 계정 구성

랩 서비스 계정을 처음 구성할 때는 Team Foundation 관리 콘솔을 사용해야 합니다. 자세한 내용은 처음으로 Lab Management 구성을 참조하십시오. 랩 서비스 계정에 대해 사용할 시스템 계정을 선택할 때는 다음 지침을 따르십시오.

  • 랩 서비스 계정은 도메인 계정이어야 합니다.

  • 랩 서비스 계정은 모든 컴퓨터에서 Administrators 보안 그룹의 멤버가 아니어야 합니다. 랩 서비스 계정에 대한 계정 정보는 Team Foundation Server에 안전하게 저장되지만 개별 가상 컴퓨터에서는 안전하게 저장되지 않을 수 있습니다.

  • 서비스 계정은 빌드 컨트롤러, 테스트 컨트롤러 또는 신뢰할 수 있는 다른 서비스에 대해 사용되는 계정이 아니어야 합니다. 이러한 서비스 계정에는 에이전트에 필요한 것 이상의 권한이 필요합니다.

  • 서비스 계정에는 제한된 사용자 권한이 포함되어야 합니다.

    참고

    이 계정에 대한 암호를 변경할 때 테스트 또는 워크플로 기능을 사용하지 못하게 될 위험을 줄이기 위해서는 이 서비스 계정에 사용할 계정을 두 개 만드는 것이 좋습니다.

  • 팀 프로젝트 컬렉션 관리자는 서비스 계정의 암호를 변경할 수 있는 유일한 사용자여야 합니다.

팀 프로젝트 컬렉션에 대해 랩 서비스 계정을 구성한 후에는 Team Foundation 관리 콘솔에 있는 프로젝트 컬렉션에 대한 Lab Management 탭에서 구성된 계정 정보를 볼 수 있습니다. 보안상의 이유로 인해 이 서비스 계정은 정기적으로 변경하는 것이 좋습니다.

서비스 계정은 Team Foundation용 관리 콘솔을 사용하여 변경할 수 있습니다. 또는 명령줄을 사용하여 서비스 계정을 변경할 수 있습니다. 명령줄 유틸리티 TFSLabConfig에 대한 추가 정보는 TFSLabConfig를 사용하여 Lab Management 구성을 참조하십시오.

서비스를 구성하려면 다음 절차를 따릅니다.

테스트 및 빌드 워크플로 기능을 사용할 수 있도록 서비스 계정을 구성하려면

  1. Team Foundation 관리 콘솔에서 응용 프로그램 계층 아래의 팀 프로젝트 컬렉션을 클릭합니다.

  2. 오른쪽 창에 있는 프로젝트 컬렉션 목록에서 적절한 팀 프로젝트 컬렉션을 클릭합니다.

  3. Lab Management 탭을 클릭하고 사용자 계정 구성을 클릭합니다.

  4. 서비스 계정을 변경하려면 서비스 계정을 클릭합니다.

  5. 서비스 계정 탭의 계정 이름에 계정의 이름을 입력하고 암호에 암호를 입력합니다.

  6. 사용자 계정이 유효한지 확인하려면 테스트를 클릭합니다.

  7. 확인을 클릭합니다.

    참고

    기존 환경이 있는 상태에서 이 서비스 계정을 변경하면 해당 환경이 자동으로 업데이트되지 않습니다. 테스트 및 워크플로 기능은 준비되지 않은 상태로 표시될 수 있습니다. 이 경우 Microsoft Test Manager 환경 뷰에 표시된 오류 메시지에서 다시 시도를 클릭하면 새 사용자 이름 및 암호가 업데이트됩니다. 이제 해당 기능이 준비 상태로 표시됩니다. 또는 명령줄 유틸리티 TFSLabConfig의 TFSLabConfig UpdateServiceAccountOnDeployedEnvironments 명령을 사용하여 모든 기존 환경을 업데이트할 수 있습니다. 이 명령줄 유틸리티는 현재 실행 중인 워크플로 또는 테스트와 같은 모든 작업에 영향을 주지 않습니다.

두 서비스 계정 간에 전환하려면 다음 절차를 따릅니다. 이렇게 하면 테스트 또는 워크플로 기능을 사용할 수 없게 될 위험을 줄일 수 있습니다.

테스트 또는 워크플로 기능을 사용할 수 없게 될 위험을 줄이기 위해 두 서비스 계정 간에 전환하려면

  1. 도메인의 암호 만료 정책을 찾습니다. 이 절차에서는 기본값이 42일인 것으로 가정합니다.

  2. 두 계정 Account1 및 Account2에 대한 암호 만료 기간을 42일로 설정합니다.

  3. Account1을 서비스 계정으로 사용합니다.

  4. 암호 만료 기간의 절반인 21일 이후에 Account2의 암호를 다시 설정합니다. 그런 다음 앞의 절차에 따라 Account2를 서비스 계정으로 구성합니다.

  5. 암호 만료 기간의 절반인 21일이 지날 때마다 암호를 다시 설정하고 현재 사용 중이 아닌 계정을 서비스 계정으로 구성하여 4단계를 반복해야 합니다.

Team Foundation에 대한 서비스 계정을 구성하거나 업데이트할 때 기존의 각 환경에서는 계정이 자동으로 업데이트되지 않습니다. 기존 환경에 업데이트된 계정을 전파하는 옵션은 두 가지가 있습니다.

  • 프로젝트 컬렉션의 각 환경에 계정을 푸시하는 UpdateServiceAccountOnDeployedEnvironments 명령을 실행합니다. 이 명령에 대한 추가 정보는 TFSLabConfig UpdateServiceAccountOnDeployedEnvironments 명령을 참조하십시오.

  • 각 환경에서 다음 작업을 수행합니다.

    • 테스트 및 워크플로 기능을 복구합니다.

    • 가상 환경에서 항목을 변경합니다.

    • 환경을 스냅숏으로 복원합니다.

UpdateServiceAccountOnDeployedEnvironments 명령을 사용하여 서비스 계정을 업데이트하는 것이 좋습니다. 이 명령을 사용해도 환경에 있는 워크플로 또는 테스트 실행과 같은 실행 중인 작업에는 영향을 주지 않습니다. 이 명령을 사용한 후에는 계정이 환경에 푸시되고 에이전트가 다음과 같은 명령을 적용합니다.

  • 테스트를 실행하고 있지 않은 테스트 에이전트는 이를 즉시 적용합니다.

  • 테스트를 실행 중인 테스트 에이전트는 테스트 실행이 완료된 후 명령을 적용합니다.

  • 빌드 에이전트는 빌드 에이전트 서비스가 다시 시작될 때 새 서비스 계정을 적용합니다. 에이전트 서비스는 워크플로 기능이 복구되는 경우, 해당 환경이 시작되는 경우 또는 환경 스냅숏이 복원되는 경우에 다시 시작됩니다.

참고 항목

작업

팀 프로젝트 컬렉션 만들기

개념

Team Foundation 관리 콘솔을 사용하여 서버 구성

기타 리소스

처음으로 Lab Management 구성

가상 환경을 사용하여 테스트

기존 Lab Management 구성 변경