TFSSecurity를 사용하여 Azure DevOps 대한 그룹 및 권한 관리

Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 - TFS 2013

참고

Azure DevOps Server의 이전 이름은 Visual Studio Team Foundation Server였습니다.

TFSSecurity 명령줄 도구를 사용하여 Azure DevOps Server 그룹 및 사용자를 만들고, 수정하고, 삭제하고, 그룹 및 사용자에 대한 사용 권한을 추가로 수정할 수 있습니다. 사용자 인터페이스에서 이러한 작업을 수행하는 방법에 대한 자세한 내용은 프로젝트에 사용자 또는 그룹 추가를참조하세요.

중요

TFSSecurity 명령줄 도구는 Azure DevOps Services 더 이상 사용되지 않습니다. TFSSecurity는 일부 Azure DevOps Services 시나리오에서 작동할 수 있지만 지원되지 않습니다. Azure DevOps Services 대한 보안 그룹 및 권한을 변경하는 데 권장되는 방법은 웹 포털, az devops security 또는 az devops permission 명령줄 도구 또는 보안 REST API사용하는 것입니다.

명령줄 도구 위치

Azure DevOps 명령줄 도구는 Azure DevOps 애플리케이션 계층 서버의 /Tools 디렉터리에 설치됩니다.

  • Azure DevOps Server 2020:%programfiles%\Azure DevOps Server 2020\Tools
  • Azure DevOps Server 2019:%programfiles%\Azure DevOps Server 2019\Tools
  • TFS 2018: %programfiles%\Microsoft Team Foundation Server 2018\Tools
  • TFS 2017: %programfiles%\Microsoft Team Foundation Server 15.0\Tools
  • TFS 2015: %programfiles%\Microsoft Team Foundation Server 14.0\Tools
  • TFS 2013: %programfiles%\Microsoft Team Foundation Server 12.0\Tools
  • TFS 2012: %programfiles%\Microsoft Team Foundation Server 11.0\Tools
  • TFS 2010: %programfiles%\Microsoft Team Foundation Server 2010\Tools

참고

관리자 자격 증명으로 로그온한 경우에도 이 기능을 실행하려면 관리자 권한 명령 프롬프트를 열어야 합니다.

사용 권한

/a+: 권한 추가

/a+를 사용하여 서버 수준, 컬렉션 수준 또는 프로젝트 수준 그룹의 사용자 또는 그룹에 대한 권한을 추가합니다. 웹 포털에서 그룹에 사용자를 추가하려면 프로젝트 또는 컬렉션 수준에서 권한 설정을참조하세요.

tfssecurity /a+ Namespace Token Action Identity (ALLOW | DENY)[/collection:CollectionURL] [/server:ServerURL]

사전 요구 사항

사용 하려면는 /a+ 명령을 사용 하는 여부에 따라 컬렉션 수준 정보 보기 또는 인스턴스 수준 정보 보기 권한으로 설정 해야 허용, 사용 하는 여부에 따라는 /collection 또는 /server 매개 변수를 각각. 프로젝트에 대한 사용 권한을 변경하는 경우 프로젝트에 대한 프로젝트 수준 정보 편집 권한도 허용으로 설정해야 합니다. 자세한 내용은 권한 및 그룹 참조를 참조하세요.

매개 변수

인수 설명
네임스페이스 사용자 또는 그룹에 대한 권한을 추가하려는 그룹이 포함된 네임스페이스입니다. tfssecurity /a 명령을 사용하여 서버, 컬렉션 및 프로젝트 수준에서 네임스페이스 목록을 볼 수도 있습니다.
ID 사용자나 그룹의 ID입니다. ID 지정자에 대한 자세한 내용은 이 문서의 후반부에 있는 ID 지정자를 참조하세요.
  • 허용
    그룹 또는 사용자는 작업이 지정하는 작업을 수행할 수 있습니다.
  • DENY
    그룹 또는 사용자가 동작이 지정하는 작업을 수행할 수 없습니다.
/collection :CollectionURL /server를 사용하지 않는 경우 필수입니다. http:// ServerName : Port / VirtualDirectoryName CollectionName 형식으로 프로젝트 컬렉션의 URL을 지정합니다. /
/server :ServerURL /collection을 사용하지 않는 경우 필수입니다. 애플리케이션 계층 서버의 URL을 http:// ServerName : Port / VirtualDirectoryName 형식으로 지정합니다.

설명

Azure DevOps 애플리케이션 계층 서버에서 이 명령을 실행합니다.

액세스 제어 엔트리는 사용자, 그룹, 서비스 또는 컴퓨터가 수행할 수 있는 작업을 결정하는 보안 메커니즘입니다.

예제: 사용 가능한 네임스페이스 표시

다음 예제에서는 ADatumCorporation이라는 애플리케이션 계층 서버의 서버 수준에서 사용할 수 있는 네임스페이스를 표시합니다.

참고

예제는 설명만을 위한 것이며 실제 데이터가 아닙니다. 어떠한 실제 사례와도 연관시킬 의도가 없으며 그렇게 유추해서도 안 됩니다.

tfssecurity /a /server:ServerURL 

샘플 출력:

    TFSSecurity - Team Foundation Server Security Tool
    Copyright (c) Microsoft Corporation.  All rights reserved.

    The target Team Foundation Server is http://ADatumCorporation:8080/.

    The following security namespaces are available to have permissions set on them:

         Registry
         Identity
         Job
         Server
         CollectionManagement
         Warehouse
         Catalog
         EventSubscription
         Lab

    Done.

예제: 사용 가능한 작업 표시

다음 예제에서는 컬렉션 수준에서 서버 수준 네임스페이스에 사용할 수 있는 작업을 표시합니다.

tfssecurity /a Server /collection:CollectionURL 

샘플 출력:

    TFSSecurity - Team Foundation Server Security Tool
    Copyright (c) Microsoft Corporation.  All rights reserved.

    The target Team Foundation Server is http://ADatumCorporation:8080/.

    The following actions are available in the security namespace Server:
        GenericRead
        GenericWrite
        Impersonate
        TriggerEvent

    Done.

예: 인스턴스 수준 권한 할당

다음 예제에서는 Datum1 도메인 사용자 John Peoples(Datum1 jpeoples)에 대한 ADatumCorporation 배포에 서버 수준 인스턴스 수준 정보 보기 권한을 \ 부여합니다.

tfssecurity /a+ Server FrameworkGlobalSecurity GenericRead n:Datum1\jpeoples ALLOW /server:http://ADatumCorporation:8080 

샘플 출력:

    TFSSecurity - Team Foundation Server Security Tool
    Copyright (c) Microsoft Corporation.  All rights reserved.

    The target Team Foundation Server is http://ADatumCorporation:8080/.
    Resolving identity "n:Datum1\jpeoples"...
      [U] Datum1\jpeoples (John Peoples)
    Adding the access control entry...
    Verifying...

    Effective ACL on object "FrameworkGlobalSecurity":
      [+] GenericRead                        [INSTANCE]\Team Foundation Valid Users
      [+] GenericRead                        [INSTANCE]\SharePoint Web Application Services
      [+] Impersonate                        [INSTANCE]\SharePoint Web Application Services
      [+] GenericRead                        [INSTANCE]\Team Foundation Service Accounts
      [+] GenericWrite                       [INSTANCE]\Team Foundation Service Accounts
      [+] Impersonate                        [INSTANCE]\Team Foundation Service Accounts
      [+] TriggerEvent                       [INSTANCE]\Team Foundation Service Accounts
      [+] GenericRead                        [INSTANCE]\Team Foundation Administrators
      [+] GenericWrite                       [INSTANCE]\Team Foundation Administrators
      [+] TriggerEvent                       [INSTANCE]\Team Foundation Administrators
      [+] GenericRead                        DATUM1\jpeoples

    Done.

예제: 컬렉션 수준 권한 할당

다음 예제에서는 컬렉션 수준 뷰 컬렉션 수준 정보 권한을 Datum1 도메인 사용자 John Peoples(Datum1 jpeople)에 대한 Collection0 프로젝트 컬렉션에 \ 부여합니다.

tfssecurity /a+ Server FrameworkGlobalSecurity GenericRead n:Datum1\jpeoples ALLOW /collection:http://ADatumCorporation:8080/Collection0

