Configurare gruppi, team, membri e autorizzazioni iniziali
Il file del plug-in per Gruppi e autorizzazioni consente di configurare le impostazioni di sicurezza iniziali per un progetto team. A questo scopo, è necessario definire attività per creare gruppi di sicurezza, annidare gruppi, definire gruppi come team, configurare impostazioni dei team iniziali, assegnare membri ai gruppi e consentire o negare autorizzazioni specifiche a ciascun gruppo. Oltre a eseguire queste attività, è possibile specificare le impostazioni di sicurezza iniziali per aree di classificazione del progetto, a livello di progetto e a livello di raccolta.
I modelli di processo di Microsoft consentono di assegnare diverse autorizzazioni ai gruppi predefiniti. Per modificare queste assegnazioni, si può personalizzare il file del plug-in per Gruppi e autorizzazioni. Per altre informazioni su questo plug-in, vedere Definire gruppi, team e autorizzazioni mediante il plug-in Gruppi e autorizzazioni.
Contenuto dell'argomento
Definire e assegnare autorizzazioni ai gruppi
Macro di gruppo e gruppi predefiniti
Annidare gruppi e assegnare membri ai gruppi
Definire un team
Assegnare autorizzazioni a livello di raccolta
Assegnare autorizzazioni a livello di progetto
Assegnare autorizzazioni per il controllo del percorso area
Assegnare autorizzazioni per controllare i percorsi iterazione
Per informazioni su come configurare le impostazioni di sicurezza iniziali per le aree funzionali di un progetto team, ad esempio Team Foundation Build, Controllo della versione di Team Foundation e Visual Studio Lab Management, vedere Controllare l'accesso ad aree funzionali.
Per informazioni su come personalizzare i tipi di elementi di lavoro per consentire o negare l'accesso a gruppi o utenti, vedere Applicare una regola a un campo elemento di lavoro.
Per altre informazioni su come amministrare utenti e gruppi e controllare l'accesso per Visual Studio Application Lifecycle Management (ALM), vedere Gestire utenti o gruppi in TFS.
Definire e assegnare autorizzazioni ai gruppi
È possibile usare gli elementi group e member per specificare un nuovo gruppo di sicurezza in Team Foundation Server e per aggiungere membri a tale gruppo. È possibile usare l'elemento permission di gruppo per assegnare autorizzazioni a un gruppo e ai membri di tale gruppo. È necessario incapsulare ognuno di questi elementi all'interno degli elementi contenitore corrispondenti, ovvero groups, members e permissions. Per ognuno di questi elementi, è necessario usare la struttura di sintassi seguente:
<group name="Group Name" description="Description of Group"></group>
<member name="MemberName"></member>
<permission name="PermissionName" class="ClassName" allow="True | False"/>
La tabella seguente illustra gli attributi per gli elementi group e member e per l'elemento permission di gruppo. Usare questi elementi solo nel file del plug-in Gruppi e autorizzazioni.
Elemento |
Attributo |
Descrizione |
---|---|---|
group |
name |
Specifica il nome del gruppo creato. |
isTeam |
Se è true, indica che il gruppo è un team; in caso contrario, è false. |
|
description |
Descrive lo scopo del gruppo ad altri utenti. |
|
member |
name |
Specifica il nome di un gruppo aggiunto come membro di un altro gruppo. È possibile creare gruppi in cui preinserire alcuni dei tipi di membri seguenti:
Per informazioni sul formato da usare per specificare gruppi predefiniti, vedere Macro di gruppo e gruppi predefiniti più avanti in questo argomento. |
permission |
name |
Identifica l'autorizzazione da applicare. Per un elenco delle autorizzazioni supportate, vedere le sezioni seguenti più avanti in questo argomento:
|
class |
Identifica la classe, o l'area, in cui viene concessa l'autorizzazione di gruppo. I valori validi sono i seguenti:
|
|
allow |
Usa un valore true o false per indicare se l'autorizzazione viene concessa o negata. |
|
path |
Identifica il nodo del percorso area o del percorso iterazione in cui viene applicata l'autorizzazione. Questo attributo è valido solo quando class è impostato su CSS_NODE o ITERATION_NODE. |
Macro di gruppo e gruppi predefiniti
Nella tabella seguente sono elencate le macro che è possibile usare per specificare un gruppo predefinito definito in Team Foundation Server.
Nota
È possibile specificare le macro incluse nella tabella seguente solo nel plug-in per Gruppi e autorizzazioni.Non è invece possibile specificare queste macro quando si assegnano autorizzazioni tramite i plug-in per la compilazione, il controllo della versione o Lab Management.
Gruppi predefiniti |
Macro |
---|---|
Project Collection Administrators |
[SERVER]\$$PROJECTCOLLECTIONADMINGROUP$$ [SERVER]\$$TEAMFOUNDATIONADMINGROUP$$ $$COLLECTIONADMINGROUP$$ |
Project Collection Service Accounts |
[SERVER]\$$PROJECTCOLLECTIONSERVICESGROUP$$ |
Project Collection Build Service Accounts |
[SERVER]\$$PROJECTCOLLECTIONBUILDSERVICESGROUP$$ $$COLLECTIONBUILDSERVICESGROUP$$ |
Project Collection Build Administrators |
[SERVER]\$$PROJECTCOLLECTIONBUILDADMINSGROUP$$ $$COLLECTIONBUILDADMINISTRATORSGROUP$$ |
Project Administrators |
$$PROJECTADMINGROUP$$ [$$PROJECTNAME$$]\$$PROJECTADMINGROUP$$ [$$PROJECTNAME$$]\Builders |
Autore del progetto |
$$CREATOR_OWNER$$ @creator |
Team predefinito |
@defaultTeam |
Esempio: Annidare gruppi e assegnare membri ai gruppi
L'esempio seguente illustra come configurare i gruppi denominati TestGroup1, TestGroup2 e TestGroup3. Nell'esempio viene aggiunto TestGroup1 come membro di TestGroup2. Perché il codice sia valido, è necessario definire TestGroup1 prima di definire TestGroup2.
<task id="GroupCreation1">
<taskXml>
<groups>
<group name="TestGroup1" description="Test group 1. Contains no members out of the box.">
<permissions>
<permission name="GENERIC_READ" class="PROJECT" allow="true" />
</permissions>
</group>
<group name="TestGroup2" description="Test group 2. Contains TestGroup1 and Project Administrators.">
<permissions>
<permission name="GENERIC_READ" class="PROJECT" allow="true" />
</permissions>
<members>
<member name="TestGroup1" />
<member name="$$PROJECTADMINGROUP$$" />
</members>
</group>
<group name="TestGroup3" description="Test group 3. Contains DOMAIN\USER, DOMAIN\GROUP, Project Administrators, and Project Collection Build Service Accounts.">
<permissions>
<permission name="GENERIC_READ" class="PROJECT" allow="true" />
</permissions>
<members>
<member name="DOMAIN\USER" />
<member name="DOMAIN\GROUP" />
<member name="[$$PROJECTNAME$$]\$$PROJECTADMINGROUP$$" />
<member name="[SERVER]\$$PROJECTCOLLECTIONBUILDSERVICESGROUP$$" />
</members>
</group>
</groups>
</taskXml>
</task>
Definire un team
Oltre a creare gruppi, è possibile assegnare un gruppo come team. Durante la creazione di un progetto team viene infatti creato anche un team predefinito. Se sono presenti più team che vogliono organizzare il proprio lavoro separatamente da altri team, è possibile definirli nel file del plug-in Gruppi e autorizzazioni oppure configurarli dopo aver creato il progetto team. Vedere Aggiungere un altro team o una gerarchia di team.
L'esempio seguente illustra come configurare un gruppo come team. In questo esempio si specifica come team il gruppo Dream Team e si aggiunge l'autore del progetto team come membro del team. Qualsiasi percorso iterazione specificato per il team deve essere definito nel file del plug-in Classificazioni. Vedere Definire le aree e le iterazioni iniziali nel plug-in Classification.
<group name="Dream Team" isTeam="true" description="Next generation work">
<permissions>
<permission name="GENERIC_READ" class="PROJECT" allow="true" />
</permissions>
<members>
<member name="@creator"/>
</members>
<teamSettings areaPath="Area">
<iterationPaths backlogPath="Iteration">
<iterationPath path="Release 1\Sprint 1" />
<iterationPath path="Release 1\Sprint 2" />
<iterationPath path="Release 1\Sprint 3" />
<iterationPath path="Release 1\Sprint 4" />
<iterationPath path="Release 1\Sprint 5" />
<iterationPath path="Release 1\Sprint 6" />
</iterationPaths>
</teamSettings>
</group>
Assegnare autorizzazioni a livello di raccolta
È possibile assegnare autorizzazioni a livello di raccolta usando l'elemento permission di gruppo e la classe NAMESPACE. Queste autorizzazioni consentono di controllare l'accesso a risorse disponibili nei diversi progetti team. È possibile impostare autorizzazioni a livello di raccolta solo per le categorie di utenti seguenti:
Utenti e gruppi a livello di raccolta, ad esempio Project Collection Administrators
Gruppi a livello di progetto aggiunti a livello di raccolta nel server in cui è in esecuzione Team Foundation
Gruppi personalizzati creati e aggiunti a livello di raccolta
Per informazioni sul formato da usare per specificare gruppi, vedere Macro di gruppo e gruppi predefiniti in precedenza in questo argomento.
Nota
Per impostare queste autorizzazioni, fare clic con il pulsante destro del mouse sul server in Team Explorer e quindi scegliere Sicurezza, aprire e usare la console di amministrazione per Team Foundation oppure usare gli strumenti da riga di comando TFSSecurity e tf.Per altre informazioni, vedere Collection-Level Groups, Modificare gruppi e autorizzazioni con TFSSecurity e Permission Command.
L'esempio seguente illustra come concedere agli amministratori di progetto autorizzazioni a livello di raccolta per un progetto team.
<group name="PROJECTADMINGROUP" description="Members of this group can add, modify, and delete items within the team project.">
<permissions>
<permission name="GENERIC_READ" class="NAMESPACE" allow="true" />
<permission name="WORK_ITEM_WRITE" class="NAMESPACE" allow="true" />
<permission name="MANAGE_LINK_TYPES" class="NAMESPACE" allow="true" />
<permission name="MANAGE_TEMPLATE" class="NAMESPACE" allow="true" />
<permission name="MANAGE_TEST_CONTROLLERS" class="NAMESPACE" allow="true" />
</permissions>
</group>
Nella tabella seguente vengono descritte le autorizzazioni a livello di raccolta che è possibile assegnare.
Nota
Per impostazione predefinita, nei modelli di processo MSF non viene assegnata alcuna autorizzazione a livello di raccolta.
Autorizzazione |
Descrizione |
---|---|
DIAGNOSTIC_TRACE |
Modifica impostazioni di traccia. Consente di modificare le impostazioni di traccia per raccogliere informazioni di diagnostica più dettagliate sui servizi Web di Team Foundation Server. |
CREATE_PROJECTS |
Crea nuovi progetti. Consente di creare progetti nella raccolta di progetti team. |
GENERIC_WRITE |
Modifica informazioni a livello di raccolta. Consente di modificare autorizzazioni a livello di raccolta per utenti e gruppi nella raccolta di progetti team. Gli utenti che dispongono di questa autorizzazione possono eseguire le attività seguenti:
Gli utenti che dispongono di questa autorizzazione possono inoltre modificare le autorizzazioni per il controllo della versione e dispongono di accesso in scrittura per tutti i file nel controllo della versione, a meno che tale accesso non venga loro esplicitamente negato da altre autorizzazioni. |
MANAGE_TEMPLATE |
Gestisci modello di processo. Consente di scaricare, creare, modificare e caricare modelli di processo nella raccolta di progetti team. |
MANAGE_TEST_CONTROLLERS |
Gestisci controller di test. Consente di eseguire o annullare la registrazione dei controller di test per la raccolta di progetti team. |
MANAGE_LINK_TYPES |
Gestisci tipi di collegamento elemento di lavoro. Consente di aggiungere, rimuovere e modificare i tipi di collegamenti per gli elementi di lavoro. |
GENERIC_READ |
Visualizza informazioni a livello di raccolta. Consente di visualizzare l'appartenenza di gruppi a livello di raccolta e le autorizzazioni di tali utenti. |
Assegnare autorizzazioni a livello di progetto
È possibile assegnare autorizzazioni a livello di progetto nel file del plug-in Gruppi e autorizzazioni. Per assegnare queste autorizzazioni, usare l'elemento permission di gruppo e la classe PROJECT. Queste autorizzazioni consentono di controllare l'accesso alle risorse di un singolo progetto. È possibile concedere l'accesso a utenti e gruppi in Windows, a gruppi in Team Foundation e a gruppi definiti in precedenza nel file del plug-in Gruppi e autorizzazioni. Per informazioni sul formato da usare per specificare gruppi, vedere Macro di gruppo e gruppi predefiniti in precedenza in questo argomento.
L'esempio seguente illustra come concedere al gruppo Contributors diverse autorizzazioni per un progetto team.
<group name="Contributors" description="Members of this group can add, modify, and delete items within the team project.">
<permissions>
<permission name="GENERIC_READ" class="PROJECT" allow="true" />
<permission name="DELETE_TEST_RESULTS" class="PROJECT" allow="true" />
<permission name="PUBLISH_TEST_RESULTS" class="PROJECT" allow="true" />
<permission name="VIEW_TEST_RESULTS" class="PROJECT" allow="true" />
<permission name="MANAGE_TEST_ENVIRONMENTS" class="PROJECT" allow="true" />
<permission name="MANAGE_TEST_CONFIGURATIONS" class="PROJECT" allow="true" />
</permissions>
</group>
Nella tabella seguente vengono descritte le autorizzazioni a livello di progetto che è possibile assegnare e vengono indicate le assegnazioni predefinite eseguite nei modelli di processo MSF.
Autorizzazione |
Descrizione |
Readers |
Contributors |
Build Administrators |
---|---|---|---|---|
GENERIC_READ |
Visualizza informazioni a livello di progetto. Consente di visualizzare l'appartenenza di gruppi a livello di progetto e le autorizzazioni di tali membri. |
|||
VIEW_TEST_RESULTS |
Visualizza esecuzioni dei test. Consente di visualizzare piani di test in questo nodo. |
|||
MANAGE_TEST_CONFIGURATIONS |
Gestisci configurazioni di test. Consente di creare ed eliminare configurazioni di test per il progetto team. |
|||
MANAGE_TEST_ENVIRONMENTS |
Gestisci ambienti di test. Consente di creare ed eliminare ambienti di test per il progetto team. |
|||
PUBLISH_TEST_RESULTS |
Crea esecuzioni dei test. Consente di aggiungere e rimuovere risultati dei test e di aggiungere o modificare esecuzioni dei test per il progetto team. |
|||
DELETE_TEST_RESULTS |
Elimina esecuzioni dei test. Consente di eliminare un test pianificato per il progetto team. |
|||
DELETE |
Elimina progetto team. Consente di eliminare da Team Foundation Server il progetto per cui l'utente dispone di questa autorizzazione. |
|||
GENERIC_WRITE |
Modifica informazioni a livello di progetto. Consente di modificare autorizzazioni a livello di progetto per utenti e gruppi in Team Foundation Server. |
Assegnare autorizzazioni per il controllo del percorso area
Per assegnare autorizzazioni con cui controllare l'accesso a definizioni di area, è possibile usare l'elemento permission di gruppo e la classe CSS_NODE. Queste autorizzazioni consentono di controllare l'accesso alla struttura di classificazione di un singolo progetto. È possibile concedere l'accesso a utenti e gruppi in Windows, a gruppi in Team Foundation e a gruppi definiti in precedenza nel file del plug-in Gruppi e autorizzazioni. Per informazioni sul formato da usare per specificare gruppi, vedere Macro di gruppo e gruppi predefiniti in precedenza in questo argomento.
L'esempio seguente illustra come concedere al gruppo Contributors diverse autorizzazioni per un progetto team.
<group name="Contributors" description="Members of this group can add, modify, and delete items within the team project.">
<permissions>
<permission name="GENERIC_READ" class="CSS_NODE" allow="true" />
<permission name="WORK_ITEM_READ" class="CSS_NODE" allow="true" />
<permission name="WORK_ITEM_WRITE" class="CSS_NODE" allow="true" />
<permission name="MANAGE_TEST_PLANS" class="CSS_NODE" allow="true" />
</permissions>
</group>
Nella tabella seguente vengono descritte le autorizzazioni che è possibile assegnare per controllare l'accesso alla struttura gerarchica per i nodi dell'area e dell'iterazione del progetto. Vengono inoltre indicate le assegnazioni predefinite eseguite nei modelli di processo MSF.
Nota
Per alcune operazioni di gestione degli elementi di lavoro sono necessarie più autorizzazioni,ad esempio in caso di eliminazione di un nodo.
Autorizzazione |
Descrizione |
Readers |
Contributors |
Build Administrators |
---|---|---|---|---|
GENERIC_READ |
Visualizza questo nodo. Consente di visualizzare le impostazioni di sicurezza per un nodo dell'area. |
|||
WORK_ITEM_READ |
Visualizza elementi di lavoro in questo nodo. Consente di visualizzare, ma non di modificare, elementi di lavoro assegnati a un nodo dell'area. |
|||
WORK_ITEM_WRITE |
Modifica elementi di lavoro in questo nodo. Consente di modificare elementi di lavoro assegnati a un nodo dell'area. |
|||
MANAGE_TEST_PLANS |
Gestisci piani di test. Consente di creare e modificare piani di test assegnati a un nodo dell'area. Se i piani di test non sono stati eseguiti, possono anche essere eliminati. |
|||
CREATE_CHILDREN |
Crea e ordina nodi figlio. Consente di creare nodi dell'area. Gli utenti che dispongono sia di questa autorizzazione sia dell'autorizzazione GENERIC_WRITE possono spostare o riordinare qualsiasi nodo figlio dell'area. |
|||
DELETE |
Elimina questo nodo. Consente di eliminare nodi dell'area. Gli utenti che dispongono sia di questa autorizzazione sia dell'autorizzazione GENERIC_WRITE per un altro nodo possono eliminare nodi dell'area e riclassificare elementi di lavoro esistenti dal nodo eliminato. Se il nodo eliminato dispone di nodi figlio, vengono eliminati anche tali nodi. |
|||
GENERIC_WRITE |
Modifica questo nodo. Consente di impostare autorizzazioni per nodi dell'area e di rinominare nodi dell'area. |
Assegnare autorizzazioni per controllare i percorsi iterazione
Per assegnare autorizzazioni con cui controllare l'accesso a percorsi iterazione, vengono usati l'elemento permission di gruppo e la classe ITERATION_NODE. Queste autorizzazioni consentono di controllare l'accesso alle versioni delle attività cardine o alle iterazioni per un singolo progetto. È possibile concedere l'accesso a utenti e gruppi in Windows, a gruppi in Team Foundation e a gruppi definiti in precedenza nel file del plug-in Gruppi e autorizzazioni. Per informazioni sul formato da usare per specificare gruppi, vedere Macro di gruppo e gruppi predefiniti in precedenza in questo argomento.
L'esempio seguente illustra come concedere al gruppo Contributors diverse autorizzazioni per un progetto team:
<group name="Contributors" description="Members of this group can add, modify, and delete items within the team project.">
<permissions>
<permission name="GENERIC_READ" class="ITERATION_NODE" allow="true" />
<permission name="GENERIC_WRITE" class="ITERATION_NODE" allow="true" />
<permission name="CREATE_CHILDREN" class="ITERATION_NODE" allow="true" />
</permissions>
</group>
Nella tabella seguente vengono descritte le autorizzazioni che è possibile assegnare per controllare l'accesso alla struttura gerarchica per i nodi dell'iterazione del progetto. Dal momento che nei modelli di processo MSF non vengono specificate autorizzazioni ITERATION_NODE, tutti i membri del team possono creare, visualizzare ed eliminare nodi dell'iterazione.
Nota
Per alcune operazioni di gestione degli elementi di lavoro sono necessarie più autorizzazioni,ad esempio in caso di eliminazione di un nodo.
Autorizzazione |
Descrizione |
---|---|
GENERIC_READ |
Visualizza questo nodo. Consente di visualizzare le impostazioni di sicurezza per un nodo. |
CREATE_CHILDREN |
Crea e ordina nodi figlio. Consente di creare nodi di iterazione. Gli utenti che dispongono sia di questa autorizzazione sia dell'autorizzazione GENERIC_WRITE possono spostare o riordinare qualsiasi nodo dell'iterazione. |
DELETE |
Elimina questo nodo. Consente di eliminare nodi dell'iterazione. Gli utenti che dispongono sia di questa autorizzazione sia dell'autorizzazione GENERIC_WRITE per un altro nodo possono eliminare nodi dell'iterazione e riclassificare elementi di lavoro esistenti dal nodo eliminato. Se il nodo eliminato dispone di nodi figlio, vengono eliminati anche tali nodi. |
GENERIC_WRITE |
Modifica questo nodo. Consente di impostare autorizzazioni per nodi dell'iterazione e di rinominare nodi. |
Vedere anche
Concetti
Definire gruppi, team e autorizzazioni mediante il plug-in Gruppi e autorizzazioni
Controllare l'accesso ad aree funzionali