Condividi tramite


Usare TFSSecurity per gestire gruppi e autorizzazioni per Azure DevOps

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

È possibile usare lo strumento da riga di comando TFSSecurity per creare, modificare ed eliminare gruppi e utenti in Azure DevOps Server e modificare anche le autorizzazioni per gruppi e utenti. Per informazioni su come eseguire queste attività nell'interfaccia utente, vedere Aggiungere utenti o gruppi a un progetto.

Importante

Lo strumento a riga di comando TFSSecurity è stato reso obsoleto per l'uso su Azure DevOps Services. Anche se TFSSecurity può funzionare per alcuni scenari di Azure DevOps Services, non è supportato. Il metodo consigliato per apportare modifiche ai gruppi di sicurezza e alle autorizzazioni per Azure DevOps Services consiste nell'usare il portale Web, az devops security o az devops permission command line tools o l'API REST di sicurezza.

Posizione degli strumenti da riga di comando

Gli strumenti da riga di comando di Azure DevOps vengono installati nella directory /Tools di un server livello applicazione Azure DevOps.

  • 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

Annotazioni

Anche se si è connessi con credenziali amministrative, è necessario aprire un prompt dei comandi con privilegi elevati per eseguire questa funzione.

Autorizzazioni

/a+: Aggiungere autorizzazioni

Usare /a+ per aggiungere autorizzazioni per un utente o un gruppo in un gruppo a livello di server, a livello di raccolta o a livello di progetto. Per aggiungere utenti a gruppi dal portale Web, vedere Impostare le autorizzazioni a livello di progetto o raccolta.

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

Prerequisiti

Per usare il comando /a+ , è necessario avere le informazioni a livello di raccolta o l'autorizzazione Visualizza informazioni a livello di istanza impostata su Consenti, a seconda che si usi rispettivamente il parametro /collection o /server . Se si modificano le autorizzazioni per un progetto, è necessario disporre anche dell'autorizzazione Modifica informazioni a livello di progetto per il progetto impostato su Consenti. Per altre informazioni, vedere Informazioni di riferimento su autorizzazioni e gruppi.

Parametri

Argomentazione Descrizione
Namespace Spazio dei nomi contenente il gruppo a cui si desidera aggiungere autorizzazioni per un utente o un gruppo. È anche possibile usare il comando tfssecurity /a per visualizzare un elenco di namespace a livello di server, raccolta e progetto.
Identità Identità dell'utente o del gruppo. Per altre informazioni sugli identificatori di identità, vedere Identificatori di identità più avanti in questo articolo.
  • PERMETTERE
    Il gruppo o l'utente può eseguire l'operazione specificata dall'azione.
  • DENY
    Il gruppo o l'utente non può eseguire l'operazione specificata dall'azione.
/collection :CollectionURL Obbligatorio se /server non viene usato. Specifica l'URL di una raccolta di progetti nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName / CollectionName
/server :ServerURL Obbligatorio se /collection non viene utilizzato. Specifica l'URL di un server livello applicazione nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName

Osservazioni:

Eseguire questo comando in un server a livello di applicazione per Azure DevOps.

Le voci di controllo di accesso sono meccanismi di sicurezza che determinano quali operazioni un utente, un gruppo, un servizio o un computer sono autorizzati a eseguire.

Esempio: Visualizzare i namespace disponibili

Nell'esempio seguente vengono visualizzati i namespace disponibili a livello di configurazione del server per il server di livello applicativo denominato ADatumCorporation.

Annotazioni

Gli esempi sono solo per illustrazione e sono fittizi. Nessuna associazione reale è intenzionale o può essere desunta.

tfssecurity /a /server:ServerURL 

Output di esempio:

    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.

Esempio: Visualizzare le azioni disponibili

Nell'esempio seguente vengono visualizzate le azioni disponibili per lo spazio dei nomi a livello di server a livello di raccolta.

tfssecurity /a Server /collection:CollectionURL 

Output di esempio:

    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.

Esempio: Assegnare un'autorizzazione a livello di istanza

Nell'esempio seguente viene concessa l'autorizzazione a livello di server per Visualizza informazioni a livello di istanza nella distribuzione di ADatumCorporation per l'utente di dominio Datum1 John Peoples (Datum1\jpeoples).

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

Output di esempio:

    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.

Esempio: Assegnare un'autorizzazione a livello di raccolta

Nell'esempio seguente viene concessa l'autorizzazione a livello di raccolta per visualizzare le informazioni della raccolta di progetti Collection0 all'utente di dominio Datum1 John Peoples (Datum1\jpeoples).

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

Output di esempio:

    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-: Rimuovere un utente o un gruppo dall'appartenenza a un gruppo

Usare il comando /a- per rimuovere un utente o un gruppo dall'appartenenza a un gruppo a livello di server, a livello di raccolta o a livello di progetto. Per rimuovere gli utenti dai gruppi dal portale Web, vedere Rimuovere gli account utente.

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