샘플 출력:

    TFSSecurity - Team Foundation Server Security Tool
    Copyright (c) Microsoft Corporation.  All rights reserved.
    The target Team Foundation Server is http://ADatumCorporation:8080/COLLECTION0.
    Resolving identity "n:Datum1\jpeoples"...
      [U] DATUM1\jpeoples (John Peoples)
    Adding the access control entry...
    Verifying...

    Effective ACL on object "FrameworkGlobalSecurity":
      [+] GenericRead                        [Collection0]\Project Collection ValidUsers
      [+] GenericRead                        [Collection0]\Project Collection Service Accounts
      [+] GenericWrite                       [Collection0]\Project Collection Service Accounts
      [+] Impersonate                        [Collection0]\Project Collection Service Accounts
      [+] TriggerEvent                       [Collection0]\Project Collection Service Accounts
      [+] GenericRead                        [Collection0]\Project Collection Administrators
      [+] GenericWrite                       [Collection0]\Project Collection Administrators
      [+] TriggerEvent                       [Collection0]\Project Collection Administrators
      [+] GenericRead                        [INSTANCE]\SharePoint Web Application Services
      [+] Impersonate                        [INSTANCE]\SharePoint Web Application Services
      [+] GenericRead                        [Collection0]\Project Collection Build Service Accounts
      [+] GenericRead                        DATUM1\jpeoples

    Done.

/a-: 그룹의 멤버 자격에서 사용자 또는 그룹 제거

/a- 명령을 사용하여 서버 수준, 컬렉션 수준 또는 프로젝트 수준 그룹의 멤버 자격에서 사용자 또는 그룹을 제거합니다. 웹 포털에서 그룹에서 사용자를 제거하려면 사용자 계정 제거를 참조하세요.

tfssecurity /a- Namespace Token Action Identity (ALLOW | DENY) [/collection:CollectionURL] [/server:ServerURI]

사전 요구 사항

사용 하려면는 /a- 명령을 사용 하는 여부에 따라 컬렉션 수준 정보 보기 또는 인스턴스 수준 정보 보기 권한으로 설정 해야 허용, 사용 하는 여부에 따라는 /collection 또는 /server 매개 변수를 각각. 프로젝트에 대한 사용 권한을 변경하는 경우 프로젝트에 대한 프로젝트 수준 정보 편집 권한도 허용으로 설정해야 합니다.

매개 변수

인수 설명
네임스페이스 사용자 또는 그룹에 대한 사용 권한을 제거할 그룹이 포함된 네임스페이스입니다. tfssecurity /a 명령을 사용하여 서버, 컬렉션 및 프로젝트 수준에서 네임스페이스 목록을 볼 수도 있습니다.
ID 사용자나 그룹의 ID입니다. ID 지정자에 대한 자세한 내용은 이 문서의 후반부에 있는 ID 지정자를 참조하세요.
  • 허용
    그룹 또는 사용자는 작업이 지정하는 작업을 수행할 수 있습니다.
  • DENY
    그룹 또는 사용자가 동작이 지정하는 작업을 수행할 수 없습니다.
/collection :CollectionURL /server를 사용하지 않는 경우 필수입니다. http:// ServerName : Port / VirtualDirectoryName CollectionName 형식으로 프로젝트 컬렉션의 URL을 지정합니다. /
/server :ServerURL /collection을 사용하지 않는 경우 필수입니다. 애플리케이션 계층 서버의 URL을 http:// ServerName : Port / VirtualDirectoryName 형식으로 지정합니다.

설명

Azure DevOps 애플리케이션 계층 서버에서 이 명령을 실행합니다.

액세스 제어 엔트리는 컴퓨터 또는 서버에서 사용자, 그룹, 서비스 또는 컴퓨터가 수행할 수 있는 작업을 결정하는 보안 메커니즘입니다.

예: 서버 수준 네임스페이스 표시

다음 예제에서는 ADatumCorporation이라는 응용 프로그램 계층 서버에 대해 서버 수준에서 사용할 수 있는 네임스페이스를 표시합니다.

참고

예제는 설명만을 위한 것이며 실제 데이터가 아닙니다. 어떠한 실제 사례와도 연관시킬 의도가 없으며 그렇게 유추해서도 안 됩니다.

tfssecurity /a /server:ServerURL 

샘플 출력:

    TFSSecurity - Team Foundation Server Security Tool
    Copyright (c) Microsoft Corporation.  All rights reserved.

    The target Team Foundation Server is http://ADatumCorporation:8080/.

    The following security namespaces are available to have permissions set on them:

         Registry
         Identity
         Job
         Server
         CollectionManagement
         Warehouse
         Catalog
         EventSubscription
         Lab

    Done.

예제: 사용 가능한 컬렉션 수준 작업 표시

다음 예제에서는 컬렉션 수준에서 서버 네임스페이스에 사용할 수 있는 작업을 표시합니다.

tfssecurity /a Server /collection:CollectionURL 

샘플 출력:

    TFSSecurity - Team Foundation Server Security Tool
    Copyright (c) Microsoft Corporation.  All rights reserved.

    The target Team Foundation Server is http://ADatumCorporation:8080/.

    The following actions are available in the security namespace Server:
        GenericRead
        GenericWrite
        Impersonate
        TriggerEvent

    Done.

예: 인스턴스 수준 권한 제거

다음 예제에서는 Datum1 도메인 사용자 John Peoples(Datum1 jpeoples)에 대한 ADatumCorporation 배포에 대한 서버 수준 인스턴스 수준 정보 보기 권한을 \ 제거합니다.

tfssecurity /a- Server FrameworkGlobalSecurity GenericRead n:Datum1\jpeoples ALLOW /server:http://ADatumCorporation:8080 

샘플 출력:

    TFSSecurity - Team Foundation Server Security Tool
    Copyright (c) Microsoft Corporation.  All rights reserved.

    The target Team Foundation Server is http://ADatumCorporation:8080/.
    Resolving identity "n:Datum1\jpeoples"...
      [U] Datum1\jpeoples (John Peoples)
    Removing the access control entry...
    Verifying...

    Effective ACL on object "FrameworkGlobalSecurity":
      [+] GenericRead                        [INSTANCE]\Team Foundation Valid Users
      [+] GenericRead                        [INSTANCE]\SharePoint Web Application Services
      [+] Impersonate                        [INSTANCE]\SharePoint Web Application Services
      [+] GenericRead                        [INSTANCE]\Team Foundation Service Accounts
      [+] GenericWrite                       [INSTANCE]\Team Foundation Service Accounts
      [+] Impersonate                        [INSTANCE]\Team Foundation Service Accounts
      [+] TriggerEvent                       [INSTANCE]\Team Foundation Service Accounts
      [+] GenericRead                        [INSTANCE]\Team Foundation Administrators
      [+] GenericWrite                       [INSTANCE]\Team Foundation Administrators
      [+] TriggerEvent                       [INSTANCE]\Team Foundation Administrators

    Done.

예: 컬렉션 수준 권한 제거

다음 예제에서는 Datum1 도메인 사용자 John Peoples(Datum1 jpeoples)에 대한 Collection0 프로젝트 컬렉션에 대한 컬렉션 수준 뷰 컬렉션 수준 정보 권한을 \ 제거합니다.

tfssecurity /a+ Server FrameworkGlobalSecurity GenericRead n:Datum1\jpeoples ALLOW /collection:http://ADatumCorporation:8080/Collection0

샘플 출력:

    TFSSecurity - Team Foundation Server Security Tool
    Copyright (c) Microsoft Corporation.  All rights reserved.
    The target Team Foundation Server is http://ADatumCorporation:8080/COLLECTION0.
    Resolving identity "n:Datum1\jpeoples"...
      [U] DATUM1\jpeoples (John Peoples)
    Removing the access control entry...
    Verifying...

    Effective ACL on object "FrameworkGlobalSecurity":
      [+] GenericRead                        [Collection0]\Project Collection ValidUsers
      [+] GenericRead                        [Collection0]\Project Collection Service Accounts
      [+] GenericWrite                       [Collection0]\Project Collection Service Accounts
      [+] Impersonate                        [Collection0]\Project Collection Service Accounts
      [+] TriggerEvent                       [Collection0]\Project Collection Service Accounts
      [+] GenericRead                        [Collection0]\Project Collection Administrators
      [+] GenericWrite                       [Collection0]\Project Collection Administrators
      [+] TriggerEvent                       [Collection0]\Project Collection Administrators
      [+] GenericRead                        [INSTANCE]\SharePoint Web Application Services
      [+] Impersonate                        [INSTANCE]\SharePoint Web Application Services
      [+] GenericRead                        [Collection0]\Project Collection Build Service Accounts

    Done.