Prerequisiti

Per usare il comando /a-, è necessario avere l'autorizzazione Visualizza informazioni a livello di raccolta o Visualizza informazioni a livello di istanza impostata su Consenti, a seconda che si utilizzi rispettivamente il parametro /collection o /server. Se si modificano le autorizzazioni per un progetto, è necessario disporre anche dell'autorizzazione Modifica informazioni a livello di progetto per il progetto impostato su Consenti.

Parametri

Argomentazione Descrizione
Namespace Spazio dei nomi contenente il gruppo a cui si desidera rimuovere le autorizzazioni per un utente o un gruppo. È anche possibile usare il comando tfssecurity /a per visualizzare un elenco di namespace a livello di server, di raccolta e di progetto.
Identità Identità dell'utente o del gruppo. Per altre informazioni sugli identificatori di identità, vedere Identificatori di identità più avanti in questo articolo.
  • PERMETTERE
    Il gruppo o l'utente può eseguire l'operazione specificata dall'azione.
  • DENY
    Il gruppo o l'utente non può eseguire l'operazione specificata dall'azione.
/collection :CollectionURL Obbligatorio se /server non viene usato. Specifica l'URL di una raccolta di progetti nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName / CollectionName
/server :ServerURL Obbligatorio se /collection non viene utilizzato. Specifica l'URL di un server livello applicazione nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName

Osservazioni:

Eseguire questo comando in un server a livello di applicazione per Azure DevOps.

Le voci di controllo di accesso sono meccanismi di sicurezza che determinano quali operazioni un utente, un gruppo, un servizio o un computer è autorizzato a eseguire in un computer o in un server.

Esempio: Visualizza namespace a livello di server

Nell'esempio seguente vengono visualizzati gli spazi dei nomi disponibili a livello di server per il server a livello di applicazione denominato ADatumCorporation.

Annotazioni

Gli esempi sono solo per illustrazione e sono fittizi. Nessuna associazione reale è intenzionale o può essere desunta.

tfssecurity /a /server:ServerURL 

Output di esempio:

    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.

Esempio: Visualizzare le azioni disponibili a livello di raccolta

Nell'esempio seguente vengono visualizzate le azioni disponibili per lo spazio dei nomi del server a livello di raccolta.

tfssecurity /a Server /collection:CollectionURL 

Output di esempio:

    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.

Esempio: Rimuovere un'autorizzazione a livello di istanza

Nell'esempio seguente viene rimossa l'autorizzazione a livello di server per Visualizza informazioni a livello di istanza nella distribuzione di ADatumCorporation per l'utente di dominio Datum1 John Peoples (Datum1\jpeoples).

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

Output di esempio:

    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.

Esempio: Rimuovere un'autorizzazione a livello di raccolta

Nell'esempio seguente viene rimossa l'autorizzazione Visualizza informazioni a livello di raccolta per la raccolta di progetti Collection0, per l'utente del dominio Datum1, John Peoples (Datum1\jpeoples).

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

Output di esempio:

    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: visualizzare l'elenco di controllo di accesso

Utilizzare /acl per visualizzare l'elenco di controllo di accesso applicabile a un oggetto specifico.

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

Prerequisiti

Per usare il comando /acl , è necessario avere le informazioni a livello di raccolta o l'autorizzazione Visualizza informazioni a livello di istanza impostata su Consenti, a seconda che si usi rispettivamente il parametro /collection o /server . Per altre informazioni, vedere Informazioni di riferimento sulle autorizzazioni per Azure DevOps Server.

Parametri

Argomentazione Descrizione
Namespace Spazio dei nomi contenente il gruppo a cui si desidera visualizzare le autorizzazioni per un utente o un gruppo.
/collection :CollectionURL Obbligatorio se /server non viene usato. Specifica l'URL di una raccolta di progetti nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName / CollectionName
/server :ServerURL Obbligatorio se /collection non viene utilizzato. Specifica l'URL di un server livello applicazione nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName

Osservazioni:

Eseguire questo comando in un server a livello di applicazione per Azure DevOps.

Le voci di controllo di accesso sono meccanismi di sicurezza che determinano quali operazioni un utente, un gruppo, un servizio o un computer è autorizzato a eseguire in un computer o in un server.

Esempio: Elencare le assegnazioni ACL a uno spazio dei nomi a livello di server

Nell'esempio seguente vengono visualizzati gli utenti e i gruppi che hanno accesso al token FrameworkGlobalSecurity nello spazio dei nomi del server all'interno della distribuzione ADatumCorporation.

Annotazioni

Gli esempi sono solo per illustrazione e sono fittizi. Nessuna associazione reale è intenzionale o può essere desunta.

tfssecurity /acl Server FrameworkGlobalSecurity /server:ServerURL 

Output di esempio:

	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.

Gruppi

/g: Elencare i gruppi

Usare /g per elencare i gruppi in un progetto, in una raccolta di progetti o in Azure DevOps Server.

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

Prerequisiti