/acl: 액세스 제어 목록 표시

/acl을 사용하여 특정 개체에 적용되는 액세스 제어 목록을 표시합니다.

tfssecurity /acl Namespace Token [/collection:CollectionURL] [/server:ServerURL]

사전 요구 사항

/acl 명령을 사용하려면 /collection 또는 /server 매개 변수를 각각 사용하는지 여부에 따라 컬렉션 수준 정보 보기 또는 인스턴스 수준 정보 보기 권한이 허용으로 설정되어 있어야 합니다. 자세한 내용은 Azure DevOps Server 대한 권한 참조를 참조하세요.

매개 변수

인수 설명
네임스페이스 사용자 또는 그룹에 대한 사용 권한을 보려는 그룹이 포함된 네임스페이스입니다.
/collection :CollectionURL /server를 사용하지 않는 경우 필수입니다. http:// ServerName : Port / VirtualDirectoryName CollectionName 형식으로 프로젝트 컬렉션의 URL을 지정합니다. /
/server :ServerURL /collection을 사용하지 않는 경우 필수입니다. 애플리케이션 계층 서버의 URL을 http:// ServerName : Port / VirtualDirectoryName 형식으로 지정합니다.

설명

Azure DevOps 애플리케이션 계층 서버에서 이 명령을 실행합니다.

액세스 제어 엔트리는 컴퓨터 또는 서버에서 사용자, 그룹, 서비스 또는 컴퓨터가 수행할 수 있는 작업을 결정하는 보안 메커니즘입니다.

예: 심각도 네임스페이스에 대한 ACL 할당 나열

다음 예제에서는 ADatumCorporation 배포 내의 서버 네임스페이스에서 FrameworkGlobalSecurity 토큰에 액세스할 수 있는 사용자 및 그룹을 표시합니다.

참고

예제는 설명만을 위한 것이며 실제 데이터가 아닙니다. 어떠한 실제 사례와도 연관시킬 의도가 없으며 그렇게 유추해서도 안 됩니다.

tfssecurity /acl Server FrameworkGlobalSecurity /server:ServerURL 

샘플 출력:

    TFSSecurity - Team Foundation Server Security Tool
    Copyright (c) Microsoft Corporation.  All rights reserved.
    The target Team Foundation Server is http://ADatumCorporation:8080/.
    Retrieving the access control list for object "Server"...

    Effective ACL on object "FrameworkGlobalSecurity":
      [+] GenericRead                        [INSTANCE]\Team Foundation Valid Users
      [+] GenericRead                        [INSTANCE]\SharePoint Web Application Services
      [+] Impersonate                        [INSTANCE]\SharePoint Web Application Services
      [+] GenericRead                        [INSTANCE]\Team Foundation Service Accounts
      [+] GenericWrite                       [INSTANCE]\Team Foundation Service Accounts
      [+] Impersonate                        [INSTANCE]\Team Foundation Service Accounts
      [+] TriggerEvent                       [INSTANCE]\Team Foundation Service Accounts
      [+] GenericRead                        [INSTANCE]\Team Foundation Administrators
      [+] GenericWrite                       [INSTANCE]\Team Foundation Administrators
      [+] TriggerEvent                       [INSTANCE]\Team Foundation Administrators
      [+] GenericRead                        DATUM1\jpeoples

    Done.

그룹

/g: 그룹 나열

/g를 사용하여 프로젝트, 프로젝트 컬렉션 또는 Azure DevOps Server 그룹을 나열합니다.

tfssecurity /g [scope] [/collection:CollectionURL] [/server:ServerURL]

사전 요구 사항

사용 하려면는 /g 명령을 사용 하는 여부에 따라 컬렉션 수준 정보 보기 또는 인스턴스 수준 정보 보기 권한을 허용으로 설정 해야 합니다는 /collection 또는 /server 매개 변수를 각각 사용 하는 여부에 따라 합니다. 단일 프로젝트의 범위 내에서 /g 명령을 사용하려면 프로젝트 수준 정보 보기 권한이 허용으로 설정되어 있어야 합니다. 자세한 내용은 권한 및 그룹 참조를 참조하세요.

매개 변수

인수 설명
scope 선택 사항입니다. 그룹을 표시할 프로젝트의 URI를 지정합니다. 프로젝트의 URI를 가져오려면 팀 탐색기 열고 프로젝트를 마우스 오른쪽 단추로 클릭하고 속성을 클릭한 다음 URL에 대한 전체 항목을 복사합니다.
/collection :CollectionURL /server를 사용하지 않는 경우 필수입니다. http:// ServerName : Port / VirtualDirectoryName CollectionName 형식으로 프로젝트 컬렉션의 URL을 지정합니다. /
/server :ServerURL /collection을 사용하지 않는 경우 필수입니다. 애플리케이션 계층 서버의 URL을 http:// ServerName : Port / VirtualDirectoryName 형식으로 지정합니다.

설명

Azure DevOps 애플리케이션 계층 서버에서 이 명령을 실행합니다.

TFSSecurity 명령줄 유틸리티의 /g 명령은 선택한 범위 내의 모든 그룹에 대한 정보를 표시합니다. 이 범위는 프로젝트 컬렉션(/server) 또는 애플리케이션 계층 서버(/instance)일 수 있습니다. 프로젝트의 범위와 함께 사용하는 경우 해당 프로젝트와 연결된 그룹에 대한 정보만 표시됩니다.

예: 컬렉션 수준 그룹 정보 표시

다음 예제에서는 프로젝트 컬렉션 내의 모든 그룹에 대한 정보를 표시합니다.

tfssecurity /g /collection:CollectionURL

/g+: 기존 그룹에 사용자 또는 다른 그룹 추가

/g+를 사용하여 기존 그룹에 사용자 또는 다른 그룹을 추가합니다.

tfssecurity /g+ groupIdentity memberIdentity [/collection:CollectionURL] [/server:ServerURL]

사전 요구 사항

사용 하려면는 /g+ 명령을 사용 하려면는 컬렉션 수준 정보 보기 및 컬렉션 수준 정보 편집 또는 인스턴스 수준 정보 보기 및 인스턴스 수준 정보 편집 권한을 사용 하는 여부에 따라 허용으로 설정 해야는 /collection 또는 /server 매개 변수를 각각. 자세한 내용은 보안 그룹 및 권한 참조 를 참조하세요.

매개 변수

인수 설명
groupIdentity 그룹 ID를 지정합니다. 유효한 ID 지정자에 대한 자세한 내용은 이 문서의 후반부에 있는 ID 지정자를 참조하세요.
memberIdentity 멤버 ID를 지정합니다. 유효한 ID 지정자에 대한 자세한 내용은 이 문서의 후반부에 있는 ID 지정자를 참조하세요.
/collection :CollectionURL /server를 사용하지 않는 경우 필수입니다. http:// ServerName : Port / VirtualDirectoryName CollectionName 형식으로 프로젝트 컬렉션의 URL을 지정합니다. /
/server :ServerURL /collection을 사용하지 않는 경우 필수입니다. 애플리케이션 계층 서버의 URL을 http:// ServerName : Port / VirtualDirectoryName 형식으로 지정합니다.

설명

Azure DevOps 애플리케이션 계층 서버에서 이 명령을 실행합니다.

팀 탐색기 사용하여 기존 그룹에 사용자 및 그룹을 추가할 수도 있습니다. 자세한 내용은 프로젝트 또는 컬렉션 수준에서 권한 설정을참조하세요.

예: 서버 수준 그룹에 사용자 추가

다음 예제에서는 Team Foundation Administrators 그룹에 Datum1 도메인 사용자 John Peoples(Datum1 \ jpeoples)를 추가합니다.

참고

예제는 설명만을 위한 것이며 실제 데이터가 아닙니다. 어떠한 실제 사례와도 연관시킬 의도가 없으며 그렇게 유추해서도 안 됩니다.

tfssecurity /g+ "Team Foundation Administrators" n:Datum1\jpeoples /server:http://ADatumCorporation:8080

샘플 출력:

    TFSSecurity - Team Foundation Server Security Tool
    Copyright (c) Microsoft Corporation.  All rights reserved.

    The target Team Foundation Server is http://ADatumCorporation:8080/.
    Resolving identity "Team Foundation Administrators"...
    a [A] [INSTANCE]\Team Foundation Administrators
    Resolving identity "n:Datum1\jpeoples"...
      [U] DATUM1\jpeoples (John Peoples)
    Adding John Peoples to [INSTANCE]\Team Foundation Administrators...
    Verifying...

    SID: S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-0-0-0-0-1

    DN:

    Identity type: Team Foundation Server application group
       Group type: AdministrativeApplicationGroup
    Project scope: Server scope
     Display name: [INSTANCE]\Team Foundation Administrators
      Description: Members of this group can perform all operations on the Team Foundation Application Instance.

    4 member(s):
      [U] Datum1\hholt (Holly Holt)
      [U] Datum1\jpeoples (John Peoples)
      [G] BUILTIN\Administrators (BUILTIN\Administrators)
    s [A] [INSTANCE]\Team Foundation Service Accounts

    Member of 2 group(s):
    a [A] [Collection0]\Project Collection Administrators
    e [A] [INSTANCE]\Team Foundation Valid Users

    Done.

/g-: 사용자 또는 그룹 제거

/g-를 사용하여 기존 그룹에서 사용자 또는 사용자 그룹을 제거합니다.

tfssecurity /g- groupIdentity memberIdentity [/collection:CollectionURL] [/server:ServerURL]

사전 요구 사항

/g- 명령을 사용하려면 /collection 또는 /server 매개 변수를 각각 사용하는지에 따라 컬렉션 수준 정보 보기 및 컬렉션 수준 정보 편집 또는 인스턴스 수준 정보 보기 및 인스턴스 수준 정보 편집 권한이 허용으로 설정되어 있어야 합니다. 자세한 내용은 보안 그룹 및 권한 참조 를 참조하세요.

매개 변수

인수 설명
groupIdentity 그룹 ID를 지정합니다. 유효한 ID 지정자에 대한 자세한 내용은 이 문서의 후반부에 있는 ID 지정자를 참조하세요.
memberIdentity 멤버 ID를 지정합니다. 유효한 ID 지정자에 대한 자세한 내용은 이 문서의 후반부에 있는 ID 지정자를 참조하세요.
/collection :CollectionURL /server를 사용하지 않는 경우 필수입니다. http:// ServerName : Port / VirtualDirectoryName CollectionName 형식으로 프로젝트 컬렉션의 URL을 지정합니다. /
/server :ServerURL /collection을 사용하지 않는 경우 필수입니다. 애플리케이션 계층 서버의 URL을 http:// ServerName : Port / VirtualDirectoryName 형식으로 지정합니다.

설명

Azure DevOps 애플리케이션 계층 서버에서 이 명령을 실행합니다.

팀 탐색기 사용하여 기존 그룹에 사용자 및 그룹을 추가할 수도 있습니다. 자세한 내용은 프로젝트 그룹에서 사용자 제거 또는 프로젝트 또는 컬렉션 수준에서 권한 설정을참조하세요.

예: 서버 수준 그룹에서 사용자 제거

다음 예에서는 \ Team Foundation Administrators 그룹에서 Datum1 도메인 사용자 John Peoples (Datum1 jpeoples)을 제거 합니다.

참고

예제는 설명만을 위한 것이며 실제 데이터가 아닙니다. 어떠한 실제 사례와도 연관시킬 의도가 없으며 그렇게 유추해서도 안 됩니다.

tfssecurity /g- "Team Foundation Administrators" n:Datum1\jpeoples /server:http://ADatumCorporation:8080

샘플 출력:

    TFSSecurity - Team Foundation Server Security Tool
    Copyright (c) Microsoft Corporation.  All rights reserved.

    The target Team Foundation Server is http://ADatumCorporation:8080/.
    Resolving identity "Team Foundation Administrators"...
    a [A] [INSTANCE]\Team Foundation Administrators
    Resolving identity "n:Datum1\jpeoples"...
      [U] DATUM1\jpeoples (John Peoples)
    Removing John Peoples from [INSTANCE]\Team Foundation Administrators...
    Verifying...

    SID: S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-0-0-0-0-1

    DN:

    Identity type: Team Foundation Server application group
       Group type: AdministrativeApplicationGroup
    Project scope: Server scope
     Display name: [INSTANCE]\Team Foundation Administrators
      Description: Members of this group can perform all operations on the Team Foundation Application Instance.

    3 member(s):
      [U] Datum1\hholt (Holly Holt)
      [G] BUILTIN\Administrators (BUILTIN\Administrators)
    s [A] [INSTANCE]\Team Foundation Service Accounts

    Member of 2 group(s):
    a [A] [Collection0]\Project Collection Administrators
    e [A] [INSTANCE]\Team Foundation Valid Users

    Done.

/gc: 프로젝트 수준 그룹 만들기

명령 프롬프트에서 /gc 를 사용 하 여 프로젝트 수준 그룹을 만듭니다. 사용자 인터페이스에서 프로젝트 수준 그룹을 만들려면 사용자 또는 그룹 관리를 참조 하세요.

tfssecurity /gc Scope GroupName [GroupDescription] [/collection:CollectionURL]

사전 요구 사항

/Gc 명령을 사용 하려면 해당 프로젝트에 대 한 Project-Level 정보 편집 권한이 허용으로 설정 되어 있어야 합니다. 자세한 내용은 사용 권한 참조를 참조 하세요.

매개 변수

인수 설명
범위 프로젝트 수준 그룹을 추가 하려는 프로젝트의 URI입니다. 프로젝트에 대 한 URI를 가져오고, 연결 하 고, 팀 탐색기을 열고, 홈에서 프로젝트의 이름을 마우스로 가리키고, 주소를 읽습니다. 또는 웹 액세스에서 프로젝트에 연결하고 URL을 복사합니다.
GroupName 새 그룹의 이름입니다.
통해 프로젝트 그룹의 설명입니다. 선택 사항입니다.
/collection : collectionurl 프로젝트 컬렉션의 URL입니다. 필수 사항입니다. 프로젝트 컬렉션 내에서 그룹이 생성 됩니다. URL의 형식은 Http:// ServerName : Port / VirtualDirectoryName CollectionName입니다. /

설명

Azure DevOps에 대 한 응용 프로그램 계층 서버에서이 명령을 실행 합니다.

프로젝트 수준 그룹은 프로젝트의 보안 그룹입니다. 프로젝트 그룹을 사용하여 조직의 보안 요구 사항을 충족하는 읽기, 쓰기 및 관리 권한을 부여할 수 있습니다.

예: 프로젝트에 보안 그룹 추가

다음 예에서는 "vstfs://Classification/TeamProject/00000000-0000-0000-0000-000000000000" URI가 지정하는 프로젝트에 사용되는 그룹을 만듭니다. 이 그룹의 이름은 "Test Group"이고 설명은 "This group is for testing."입니다.

참고

예제는 설명만을 위한 것이며 실제 데이터가 아닙니다. 어떠한 실제 사례와도 연관시킬 의도가 없으며 그렇게 유추해서도 안 됩니다.

자리 표시자 GUID를이 그룹을 만들려는 프로젝트의 URI로 바꾸어야 합니다. 프로젝트에 대 한 URI를 가져오려면 팀 탐색기을 열고, 프로젝트를 마우스 오른쪽 단추로 클릭 하 고, 속성을 클릭 하 고, URL 속성의 전체 값을 복사 합니다.

명령을 실행 한 후 팀 탐색기에서 그룹을 확인할 수 있습니다. 명령에서 사용한 프로젝트를 마우스 오른쪽 단추로 클릭 하 고 Project 설정를 클릭 한 다음 그룹 멤버 자격을 클릭 합니다. teamprojectname의 Project 그룹 대화 상자에서 그룹 목록에 테스트 그룹이 포함 됩니다.

참고

/Gc 명령을 사용 하 여 그룹을 만들 수 있지만 그룹에 사용자를 추가 하거나 사용 권한을 할당할 수는 없습니다. 그룹의 멤버 자격을 변경 하려면 /g +: 기존 그룹에 사용자 또는 다른 그룹 추가/g-: 사용자 또는 그룹 제거를 참조 하세요. 그룹에 대 한 사용 권한을 변경 하려면 /a +: 권한 추가/a-: 그룹의 멤버 자격에서 사용자 또는 그룹 제거를 참조 하세요.

tfssecurity /gc "vstfs:///Classification/TeamProject/00000000-0000-0000-0000-000000000000" "Test Group" "This group is for team members who test our code" /collection:CollectionURL