Per usare il comando /g, è necessario disporre delle autorizzazioni Visualizza informazioni a livello di raccolta o Visualizza informazioni a livello di istanza impostate su Consenti, a seconda che si utilizzi il parametro /collection o /server, rispettivamente. Per usare il comando /g nell'ambito di un singolo progetto, è necessario disporre dell'autorizzazione Visualizza informazioni a livello di progetto impostata su Consenti. Per altre informazioni, vedere Informazioni di riferimento su autorizzazioni e gruppi.

Parametri

Argomentazione Descrizione
scopo Opzionale. Specifica l'URI del progetto per cui si desidera visualizzare i gruppi. Per ottenere l'URI per un progetto, aprire Team Explorer, fare clic con il pulsante destro del mouse sul progetto, scegliere Proprietà e copiare l'intera voce per URL.
/collection :CollectionURL Obbligatorio se /server non viene usato. Specifica l'URL di una raccolta di progetti nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName / CollectionName
/server :ServerURL Obbligatorio se /collection non viene utilizzato. Specifica l'URL di un server livello applicazione nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName

Osservazioni:

Eseguire questo comando in un server a livello di applicazione per Azure DevOps.

Il comando /g dell'utilità della riga di comando TFSSecurity visualizza informazioni su ogni gruppo all'interno dell'ambito selezionato. Questo ambito può essere la raccolta di progetti (/server) o il server a livello di applicazione (/istanza). Se usato con l'ambito di un progetto, visualizzerà informazioni solo sui gruppi associati a tale progetto.

Esempio: Visualizzare informazioni sui gruppi a livello di raccolta

Nell'esempio seguente vengono visualizzate informazioni per tutti i gruppi all'interno di una raccolta di progetti.

tfssecurity /g /collection:CollectionURL

/g+: Aggiungere un utente o un altro gruppo a un gruppo esistente

Usare /g+ per aggiungere un utente o un altro gruppo a un gruppo esistente.

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

Prerequisiti

Per usare il comando /g+, è necessario avere le autorizzazioni "Visualizza informazioni a livello di raccolta" e "Modifica informazioni a livello di raccolta" oppure le autorizzazioni "Visualizza informazioni a livello di istanza" e "Modifica informazioni a livello di istanza" impostate su Consenti, a seconda che si utilizzi il parametro /collection o /server rispettivamente. Per altre informazioni, vedere Gruppi di sicurezza e informazioni di riferimento sulle autorizzazioni.

Parametri

Argomentazione Descrizione
identità del gruppo Specifica l'identità del gruppo. Per altre informazioni sugli identificatori di identità validi, vedere Identificatori di identità più avanti in questo articolo.
identità del membro Specifica l'identità del membro. Per altre informazioni sugli identificatori di identità validi, vedere Identificatori di identità più avanti in questo articolo.
/collection :CollectionURL Obbligatorio se /server non viene usato. Specifica l'URL di una raccolta di progetti nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName / CollectionName
/server :ServerURL Obbligatorio se /collection non viene utilizzato. Specifica l'URL di un server livello applicazione nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName

Osservazioni:

Eseguire questo comando in un server a livello di applicazione per Azure DevOps.

È anche possibile aggiungere utenti e gruppi a un gruppo esistente usando Team Explorer. Per altre informazioni, vedere Impostare le autorizzazioni a livello di progetto o raccolta.

Esempio: Aggiungere un utente a un gruppo a livello di server

Nell'esempio seguente viene aggiunto l'utente di dominio Datum1 John Peoples (Datum1\jpeoples) al gruppo Team Foundation Administrators.

Annotazioni

Gli esempi sono solo per illustrazione e sono fittizi. Nessuna associazione reale è intenzionale o può essere desunta.

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

Output di esempio:

    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-: Rimuovere un utente o un gruppo

Usare /g- per rimuovere un utente o un gruppo di utenti da un gruppo esistente.

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

Prerequisiti

Per usare il comando /g-, è necessario che i permessi di Visualizzare e Modificare informazioni a livello di raccolta o di istanza siano impostati su Consenti, a seconda che si utilizzi rispettivamente il parametro /collection o /server. Per altre informazioni, vedere Gruppi di sicurezza e informazioni di riferimento sulle autorizzazioni.

Parametri

Argomentazione Descrizione
identità del gruppo Specifica l'identità del gruppo. Per altre informazioni sugli identificatori di identità validi, vedere Identificatori di identità più avanti in questo articolo.
memberIdentity Specifica l'identità del membro. Per altre informazioni sugli identificatori di identità validi, vedere Identificatori di identità più avanti in questo articolo.
/collection :CollectionURL Obbligatorio se /server non viene usato. Specifica l'URL di una raccolta di progetti nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName / CollectionName
/server :ServerURL Obbligatorio se /collection non viene utilizzato. Specifica l'URL di un server livello applicazione nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName

Osservazioni:

Eseguire questo comando in un server a livello di applicazione per Azure DevOps.

È anche possibile aggiungere utenti e gruppi a un gruppo esistente usando Team Explorer. Per altre informazioni, vedere Rimuovere utenti da un gruppo di progetti o Impostare le autorizzazioni a livello di progetto o raccolta.

Esempio: Rimuovere un utente da un gruppo a livello di server

Nell'esempio seguente viene rimosso l'utente di dominio Datum1 John Peoples (Datum1\jpeoples) dal gruppo Amministratori di Team Foundation.

Annotazioni

Gli esempi sono solo per illustrazione e sono fittizi. Nessuna associazione reale è intenzionale o può essere desunta.

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

Output di esempio:

    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: Creare un gruppo a livello di progetto

Usare /gc al prompt dei comandi per creare un gruppo a livello di progetto. Per creare un gruppo a livello di progetto dall'interfaccia utente, vedere Gestire utenti o gruppi.

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

Prerequisiti

Per usare il comando /gc , è necessario disporre dell'autorizzazione Modifica Project-Level Informazioni per tale progetto impostata su Consenti. Per altre informazioni, vedere Informazioni di riferimento sulle autorizzazioni.

Parametri

Argomentazione Descrizione
Ambito URI del progetto a cui si vuole aggiungere un gruppo a livello di progetto. Per ottenere l'URI per un progetto, connettersi e aprire Team Explorer, passare il puntatore del mouse sul nome del progetto in Home e leggere l'indirizzo. In alternativa, connettersi al progetto in Accesso Web e copiare l'URL.
NomeGruppo Nome del nuovo gruppo.
GroupDescription Descrizione del gruppo di progetti. Opzionale.
/collection :CollectionURL URL della raccolta di progetti. Obbligatorio. Il gruppo verrà creato all'interno della raccolta di progetti. Il formato per l'URL è http:// NomeServer : Port / VirtualDirectoryName CollectionName /

Osservazioni:

Eseguire questo comando in un server a livello di applicazione per Azure DevOps.

Un gruppo a livello di progetto è un gruppo di sicurezza per il progetto. È possibile usare i gruppi di progetti per concedere autorizzazioni di lettura, scrittura e amministrazione che soddisfano i requisiti di sicurezza dell'organizzazione.

Esempio: Aggiungere un gruppo di sicurezza a un progetto

Nell'esempio seguente viene creato un gruppo specifico del progetto specificato dall'URI "vstfs://Classification/TeamProject/00000000-0000-0000-0000-000000000000". Il gruppo è denominato "Gruppo di test" e ha la descrizione "Questo gruppo è per il test".

Annotazioni

Gli esempi sono solo per illustrazione e sono fittizi. Nessuna associazione reale è intenzionale o può essere desunta.

È necessario sostituire il GUID segnaposto con l'URI del progetto per il quale si vuole creare questo gruppo. Per ottenere l'URI per un progetto, aprire Team Explorer, fare clic con il pulsante destro del mouse sul progetto, scegliere Proprietà e copiare l'intero valore della proprietà URL.

Dopo aver eseguito il comando, è possibile verificare il gruppo in Team Explorer. Fare clic con il pulsante destro del mouse sul progetto usato nel comando, scegliere Impostazioni progetto e quindi fare clic su Appartenenze ai gruppi. Nella finestra di dialogo Gruppi di progetti in TeamProjectName l'elenco Gruppi include il gruppo di test .

Annotazioni

È possibile usare il comando /gc per creare gruppi, ma non per aggiungere utenti ai gruppi o assegnare autorizzazioni. Per modificare l'appartenenza al gruppo, vedere /g+: Aggiungere un utente o un altro gruppo a un gruppo esistente e /g-: Rimuovere un utente o un gruppo. Per modificare le autorizzazioni per il gruppo, vedere /a+: Aggiungere autorizzazioni e /a-: Rimuovere un utente o un gruppo dall'appartenenza a un gruppo.

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: Creare un server o un gruppo a livello di raccolta

Usare il comando /gcg per creare un gruppo a livello di server o di raccolta. Per creare un gruppo a livello di raccolta dal portale Web, vedere Impostare le autorizzazioni a livello di progetto o raccolta.

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

Prerequisiti

Per usare il comando /gcg , è necessario disporre dell'autorizzazione Modifica informazioni a livello di progetto per tale progetto impostata su Consenti. Per altre informazioni, vedere Gruppi di sicurezza e informazioni di riferimento sulle autorizzazioni.

Parametri

Argomentazione Descrizione
NomeGruppo Nome del gruppo.
Descrizione del Gruppo Descrizione del gruppo. Opzionale.
/collection :CollectionURL Obbligatorio se /server non viene usato. Specifica l'URL di una raccolta di progetti nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName / CollectionName
/server :ServerURL Obbligatorio se /collection non viene utilizzato. Specifica l'URL di un server livello applicazione nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName

Osservazioni:

Eseguire questo comando in un server a livello di applicazione per Azure DevOps.