/gcg: 서버 또는 컬렉션 수준 그룹 만들기

/Gcg 명령을 사용 하 여 서버 수준 또는 컬렉션 수준 그룹을 만듭니다. 웹 포털에서 컬렉션 수준 그룹을 만들려면 프로젝트 또는 컬렉션 수준에서 권한 설정을 참조 하세요.

tfssecurity /gcg GroupName [GroupDescription] [/collection:CollectionURL] [/server:ServerURL]`

사전 요구 사항

/Gcg 명령을 사용 하려면 해당 프로젝트에 대 한 프로젝트 수준 정보 편집 권한이 허용 으로 설정 되어 있어야 합니다. 자세한 내용은 보안 그룹 및 사용 권한 참조를 참조 하세요.

매개 변수

인수 Description
GroupName 그룹 이름입니다.
통해 그룹 설명입니다. 선택 사항입니다.
/collection : collectionurl /Server 를 사용 하지 않는 경우 필수입니다. 다음 형식으로 프로젝트 컬렉션의 URL을 지정 합니다. Http:// ServerName : Port / VirtualDirectoryName / CollectionName
/server : ServerURL /Collection 을 사용 하지 않는 경우 필수입니다. 응용 프로그램 계층 서버의 URL을 다음과 같은 형식으로 지정 합니다. Http:// ServerName : Port / VirtualDirectoryName

설명

Azure DevOps에 대 한 응용 프로그램 계층 서버에서이 명령을 실행 합니다.

서버 수준 그룹은 응용 프로그램 계층에서 직접 생성 되 고 모든 프로젝트 컬렉션에 적용 됩니다. 컬렉션 수준은 프로젝트 컬렉션 수준에서 만들어집니다. 이러한 컬렉션은 해당 컬렉션에 적용 되며 컬렉션 내의 모든 프로젝트에 영향을 미칩니다. 반면, 프로젝트 그룹은 컬렉션 내의 특정 프로젝트에 적용 되지만 해당 컬렉션의 다른 프로젝트에는 적용 되지 않습니다. 서버 수준 그룹에 권한을 할당 하 여 해당 그룹의 멤버가 프로젝트 컬렉션 만들기와 같은 Azure DevOps Server 자체에서 작업을 수행할 수 있도록 할 수 있습니다. 이러한 그룹의 멤버가 사용자 관리와 같은 프로젝트 컬렉션에서 작업을 수행할 수 있도록 컬렉션 수준 그룹에 권한을 할당할 수 있습니다.

참고

/Gcg 명령을 사용 하 여 그룹을 만들 수 있지만 그룹에 사용자를 추가 하거나 사용 권한을 할당 하는 데 사용할 수는 없습니다. 그룹의 멤버 자격을 변경 하는 방법에 대 한 자세한 내용은 /g +: 기존 그룹에 사용자 또는 다른 그룹 추가/g-: 사용자 또는 그룹 제거를 참조 하세요. 그룹에 대 한 사용 권한을 변경 하는 방법에 대 한 자세한 내용은 /a +: 권한 추가/a-: 그룹의 멤버 자격에서 사용자 또는 그룹 제거를 참조 하세요.

예: 컬렉션 수준 보안 그룹 추가

다음 예에서는 "A" 라는 설명이 포함 된 "Datum 테스터" 라는 컬렉션 수준 그룹을 만듭니다. Datum Corporation 테스터. "

참고

예제는 설명만을 위한 것이며 실제 데이터가 아닙니다. 어떠한 실제 사례와도 연관시킬 의도가 없으며 그렇게 유추해서도 안 됩니다.

tfssecurity /gcg "Datum Testers" "A. Datum Corporation Testers" /collection:CollectionURL

다음 예에서는 "A" 라는 설명이 포함 된 "Datum 감사자" 라는 서버 수준 그룹을 만듭니다. Datum Corporation 감사자 "

tfssecurity /gcg "Datum Auditors" "A. Datum Corporation Auditors" /server:ServerURL

/gd: 서버 또는 컬렉션 수준 그룹 삭제

/Gd 를 사용 하 여 서버 수준 또는 컬렉션 수준 그룹을 삭제 합니다.

tfssecurity /gd groupIdentity [/collection:CollectionURL] [/server:ServerURL]

사전 요구 사항

/Gd 명령을 사용 하려면 각각 /collection 또는 /server 매개 변수를 사용 하는지 여부에 따라 컬렉션 수준 정보 보기 및 컬렉션 수준 정보 편집 권한 또는 인스턴스 수준 정보 보기 및 인스턴스 수준 정보 편집 권한이 허용 으로 설정 되어 있어야 합니다. 자세한 내용은 보안 그룹 및 사용 권한 참조를 참조 하세요.

매개 변수

인수 설명
groupIdentity 그룹 ID를 지정합니다.
/collection : collectionurl /Server 를 사용 하지 않는 경우 필수입니다. 다음 형식으로 프로젝트 컬렉션의 URL을 지정 합니다. Http:// ServerName : Port / VirtualDirectoryName / CollectionName
/server : ServerURL /Collection 을 사용 하지 않는 경우 필수입니다. 응용 프로그램 계층 서버의 URL을 다음과 같은 형식으로 지정 합니다. Http:// ServerName : Port / VirtualDirectoryName

설명

Azure DevOps에 대 한 응용 프로그램 계층 서버에서이 명령을 실행 합니다. 웹 포털을 통해 사용 권한을 수정 하려면 프로젝트 또는 컬렉션 수준에서 사용 권한 설정을 참조 하세요.

예: 컬렉션 수준 보안 그룹 삭제

다음 예에서는 프로젝트 컬렉션에서 그룹을 삭제 합니다. 그룹은 "S-1-5-21-2127521184-1604012920-1887927527-588340", SID (보안 식별자)로 식별 됩니다. 그룹의 SID를 찾는 방법에 대 한 자세한 내용은 /im: 직접 멤버 자격을 작성 하는 id에 대 한 정보 표시를 참조 하세요. 친숙 한 이름을 사용 하 여 그룹을 삭제할 수도 있습니다.

참고

예제는 설명만을 위한 것이며 실제 데이터가 아닙니다. 어떠한 실제 사례와도 연관시킬 의도가 없으며 그렇게 유추해서도 안 됩니다.

tfssecurity /gd S-1-5-21-2127521184-1604012920-1887927527-588340 /collection:CollectionURL

/gud: 서버 또는 컬렉션 수준 그룹의 설명 변경

/Gud 를 사용 하 여 서버 수준 또는 컬렉션 수준 그룹에 대 한 설명을 변경 합니다.

tfssecurity /gud GroupIdentity GroupDescription [/collection:CollectionURL] [/server:ServerURL]

사전 요구 사항

/Gud 명령을 사용 하려면 프로젝트 수준 정보 편집 권한이 허용으로 설정 되어 있어야 합니다. 자세한 내용은 보안 그룹 및 사용 권한 참조를 참조 하세요.

매개 변수

인수 설명
GroupIdentity 그룹 ID를 지정합니다. 유효한 id 지정자에 대 한 자세한 내용은이 문서 뒷부분의 identity 지정자 를 참조 하세요.
통해 그룹에 대 한 새 설명을 지정 합니다.
/collection : collectionurl /Server 를 사용 하지 않는 경우 필수입니다. 다음 형식으로 프로젝트 컬렉션의 URL을 지정 합니다. Http:// ServerName : Port / VirtualDirectoryName / CollectionName
/server : ServerURL /Collection 을 사용 하지 않는 경우 필수입니다. 응용 프로그램 계층 서버의 URL을 다음과 같은 형식으로 지정 합니다. Http:// ServerName : Port / VirtualDirectoryName

설명

Azure DevOps에 대 한 응용 프로그램 계층 서버에서이 명령을 실행 합니다.

예: 보안 그룹에 설명 추가

다음 예제에서는 "이 그룹의 멤버는이 프로젝트의 코드를 테스트" 하는 "Datum 테스터" 라는 설명을 연결 합니다.

참고

예제는 설명만을 위한 것이며 실제 데이터가 아닙니다. 어떠한 실제 사례와도 연관시킬 의도가 없으며 그렇게 유추해서도 안 됩니다.

tfssecurity /gud "Datum Testers" "The members of this group test the code for this project" /collection:CollectionURL

/gun: 그룹 이름 바꾸기

/Gun 를 사용 하 여 서버 수준 또는 컬렉션 수준 그룹의 이름을 바꿉니다.

tfssecurity /gun GroupIdentity GroupName [/collection:CollectionURL] [/server:ServerURL]

사전 요구 사항

/Gun 명령을 사용 하려면 각각 /collection 또는 /server 매개 변수를 사용 하는지 여부에 따라 컬렉션 수준 정보 보기 및 컬렉션 수준 정보 편집 권한 또는 인스턴스 수준 정보 보기 및 인스턴스 수준 정보 편집 권한이 허용으로 설정 되어 있어야 합니다. 자세한 내용은 보안 그룹 및 사용 권한 참조를 참조 하세요.

매개 변수

인수 설명
GroupIdentity 그룹 ID를 지정합니다. 유효한 id 지정자에 대 한 자세한 내용은이 문서 뒷부분의 identity 지정자 를 참조 하세요.
GroupName 그룹의 새 이름을 지정 합니다.
/collection : collectionurl /Server 를 사용 하지 않는 경우 필수입니다. 다음 형식으로 프로젝트 컬렉션의 URL을 지정 합니다. Http:// ServerName : Port / VirtualDirectoryName / CollectionName
/server : ServerURL /Collection 을 사용 하지 않는 경우 필수입니다. 응용 프로그램 계층 서버의 URL을 다음과 같은 형식으로 지정 합니다. Http:// ServerName : Port / VirtualDirectoryName

설명

Azure DevOps에 대 한 응용 프로그램 계층 서버에서이 명령을 실행 합니다.

예: 보안 그룹 이름 바꾸기

다음 예제에서는 컬렉션 수준 그룹 "A"의 이름을 바꿉니다. Datum Corporation 테스터 "to". Datum Corporation 테스트 엔지니어. "

참고

예제는 설명만을 위한 것이며 실제 데이터가 아닙니다. 어떠한 실제 사례와도 연관시킬 의도가 없으며 그렇게 유추해서도 안 됩니다.

tfssecurity /gun "A. Datum Corporation Testers" "A. Datum Corporation Test Engineers" /collection:CollectionURL

Id 및 멤버 자격

/i: 지정된 그룹의 ID 정보 표시

Azure DevOps Server 배포에서 지정 된 그룹에 대 한 id 정보를 표시 하려면 /i 를 사용 합니다.

tfssecurity /i Identity [/collection:CollectionURL] [/server:ServerURL]

사전 요구 사항

/I 명령을 사용 하려면 각각/collection 또는/server 매개 변수를 사용 하는지 여부에 따라 컬렉션 수준 정보 보기 또는 인스턴스 수준 정보 보기 권한이 허용으로 설정 되어 있어야 합니다. 자세한 내용은 보안 그룹 및 사용 권한 참조를 참조 하세요.

매개 변수

인수 설명
ID 사용자 또는 응용 프로그램 그룹의 id입니다. Id 지정자에 대 한 자세한 내용은이 문서 뒷부분의 identity 지정자 를 참조 하세요.
/collection : collectionurl /Server 를 사용 하지 않는 경우 필수입니다. 다음 형식으로 프로젝트 컬렉션의 URL을 지정 합니다. Http:// ServerName : Port / VirtualDirectoryName / CollectionName
/server : ServerURL /Collection 을 사용 하지 않는 경우 필수입니다. 응용 프로그램 계층 서버의 URL을 다음과 같은 형식으로 지정 합니다. Http:// ServerName : Port / VirtualDirectoryName

설명

Azure DevOps에 대 한 응용 프로그램 계층 서버에서이 명령을 실행 합니다.

TFSSecurity 명령줄 유틸리티의 /i 명령은 project collection (/server) 또는 응용 프로그램 계층 서버 (/instance) 내의 각 그룹에 대 한 정보를 표시 합니다. 멤버 자격 정보는 표시 되지 않습니다.

예: 보안 그룹에 대 한 id 정보 나열

다음 예제에서는 "Team Foundation Administrators" 그룹에 대 한 id 정보를 표시 합니다.

참고

예제는 설명만을 위한 것이며 실제 데이터가 아닙니다. 어떠한 실제 사례와도 연관시킬 의도가 없으며 그렇게 유추해서도 안 됩니다.

tfssecurity /i "Team Foundation Administrators" /server:ServerURL 

샘플 출력:

    Resolving identity "Team Foundation Administrators"...

    SID: S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-0-0-0-0-1

    DN:

    Identity type: Team Foundation Server application group
       Group type: AdministrativeApplicationGroup
    Project scope: Server scope
     Display name: Team Foundation Administrators
      Description: Members of this application group can perform all privileged operations on the server.

예: 보안 그룹에 대 한 id 정보 표시

다음 예에서는 adm: identity 지정자를 사용 하 여 Project Collection Administrators 그룹에 대 한 id 정보를 표시 합니다.

tfssecurity /i adm: /collection:CollectionURL 

샘플 출력:

    Resolving identity "adm:"...

    SID: S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-0-0-0-0-1

    DN:

    Identity type: Team Foundation Server application group
       Group type: AdministrativeApplicationGroup
    Project scope: Server scope
     Display name: [DatumOne]\Project Collection Administrators
      Description: Members of this application group can perform all privileged operations on the project collection.

다음 예에서는 adm: identity 지정자를 사용 하 여 "Datum" 프로젝트의 Project Administrators 그룹에 대 한 id 정보를 표시 합니다.

tfssecurity /i adm:vstfs:///Classification/TeamProject/ProjectGUID /collection:CollectionURL 

샘플 출력:

    Resolving identity "adm:vstfs:///Classification/TeamProject/ProjectGUID"...

    SID: S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-0-0-0-0-1

    DN:

    Identity type: Team Foundation Server application group
       Group type: AdministrativeApplicationGroup
    Project scope: Datum
     Display name: [Datum]\Project Administrators
      Description: Members of this application group can perform all operations in the project.

/im: 직접 멤버 자격을 작성 하는 id에 대 한 정보를 표시 합니다.

지정한 그룹의 직접 멤버 자격을 구성 하는 id에 대 한 정보를 표시 하려면 /im 을 사용 합니다.

tfssecurity /im Identity [/collection:CollectionURL] [/server:ServerURL]

사전 요구 사항

/Im 명령을 사용 하려면 각각/collection 또는/server 매개 변수를 사용 하는지 여부에 따라 컬렉션 수준 정보 보기 또는 인스턴스 수준 정보 보기 권한이 허용으로 설정 되어 있어야 합니다. 자세한 내용은 보안 그룹 및 사용 권한 참조를 참조 하세요.

매개 변수

인수 설명
ID 사용자나 그룹의 ID입니다. Id 지정자에 대 한 자세한 내용은이 문서 뒷부분의 identity 지정자 를 참조 하세요.
/collection : collectionurl /Server 를 사용 하지 않는 경우 필수입니다. 다음 형식으로 프로젝트 컬렉션의 URL을 지정 합니다. Http:// ServerName : Port / VirtualDirectoryName / CollectionName
/server : ServerURL /Collection 을 사용 하지 않는 경우 필수입니다. 응용 프로그램 계층 서버의 URL을 다음과 같은 형식으로 지정 합니다. Http:// ServerName : Port / VirtualDirectoryName

설명

Azure DevOps에 대 한 응용 프로그램 계층 서버에서이 명령을 실행 합니다.

TFSSecurity/im 명령은 지정 된 그룹의 직접 구성원만 표시 합니다. 이 목록에는 지정된 그룹의 멤버인 다른 그룹도 포함됩니다. 그러나 멤버 그룹의 실제 멤버는 표시되지 않습니다.

예: 보안 그룹의 멤버 자격 id 표시

다음 예제에서는 가상 회사 "A. Datum Corporation"에서 "Datum1" 도메인에 있는 "Team Foundation Administrators" 그룹의 직접 멤버 자격 ID 정보를 표시합니다.

참고

예제는 설명만을 위한 것이며 실제 데이터가 아닙니다. 어떠한 실제 사례와도 연관시킬 의도가 없으며 그렇게 유추해서도 안 됩니다.

tfssecurity /im "Team Foundation Administrators" /server:ServerURL

샘플 출력:

    Resolving identity "Team Foundation Administrators"...

    SID: S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-0-0-0-0-1

    DN:

    Identity type: Team Foundation Server application group
    Group type: AdministrativeApplicationGroup
    Project scope: Server scope
    Display name: Team Foundation Administrators
    Description: Members of this application group can perform all privileged operations on the server.

    3 member(s):
      [U] Datum1\hholt (Holt, Holly)
      [G] BUILTIN\Administrators (BUILTIN\Administrators)
    s [A] [InstanceName]\Team Foundation Service Accounts

    Member of 2 group(s):
    a [A] [DatumOne]\Project Collection Administrators ([DatumOne]\Project Collection Administrators)
    e [A] [InstanceName]\Team Foundation Valid Users

    Done.

예: 보안 그룹에 대 한 id 정보 표시

다음 예제에서는 가상 회사 "A의" Datum1 "도메인에 있는" DatumOne "프로젝트 컬렉션의 Project Collection Administrators 그룹에 대 한 id 정보를 표시 합니다. adm: ID 지정자를 사용하여 가상 회사 "A. Datum Corporation"에서 "Datum1" 도메인의 "DatumOne" 팀 프로젝트 컬렉션에 있는 Project Collection Administrators 그룹의 ID 정보를 표시합니다.

tfssecurity /im adm: /collection:CollectionURL 

샘플 출력:

    Resolving identity "adm: "...

    SID: S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-0-0-0-0-1

    DN:

    Identity type: Team Foundation Server application group
    Group type: AdministrativeApplicationGroup
    Project scope: Server scope
    Display name: [DatumOne]\Project Collection Administrators
    Description: Members of this application group can perform all privileged operations on the project collection.

    5 member(s):
      [U] Datum1\jpeoples (Peoples, John)
      [U] Datum1\hholt (Holt, Holly)
      [G] BUILTIN\Administrators (BUILTIN\Administrators)
    a [A] [InstanceName]\Team Foundation Administrators
    s [A] [DatumOne]\Project Collection Service Accounts ([DatumOne]\Project Collection Service Accounts)

    Member of 1 group(s):
    e [A] [DatumOne]\Project Collection Valid Users ([DatumOne]\Project Colleciton Valid Users)

    Done.

예: id 지정자를 사용 하 여 보안 그룹에 대 한 id 정보 표시

다음 예에서는 가상 회사 "A의" Datum1 "도메인에 있는" DatumOne "프로젝트 컬렉션의" Datum "프로젝트에 대 한 Project Administrators 그룹에 대 한 id 정보를 표시 합니다. adm: ID 지정자를 사용하여 가상 회사 "A. Datum Corporation"에서 "Datum1" 도메인의 "DatumOne" 팀 프로젝트 컬렉션에 있는 "Datum" 프로젝트에 대한 Project Administrators 그룹의 ID 정보를 표시합니다.

tfssecurity /im adm:vstfs:///Classification/TeamProject/ProjectGUID /collection:CollectionURL 

샘플 출력:

    Resolving identity "adm:vstfs:///Classification/TeamProject/ProjectGUID"...

    SID: S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXX

    DN:

    Identity type: Team Foundation Server application group
    Group type: AdministrativeApplicationGroup
    Project scope: Datum
    Display name: [Datum]\Project Administrators
    Description: Members of this application group can perform all operations in the project.

    2 member(s):
      [U] Datum1\jpeoples (Peoples, John)
      [U] Datum1\hholt (Holt, Holly)

    Member of 1 group(s):
    e [A] [DatumOne]\Project Collection Valid Users ([DatumOne]\Project Collection Valid Users)

    Done.

/imx: 확장 된 멤버 자격에 대 한 id 정보를 표시 합니다.

/Imx 를 사용 하 여 지정 된 그룹의 확장 된 멤버 자격을 구성 하는 id에 대 한 정보를 표시 합니다.

tfssecurity /imx Identity [/collection:CollectionURL] [/server:ServerURL]

사전 요구 사항

/Imx 명령을 사용 하려면 각각 /collection 또는 /server 매개 변수를 사용 하는지 여부에 따라 컬렉션 수준 정보 보기 또는 인스턴스 수준 정보 보기 권한이 허용으로 설정 되어 있어야 합니다. 자세한 내용은 보안 그룹 및 사용 권한 참조를 참조 하세요.

매개 변수

인수 설명
ID 사용자나 그룹의 ID입니다. Id 지정자에 대 한 자세한 내용은이 문서 뒷부분의 identity 지정자 를 참조 하세요.
/collection : collectionurl /Server 를 사용 하지 않는 경우 필수입니다. 다음 형식으로 프로젝트 컬렉션의 URL을 지정 합니다. Http:// ServerName : Port / VirtualDirectoryName / CollectionName
/server : ServerURL /Collection 을 사용 하지 않는 경우 필수입니다. 응용 프로그램 계층 서버의 URL을 다음과 같은 형식으로 지정 합니다. Http:// ServerName : Port / VirtualDirectoryName

설명

Azure DevOps에 대 한 응용 프로그램 계층 서버에서이 명령을 실행 합니다.

TFSSecurity/imx 명령은 지정 된 그룹의 확장 된 멤버만 표시 합니다. 이 목록에는 지정된 그룹의 멤버로 소속된 다른 그룹뿐만 아니라 이 멤버 그룹의 멤버도 포함됩니다.

예: 보안 그룹에 대 한 확장 된 멤버 자격 정보 표시

다음 예제에서는 가상 회사 "A. Datum Corporation"에서 "Datum1" 도메인의 "Team Foundation Administrators" 그룹에 대한 확장된 멤버 자격 ID 정보를 Datum Corporation"에서 "Datum1" 도메인에 있는 "Team Foundation Administrators" 그룹의 직접 멤버 자격 ID 정보를 표시합니다.

참고

예제는 설명만을 위한 것이며 실제 데이터가 아닙니다. 어떠한 실제 사례와도 연관시킬 의도가 없으며 그렇게 유추해서도 안 됩니다.

tfssecurity /imx "Team Foundation Administrators" /server:ServerURL

샘플 출력:

    Resolving identity "Team Foundation Administrators"...

    SID: S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-0-0-0-0-1

    DN:

    Identity type: Team Foundation Server application group
    Group type: AdministrativeApplicationGroup
    Project scope: Server scope
    Display name: Team Foundation Administrators
    Description: Members of this application group can perform all privileged operations on the server.

    10 member(s):
      [U] Datum1\hholt (Holly Holt)
      [U] Datum1\jpeoples (John Peoples)
      [U] Datum1\tommyh (Tommy Hartono)
      [U] Datum1\henriea (Henriette Andersen)
      [U] Datum1\djayne (Darcy Jayne)
      [U] Datum1\aprilr (April Reagan)
      [G] Datum1\InfoSec Secure Environment
      [U] Datum1\nbento (Nuno Bento)
      [U] Datum1\cristp (Cristian Petculescu)
      [G] BUILTIN\Administrators (BUILTIN\Administrators)
    s [A] [InstanceName]\Team Foundation Service Accounts

    Member of 3 group(s):
    a [A] [DatumOne]\Project Collection Administrators ([DatumOne]\Project Collection Administrators)
    e [A] [DatumOne]\Project Collection Valid Users ([DatumOne]\Project Collection Valid Users)
    e [A] [InstanceName]\Team Foundation Valid Users

    Done.

다음 예제에서는 가상 회사 "A의" Datum1 "도메인에 있는" DatumOne "프로젝트 컬렉션의 Project Collection Administrators 그룹에 대 한 id 정보를 표시 합니다. adm: ID 지정자를 사용하여 가상 회사 "A. Datum Corporation"에서 "Datum1" 도메인의 "DatumOne" 팀 프로젝트 컬렉션에 있는 "Datum" 프로젝트에 대한 Project Administrators 그룹의 ID 정보를 표시합니다.

tfssecurity /imx adm: /collection:CollectionURL 

샘플 출력:

    Resolving identity "adm: "...

    SID: S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-0-0-0-0-1

    DN:

    Identity type: Team Foundation Server application group
    Group type: AdministrativeApplicationGroup
    Project scope: Server scope
    Display name: [DatumOne]\Project Collection Administrators
    Description: Members of this application group can perform all privileged operations on the project collection.

    6 member(s):
      [U] Datum1\jpeoples (Peoples, John)
      [U] Datum1\hholt (Holt, Holly)
      [G] BUILTIN\Administrators (BUILTIN\Administrators)
    a [A] [InstanceName]\Team Foundation Administrators
    s [A] [InstanceName]\Team Foundation Service Accounts
    s [A] [DatumOne]\Project Collection Service Accounts ([DatumOne]\Project Collection Service Accounts)

    Member of 1 group(s):
    e [A] [DatumOne]\Project Collection Valid Users ([DatumOne]\Project Collection Valid Users)

    Done.

예: id 지정자를 사용 하 여 보안 그룹에 대 한 id 정보 표시

다음 예에서는 가상 회사 "A의" Datum1 "도메인에 있는" DatumOne "프로젝트 컬렉션의" Datum "프로젝트에 대 한 Project Administrators 그룹에 대 한 id 정보를 표시 합니다. adm: ID 지정자를 사용하여 가상 회사 "A. Datum Corporation"에서 "Datum1" 도메인의 "DatumOne" 팀 프로젝트 컬렉션에 있는 "Datum" 프로젝트에 대한 Project Administrators 그룹의 ID 정보를 표시합니다.

tfssecurity /imx adm:vstfs:///Classification/TeamProject/ProjectGUID /collection:CollectionURL 

샘플 출력:

    Resolving identity "adm:vstfs:///Classification/TeamProject/ProjectGUID"...

    SID: S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXX

    DN:

    Identity type: Team Foundation Server application group
    Group type: AdministrativeApplicationGroup
    Project scope: Datum
    Display name: [Datum]\Project Administrators
    Description: Members of this application group can perform all operations in the project.

    2 member(s):
      [U] Datum1\jpeoples (Peoples, John)
      [U] Datum1\hholt (Holt, Holly)

    Member of 2 group(s):
    e [A] [DatumOne]\Project Collection Valid Users ([DatumOne]\Project Collection Valid Users)
    e [A] [InstanceName]\Team Foundation Valid Users

    Done.

[G] 및 [U]와 같은 출력 지정자에 대 한 자세한 내용은이 문서의 뒷부분에 나오는 id 지정자 를 참조 하세요.

/m: 명시적 및 암시적 그룹 멤버 자격 확인

지정 된 그룹 또는 사용자에 대 한 명시적 및 암시적 그룹 멤버 자격 정보를 확인 하려면 /m 을 사용 합니다.

tfssecurity /m GroupIdentity [MemberIdentity] [/collection:CollectionURL] [/server:ServerURL]

사전 요구 사항

/M 명령을 사용 하려면 Team Foundation Administrators 보안 그룹의 멤버 여야 합니다. 자세한 내용은 보안 그룹 및 사용 권한 참조를 참조 하세요.

참고

관리자 자격 증명으로 로그온한 경우에도 이 기능을 실행하려면 관리자 권한 명령 프롬프트를 열어야 합니다.

매개 변수

인수 설명
GroupIdentity 그룹 ID를 지정합니다. 유효한 id 지정자에 대 한 자세한 내용은이 문서 뒷부분의 identity 지정자 를 참조 하세요.
MemberIdentity 멤버 ID를 지정합니다. 기본적으로이 인수의 값은 명령을 실행 하는 사용자의 id입니다. 유효한 id 지정자에 대 한 자세한 내용은이 문서 뒷부분의 identity 지정자 를 참조 하세요.
/collection : collectionurl /Server 를 사용 하지 않는 경우 필수입니다. 다음 형식으로 프로젝트 컬렉션의 URL을 지정 합니다. Http:// ServerName : Port / VirtualDirectoryName / CollectionName
/server : ServerURL /Collection 을 사용 하지 않는 경우 필수입니다. 응용 프로그램 계층 서버의 URL을 다음과 같은 형식으로 지정 합니다. Http:// ServerName : Port / VirtualDirectoryName

설명

로컬 응용 프로그램 계층 컴퓨터에서이 명령을 실행 합니다.

TFSSecurity 명령줄 유틸리티의 /m 명령은 직접 및 확장 된 멤버 자격을 모두 검사 합니다.

예: 보안 그룹에서 사용자의 멤버 자격 확인

다음 예제에서는 "Datum1 jpeoples" 사용자가 \ Team Foundation Administrators 서버 수준 그룹에 속하는지 여부를 확인 합니다.

참고

예제는 설명만을 위한 것이며 실제 데이터가 아닙니다. 어떠한 실제 사례와도 연관시킬 의도가 없으며 그렇게 유추해서도 안 됩니다.

tfssecurity /m "Team Foundation Administrators" n:Datum1\jpeoples /server:http://ADatumCorporation:8080

샘플 출력:

    TFSSecurity - Team Foundation Server Security Tool
    Copyright (c) Microsoft Corporation.  All rights reserved.

    The target Team Foundation Server is http://ADatumCorporation:8080/.
    Resolving identity "Team Foundation Administrators"...
    a [A] [INSTANCE]\Team Foundation Administrators
    Resolving identity "n:Datum1\jpeoples"...
      [U] DATUM1\jpeoples (John Peoples)
    Checking group membership...

    John Peoples IS a member of [INSTANCE]\Team Foundation Administrators.

    Done.

보안 네임 스페이스

참고

네임 스페이스와 토큰은 모든 버전의 Azure DevOps에 유효 합니다. 네임 스페이스는 시간이 지남에 따라 변경 될 수 있습니다. 네임 스페이스의 최신 목록을 가져오려면 명령줄 도구 또는 REST API 중 하나를 실행 합니다. 일부 네임 스페이스는 더 이상 사용 되지 않습니다. 자세한 내용은 보안 네임 스페이스 및 사용 권한 참조를 참조 하세요.

Id 지정자

다음 표의 표기판 중 하나를 사용하여 ID를 참조할 수 있습니다.

ID 지정자 설명 예제
Sid: Sid. 지정된 SID(보안 식별자)가 있는 ID를 참조합니다. sid:S-1-5-21-2127521184-1604012920-1887927527-588340
n:[D omain ] Name 지정된 이름을 포함하는 ID를 참조합니다. Windows 경우 Name은 계정 이름입니다. 참조된 ID가 도메인에 있는 경우 도메인 이름이 필요합니다. 애플리케이션 그룹의 경우 Name은 그룹 표시 이름이고 Domain은 포함하는 프로젝트의 URI 또는 GUID입니다. 이 컨텍스트에서 도메인을 생략하면 범위는 컬렉션 수준에 있는 것으로 가정됩니다. " " 가상 회사 " A의 Datum1 도메인에 있는 John Peoples 사용자의 " ID를 참조합니다. " Datum Corporation:"

n:DATUM1\jpeoples

애플리케이션 그룹을 참조하려면 다음을 수행합니다.

n: " 정규 직원"

n:00a10d23-7d45-4439-981b-d3b3e0b0b1ee\Vendors
adm:[Scope] 범위의 관리 애플리케이션 그룹(예: " 서버 수준의 Team Foundation Administrators " 또는 컬렉션 수준의 Project 컬렉션 " 관리자)을 " 참조합니다. 선택적 매개 변수 Scope는 GUID 및 연결 문자열을 포함하는 프로젝트 URI 또는 URL입니다. 범위를 생략하면 /instance 또는 /server 매개 변수가 사용되는지 여부에 따라 서버 또는 컬렉션 범위가 가정됩니다. 두 경우 모두 콜론이 여전히 필요합니다. adm:vstfs:///Classification/TeamProject/ GUID
Srv: 서비스 계정에 대한 애플리케이션 그룹을 참조합니다. 해당 없음
모든: 모든 그룹 및 ID를 참조합니다. 해당 없음
String 정규화되지 않은 문자열을 참조합니다. String이 S-1- 로 시작하는 경우 SID로 식별됩니다. 문자열이 CN= 또는 LDAP:// 경우 고유 이름으로 식별됩니다. 그렇지 않으면 String이 이름으로 식별됩니다. "팀 테스터"

형식 표식

다음 표식은 출력 메시지에서 ID 및 ACE 유형을 식별하는 데 사용됩니다.

ID 유형 표식

ID 유형 표식 설명
U 사용자 Windows.
G Windows group.
A 애플리케이션 그룹을 Azure DevOps Server.
A [****] 관리 애플리케이션 그룹.
s [ A ] 서비스 계정 애플리케이션 그룹.
X ID가 잘못되었습니다.
? ID를 알 수 없습니다.

액세스 제어 항목 표식

액세스 제어 항목 표식 설명
+ 액세스 제어 항목을 허용합니다.
- DENY 액세스 제어 항목입니다.
* [] 상속된 액세스 제어 항목입니다.