I gruppi a livello di server vengono creati direttamente nel livello applicazione e si applicano a tutte le raccolte di progetti. I livelli di raccolta vengono creati a livello della raccolta del progetto. Si applicano a tale raccolta e hanno implicazioni per tutti i progetti all'interno della raccolta. Al contrario, i gruppi di progetti si applicano a un progetto specifico all'interno di una raccolta, ma non ad altri progetti di tale raccolta. È possibile assegnare autorizzazioni ai gruppi a livello di server in modo che i membri di tali gruppi possano eseguire attività in Azure DevOps Server stesso, ad esempio la creazione di raccolte di progetti. È possibile assegnare autorizzazioni ai gruppi a livello di raccolta in modo che i membri di tali gruppi possano eseguire attività in una raccolta di progetti, ad esempio l'amministrazione degli utenti.

Annotazioni

È possibile usare il comando /gcg per creare gruppi, ma non è possibile usarlo per aggiungere utenti ai gruppi o assegnare autorizzazioni. Per informazioni su come modificare l'appartenenza di un gruppo, vedere /g+: Aggiungere un utente o un altro gruppo a un gruppo esistente e /g-: Rimuovere un utente o un gruppo. Per informazioni su come modificare le autorizzazioni per il gruppo, vedere /a+: Aggiungere autorizzazioni e /a-: Rimuovere un utente o un gruppo dall'appartenenza a un gruppo.

Esempio: Aggiungere un gruppo di sicurezza a livello di raccolta

Nell'esempio seguente viene creato un gruppo a livello di raccolta denominato "Datum Testers" con la descrizione "A". Datum Corporation Testers."

Annotazioni

Gli esempi sono solo per illustrazione e sono fittizi. Nessuna associazione reale è intenzionale o può essere desunta.

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

Nell'esempio seguente viene creato un gruppo a livello di server denominato "Datum Auditors" con la descrizione "A. Revisori dei conti di Datum Corporation.

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

/gd: Eliminare un server o un gruppo a livello di raccolta

Usare /gd per eliminare un gruppo a livello di server o di raccolta.

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

Prerequisiti

Per usare il comando /gd, è necessario disporre dei permessi di visualizzazione e modifica delle informazioni a livello di raccolta oppure dei permessi di visualizzazione e modifica delle informazioni a livello di istanza impostati su Consenti, a seconda che si usi il parametro /collection o /server rispettivamente. Per altre informazioni, vedere Gruppi di sicurezza e informazioni di riferimento sulle autorizzazioni.

Parametri

Argomentazione Descrizione
identità di gruppo Specifica l'identità del gruppo.
/collection :CollectionURL Obbligatorio se /server non viene usato. Specifica l'URL di una raccolta di progetti nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName / CollectionName
/server :ServerURL Obbligatorio se /collection non viene utilizzato. Specifica l'URL di un server livello applicazione nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName

Osservazioni:

Eseguire questo comando in un server a livello di applicazione per Azure DevOps. Per modificare le autorizzazioni tramite il portale Web, vedere Impostare le autorizzazioni a livello di progetto o raccolta.

Esempio: Eliminare un gruppo di sicurezza a livello di raccolta

Nell'esempio seguente viene eliminato un gruppo dalla raccolta di progetti. Il gruppo è identificato da "S-1-5-21-2127521184-1604012920-1887927527-588340", l'identificatore di sicurezza (SID). Per altre informazioni sulla ricerca del SID di un gruppo, vedere /im: Visualizzare informazioni sulle identità che compongono l'appartenenza diretta. È anche possibile usare il nome descrittivo per eliminare un gruppo.

Annotazioni

Gli esempi sono solo per illustrazione e sono fittizi. Nessuna associazione reale è intenzionale o può essere desunta.

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

/gud: Modificare la descrizione per un server o un gruppo a livello di raccolta

Usare /gud per modificare la descrizione di un gruppo a livello di server o di raccolta.

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

Prerequisiti

Per usare il comando /gud , è necessario disporre dell'autorizzazione Modifica informazioni a livello di progetto impostata su Consenti. Per altre informazioni, vedere Gruppi di sicurezza e informazioni di riferimento sulle autorizzazioni.

Parametri

Argomentazione Descrizione
Identità del Gruppo Specifica l'identità del gruppo. Per altre informazioni sugli identificatori di identità validi, vedere Identificatori di identità più avanti in questo articolo.
DescrizioneDelGruppo Specifica la nuova descrizione per il gruppo.
/collection :CollectionURL Obbligatorio se /server non viene usato. Specifica l'URL di una raccolta di progetti nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName / CollectionName
/server :ServerURL Obbligatorio se /collection non viene utilizzato. Specifica l'URL di un server livello applicazione nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName

Osservazioni:

Eseguire questo comando in un server a livello di applicazione per Azure DevOps.

Esempio: Aggiungere una descrizione a un gruppo di sicurezza

Nell'esempio seguente viene associata la descrizione "I membri di questo gruppo testano il codice per questo progetto" al gruppo "Tester Datum".

Annotazioni

Gli esempi sono solo per illustrazione e sono fittizi. Nessuna associazione reale è intenzionale o può essere desunta.

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

/gun: Rinominare un gruppo

Usare /gun per rinominare un gruppo a livello di server o di raccolta.

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

Prerequisiti

Per usare il comando /gun, è necessario disporre delle autorizzazioni Visualizzazione a livello di raccolta e Modifica a livello di raccolta oppure delle autorizzazioni Visualizzazione a livello di istanza e Modifica a livello di istanza impostate su Consenti, a seconda che si utilizzi rispettivamente il parametro /collection o /server. Per altre informazioni, vedere Gruppi di sicurezza e informazioni di riferimento sulle autorizzazioni.

Parametri

Argomentazione Descrizione
Identità di Gruppo Specifica l'identità del gruppo. Per altre informazioni sugli identificatori di identità validi, vedere Identificatori di identità più avanti in questo articolo.
NomeGruppo Specifica il nuovo nome del gruppo.
/collection :CollectionURL Obbligatorio se /server non viene usato. Specifica l'URL di una raccolta di progetti nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName / CollectionName
/server :ServerURL Obbligatorio se /collection non viene utilizzato. Specifica l'URL di un server livello applicazione nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName

Osservazioni:

Eseguire questo comando in un server a livello di applicazione per Azure DevOps.

Esempio: Rinominare un gruppo di sicurezza

Nell'esempio seguente viene rinominato il gruppo a livello di raccolta "A. Da "Tester della Datum Corporation" a "A". "Ingegneri dei Test di Datum Corporation."

Annotazioni

Gli esempi sono solo per illustrazione e sono fittizi. Nessuna associazione reale è intenzionale o può essere desunta.

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

Identità e appartenenza

/i: Visualizzare le informazioni sull'identità per un gruppo specificato

Usare /i per visualizzare le informazioni sull'identità per un gruppo specificato in una distribuzione di Azure DevOps Server.

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

Prerequisiti

Per usare il comando /i, è necessario disporre del permesso di visualizzazione delle informazioni a livello di raccolta o il permesso Visualizza informazioni sull'istanza -level impostato su Consenti, a seconda che si usi rispettivamente il parametro /collection o /server. Per altre informazioni, vedere Gruppi di sicurezza e informazioni di riferimento sulle autorizzazioni.

Parametri

Argomentazione Descrizione
Identità Identità dell'utente o del gruppo di applicazioni. Per altre informazioni sugli identificatori di identità, vedere Identificatori di identità più avanti in questo articolo.
/collection :CollectionURL Obbligatorio se /server non viene usato. Specifica l'URL di una raccolta di progetti nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName / CollectionName
/server :ServerURL Obbligatorio se /collection non viene utilizzato. Specifica l'URL di un server livello applicazione nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName

Osservazioni:

Eseguire questo comando in un server a livello di applicazione per Azure DevOps.

Il comando /i dell'utilità della riga di comando TFSSecurity visualizza informazioni su ogni gruppo all'interno della raccolta di progetti (/server) o del server livello applicazione (/istanza). Non vengono visualizzate informazioni sull'appartenenza.

Esempio: Elencare le informazioni sull'identità per un gruppo di sicurezza

Nell'esempio seguente vengono visualizzate le informazioni sull'identità per il gruppo "Team Foundation Administrators".

Annotazioni

Gli esempi sono solo per illustrazione e sono fittizi. Nessuna associazione reale è intenzionale o può essere desunta.

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

Output di esempio:

    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.

Esempio: Visualizzare le informazioni sull'identità per un gruppo di sicurezza

Nell'esempio seguente vengono visualizzate le informazioni sull'identità per il gruppo Project Collection Administrators usando l'identificatore di identità adm: .

tfssecurity /i adm: /collection:CollectionURL 

Output di esempio:

    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.

Nell'esempio seguente vengono visualizzate informazioni sull'identità per il gruppo Project Administrators per il progetto "Datum" usando l'identificatore di identità adm: identity.

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

Output di esempio:

    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: Visualizzare informazioni sulle identità che compongono l'appartenenza diretta

Usare /im per visualizzare informazioni sulle identità che compongono l'appartenenza diretta di un gruppo specificato.

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

Prerequisiti

Per utilizzare il comando /im, è necessario avere l'autorizzazione Visualizza informazioni a livello di raccolta o a livello di istanza impostata su Consenti, a seconda che si utilizzi il parametro /collection o /server, rispettivamente. Per altre informazioni, vedere Gruppi di sicurezza e informazioni di riferimento sulle autorizzazioni.

Parametri

Argomentazione Descrizione
Identità Identità dell'utente o del gruppo. Per altre informazioni sugli identificatori di identità, vedere Identificatori di identità più avanti in questo articolo.
/collection :CollectionURL Obbligatorio se /server non viene usato. Specifica l'URL di una raccolta di progetti nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName / CollectionName
/server :ServerURL Obbligatorio se /collection non viene utilizzato. Specifica l'URL di un server livello applicazione nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName

Osservazioni:

Eseguire questo comando in un server a livello di applicazione per Azure DevOps.

Il comando /im di TFSSecurity visualizza solo i membri diretti del gruppo specificato. Questo elenco include altri gruppi membri del gruppo specificato. Tuttavia, i membri effettivi dei gruppi di membri non sono elencati.

Esempio: Visualizzare le identità di appartenenza per un gruppo di sicurezza

Nell'esempio seguente vengono visualizzate informazioni sull'identità di appartenenza diretta per il gruppo "Team Foundation Administrators" nel dominio "Datum1" della società fittizia "A. Datum Corporation".

Annotazioni

Gli esempi sono solo per illustrazione e sono fittizi. Nessuna associazione reale è intenzionale o può essere desunta.

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

Output di esempio:

    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.

Esempio: Visualizzare le informazioni sull'identità per un gruppo di sicurezza

Nell'esempio seguente vengono visualizzate informazioni sull'identità per il gruppo Project Collection Administrators nella raccolta di progetti "DatumOne" nel dominio "Datum1" della società fittizia "A. Datum Corporation" usando l'identificatore di identità adm: identity.

tfssecurity /im adm: /collection:CollectionURL 

Output di esempio:

    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.

Esempio: Visualizzare le informazioni sull'identità per un gruppo di sicurezza usando un identificatore di identità

Nell'esempio seguente vengono visualizzate informazioni sull'identità per il gruppo Project Administrators per il progetto "Datum" nella raccolta di progetti "DatumOne" nel dominio "Datum1" nella società fittizia "A. Datum Corporation" usando l'identificatore di identità adm: identity.

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

Output di esempio:

    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: visualizzare informazioni sulle identità relative alla membership estesa

Usare /imx per visualizzare informazioni sulle identità che compongono l'appartenenza espansa di un gruppo specificato.

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

Prerequisiti

Per usare il comando /imx , è necessario disporre delle informazioni a livello di raccolta o dell'autorizzazione Visualizza informazioni a livello di istanza impostata su Consenti, a seconda che si usi rispettivamente il parametro /collection o /server . Per altre informazioni, vedere Gruppi di sicurezza e informazioni di riferimento sulle autorizzazioni.

Parametri

Argomentazione Descrizione
Identità Identità dell'utente o del gruppo. Per altre informazioni sugli identificatori di identità, vedere Identificatori di identità più avanti in questo articolo.
/collection :CollectionURL Obbligatorio se /server non viene usato. Specifica l'URL di una raccolta di progetti nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName / CollectionName
/server :ServerURL Obbligatorio se /collection non viene utilizzato. Specifica l'URL di un server livello applicazione nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName

Osservazioni:

Eseguire questo comando in un server a livello di applicazione per Azure DevOps.

Il comando /imx di TFSSecurity visualizza solo i membri espansi del gruppo specificato. Questo elenco include non solo altri gruppi membri del gruppo specificato, ma anche i membri dei gruppi di membri.

Esempio: visualizzare le informazioni di appartenenza espanse per un gruppo di sicurezza

Nell'esempio seguente vengono visualizzate informazioni espanse sull'identità di appartenenza per il gruppo "Team Foundation Administrators" nel dominio "Datum1" nella società fittizia "A. Datum Corporation".

Annotazioni

Gli esempi sono solo per illustrazione e sono fittizi. Nessuna associazione reale è intenzionale o può essere desunta.

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

Output di esempio:

    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.

Nell'esempio seguente vengono visualizzate informazioni sull'identità per il gruppo Project Collection Administrators nella raccolta di progetti "DatumOne" nel dominio "Datum1" della società fittizia "A. Datum Corporation" usando l'identificatore di identità adm: identity.

tfssecurity /imx adm: /collection:CollectionURL 

Output di esempio:

    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.

Esempio: Visualizzare le informazioni sull'identità per un gruppo di sicurezza usando un identificatore di identità

Nell'esempio seguente vengono visualizzate informazioni sull'identità per il gruppo Project Administrators per il progetto "Datum" nella raccolta di progetti "DatumOne" nel dominio "Datum1" nella società fittizia "A. Datum Corporation" usando l'identificatore di identità adm: identity.

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

Output di esempio:

    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.

Per altre informazioni sugli identificatori di output, ad esempio [G] e [U], vedere Identificatori di identità più avanti in questo articolo.

/m: Controllare l'appartenenza esplicita e implicita ai gruppi

Usare /m per controllare le informazioni esplicite e implicite sull'appartenenza al gruppo per un gruppo o un utente specificato.

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

Prerequisiti

Per usare il comando /m , è necessario essere membri del gruppo di sicurezza Amministratori di Team Foundation. Per altre informazioni, vedere Gruppi di sicurezza e informazioni di riferimento sulle autorizzazioni.

Annotazioni

Anche se si è connessi con credenziali amministrative, è necessario aprire un prompt dei comandi con privilegi elevati per eseguire questa funzione.

Parametri

Argomentazione Descrizione
Identità di Gruppo Specifica l'identità del gruppo. Per altre informazioni sugli identificatori di identità validi, vedere Identificatori di identità più avanti in questo articolo.
Identità del Membro Specifica l'identità del membro. Per impostazione predefinita, il valore di questo argomento è l'identità dell'utente che esegue il comando. Per altre informazioni sugli identificatori di identità validi, vedere Identificatori di identità più avanti in questo articolo.
/collection :CollectionURL Obbligatorio se /server non viene usato. Specifica l'URL di una raccolta di progetti nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName / CollectionName
/server :ServerURL Obbligatorio se /collection non viene utilizzato. Specifica l'URL di un server livello applicazione nel formato seguente: http:// NomeServer : Port / VirtualDirectoryName

Osservazioni:

Eseguire questo comando nel computer locale a livello di applicazione.

Il comando /m dell'utilità della riga di comando TFSSecurity controlla le appartenenze dirette ed estese.

Esempio: Verificare l'appartenenza di un utente in un gruppo di sicurezza

Nell'esempio seguente viene verificato se l'utente "Datum1\jpeoples" appartiene al gruppo a livello di server Team Foundation Administrators.

Annotazioni

Gli esempi sono solo per illustrazione e sono fittizi. Nessuna associazione reale è intenzionale o può essere desunta.

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

Output di esempio:

    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.

Spazi dei nomi di sicurezza

Annotazioni

I namespace e i token sono validi per tutte le versioni di Azure DevOps. I namespace sono soggetti a modifiche nel tempo. Per ottenere l'elenco più recente dei namespace, eseguire uno degli strumenti da riga di comando o l'API REST. Alcuni spazi dei nomi sono stati resi obsoleti. Per ulteriori informazioni, vedere Riferimento per lo spazio dei nomi e le autorizzazioni di sicurezza.

Identificatori di identità

È possibile fare riferimento a un'identità usando una delle notazioni riportate nella tabella seguente.

Identificatore di identità Descrizione Esempio
Sid: Sid. Fa riferimento all'identità con l'identificatore di sicurezza (SID) specificato. sid:S-1-5-21-2127521184-1604012920-1887927527-588340
n:[Nome del Dominio] Fa riferimento all'identità con il nome specificato. Per Windows, Name è il nome dell'account. Se l'identità a cui si fa riferimento si trova in un dominio, il nome di dominio è obbligatorio. Per i gruppi di applicazioni, Name è il nome visualizzato del gruppo e Domain è l'URI o il GUID del progetto contenitore. In questo contesto, se domain viene omesso, si presuppone che l'ambito sia a livello di raccolta. Per fare riferimento all'identità dell'utente "John Peoples" nel dominio "Datum1" presso la società fittizia "A. Datum Corporation:"

n:DATUM1\jpeoples

Per fare riferimento ai gruppi di applicazioni:

n:"Dipendenti a tempo pieno"

n:00a10d23-7d45-4439-981b-d3b3e0b0b1ee\Vendors
adm:[Ambito] Fa riferimento al gruppo di applicazioni amministrative per l'ambito, ad esempio "Team Foundation Administrators" per il livello del server o "Project Collection Administrators" a livello di raccolta. Il parametro facoltativo Scope è un URI o un URL del progetto, incluso il GUID e la stringa di connessione. Se l'ambito viene omesso, si presuppone che l'ambito del server o della raccolta si basi sul fatto che venga usato il parametro /instance o /server. In entrambi i casi, i due punti sono ancora necessari. adm:vstfs:///Classification/TeamProject/ GUID
srv: Fa riferimento al gruppo di applicazione per gli account di servizio. Non applicabile
tutto: Fa riferimento a tutti i gruppi e le identità. Non applicabile
Stringa Fa riferimento a una stringa non qualificata. Se String inizia con S-1-, viene identificato come SID. Se String inizia con CN= o LDAP:// viene identificato come nome distinto. In caso contrario, String viene identificato come nome. Tester del team

Indicatori di tipo

I marcatori seguenti vengono usati per identificare i tipi di identità e gli ACL nei messaggi di output.

Marcatori del tipo di identità

Marcatore del tipo di identità Descrizione
U Utente di Windows.
G Gruppo di Windows.
A Gruppo di applicazioni azure DevOps Server.
a [ A ] Gruppo di applicazioni amministrative.
s [ A ] Gruppo di applicazioni dell'account del servizio.
X Identità non valida.
? L'identità è sconosciuta.

Indicatori di ingresso del controllo di accesso

Indicatore di ingresso del controllo di accesso Descrizione
+ CONSENTI voce di controllo di accesso.
- DENY - Voce di controllo di accesso.
* [] Voce di controllo di accesso ereditata.