Architettura di sicurezza di Team Foundation Server

Aggiornamento: novembre 2007

Per analizzare e pianificare la sicurezza di Team Foundation Server, è necessario considerare il livello applicazioni, il livello dati e i livello clienti di Team Foundation, Team Foundation Build, Team Foundation Server Proxy e le interazioni tra queste entità. A tal fine è necessario conoscere i servizi Web, database e modelli a oggetti impiegati, È inoltre necessario conoscere le porte e i protocolli di rete utilizzati per impostazioni predefinita e quali di queste porte sono personalizzabili.

Oltre che dai propri servizi, il funzionamento di Team Foundation Server dipende anche da altri servizi. Per ulteriori informazioni sulle dipendenze Team Foundation Server, vedere Concetti relativi alla sicurezza in Team Foundation Server.

Modello a oggetti

Team Foundation Server include un modello a oggetti che consente la comunicazione tra i livelli client e applicazione di Team Foundation. Questo modello a oggetti permette inoltre a integratori di software e a terze parti di personalizzare ed estendere la funzionalità di Team Foundation Server.

Modello a oggetti di Team Foundation Server

Il modello a oggetti di Team Foundation Server è costituito da un insieme di API gestite che includono le seguenti interfacce:

  • Servizi comuni di Team Foundation

    • Servizio di registrazione

    • Servizio di sicurezza

    • Servizio di collegamento

    • Servizio di gestione eventi

    • Servizio di classificazione

  • Modello a oggetti del controllo della versione

  • Modello a oggetti della gestione elementi di lavoro

  • Modello a oggetti di Team Foundation Build

Il modello a oggetti di Team Foundation Server è documentato pubblicamente nella documentazione sulla estensibilità di Team Foundation Server in Visual Studio SDK.

Servizi Web e database

Team Foundation Server include un gruppo di servizi Web e database, che vengono installati e configurati separatamente sui livelli applicazione, dati e client di Team Foundation. Nelle seguenti figure è fornita una panoramica dei servizi Web, delle applicazioni e dei database disponibili su Team Foundation Server e sui computer client.

Diagramma architettura serverDiagramma architettura client

Livello applicazione

Il livello applicazione di Team Foundation contiene i seguenti servizi Web ASP.NET che corrispondono ai rispettivi proxy o modelli a oggetti sul livello client. Questi servizi Web non sono in genere progettati per la programmazione da parte di integratori di terze parti. Un'eccezione a questo criterio è il servizio Web MSBuild documentato nella documentazione sull'estensibilità di Team Foundation Server nel Visual Studio SDK.

  • Servizi comuni di Team Foundation.

    • Servizio Web di registrazione

    • Servizio Web di sicurezza

    • Servizio Web di collegamento

    • Servizio Web di gestione eventi

    • Servizio Web di classificazione

  • Servizio Web del controllo della versione

  • Servizio Web della gestione elementi di lavoro

  • Servizio Web di Team Foundation Build

Livello dati

Il livello dati di Team Foundation è costituito dai seguenti archivi operativi all'interno di SQL Server 2005, che includono dati, stored procedure e altra logica associata. Questi archivi operativi non sono in genere progettati per la programmazione da parte di integratori di terze parti.

  • Gestione elementi di lavoro

  • Controllo della versione

  • Servizi comuni di Team Foundation

  • Team Foundation Build

  • Data warehouse per creazione di report

Livello client

Il livello client utilizza gli stessi servizi Web elencati nel livello applicazione per comunicare con il livello applicazione di Team Foundation. Comunica tramite il modello a oggetti di Team Foundation Server. Oltre al modello a oggetti di Team Foundation Server, il livello client di Team Foundation include anche componenti di Visual Studio Industry Partners (VSIP), integrazione con Microsoft Office, interfacce della riga di comando e uno schema di criteri di archiviazione per l'integrazione con Team Foundation Server e l'integrazione personalizzata. Per ulteriori informazioni su come estendere e personalizzare il livello client, vedere la documentazione relativa all'estensibilità in Visual Studio SDK.

Informazioni sulla configurazione di Team Foundation Server

Perché Team Foundation Server dipende da SQL Server, SQL Server Reporting Services, Internet Information Services (IIS), il sistema operativo Windows e Windows SharePoint Services, le informazioni di configurazione per Team Foundation Server sono archiviata in cinque percorsi:

  • Archivi dati di Internet Information Services (IIS) - livello applicazione di Team Foundation

  • I file di configurazione (web.config, proxy.config) di Team Foundation Server - livello applicazione di Team Foundation

  • Origini dati di SQL Server Reporting Services (ad esempio, dati di TFSREPORTS) - livello applicazione di Team Foundation.

  • Database dell'integrazione di Team Foundation Server - livello dati di Team Foundation

  • Registro di sistema di Windows - livelli client, dati e applicazione di Team Foundation

Quando si gestisce una distribuzione di Team Foundation Server, è necessario prendere queste origini di configurazione in considerazione. Per modificare la configurazione in qualsiasi modalità, è necessario modificare le informazioni archiviate in più percorsi sul livello applicazione. È inoltre necessario modificare le informazioni sulla configurazione sui livelli di dati e client. Team Foundation Server include un numero di utilità della riga di comando per consentire di apportare queste modifiche. Tuttavia, in alcuni casi è necessario apportare anche modifiche manuali.

Sincronizzazione delle identità di gruppo tra Active Directory e Team Foundation Server

Nelle distribuzioni in cui si esegue Team Foundation Server in un dominio Active Directory, il gruppo e le informazioni di identità sono sincronizzate quando si verifica qualsiasi evento seguente:

  • Viene avviato il server di livello applicazione per Team Foundation.

  • Viene aggiunto un gruppo di Active Directory a un gruppo in Team Foundation Server.

  • Scade il tempo specificato nel file web.config. Il valore predefinito è 1 ora.

Active Directory si sincronizza con Generic Security Services (GSS) che quindi si sincronizza con Team Foundation Server. Le identità modificare vengono propagate dal server ai client. A seconda dell'intervallo della sincronizzazione configurata nel file web.config e della natura della modifica a gruppi e utenti, l'applicazione delle modifiche agli utenti e ai gruppi di Active Directory a Team Foundation Server può richiedere tempo.

Gruppi e autorizzazioni

Team Foundation Server dispone di un proprio insieme di gruppi predefiniti. Presenta inoltre autorizzazioni che è possibile impostare a più livelli. È possibile creare gruppi personalizzati e personalizzare autorizzazioni a livelli singoli e di gruppo. Se tuttavia aggiunge un utente o un gruppo a Team Foundation Server, l'utente o il gruppo specificato non viene aggiunto automaticamente ai due componenti dai quali dipende Team Foundation Server: Windows SharePoint Services e SQL Server Reporting Services. È quindi necessario aggiungere gli utenti e i gruppi a questi programmi e concedere le autorizzazioni appropriate per consentire loro di eseguire correttamente le operazioni di Team Foundation Server. Per ulteriori informazioni, vedere Gestione di utenti e gruppi, Gestione delle autorizzazioni, Ruoli di Windows SharePoint Services e Ruoli di SQL Server Reporting Services.

Porte e protocolli di rete

Per impostazione predefinita, per Team Foundation Server è configurato l'uso di porte e protocolli di rete specifici. Nel seguente diagramma è illustrato il traffico di rete di Team Foundation Server in una distribuzione di esempio.

Diagramma di porte e comunicazioni

Impostazioni di rete predefinite

Per impostazione predefinita, la comunicazione tra il livello applicazione di Team Foundation, il livello dati di Team Foundation, i computer di compilazione e Team Foundation Server Proxy utilizza le porte e i protocolli elencati di seguito. Se il numero di porta è seguito da un asterisco, è possibile personalizzare la porta in questione.

Servizio e livello

Protocollo

Porta

Livello applicazione - Servizi Web

HTTP

8080

Livello applicazione – Amministrazione di Windows SharePoint Services

HTTP

17012 * (se è installato con Team Foundation Server); in caso contrario viene generato casualmente

Livello applicazione - Windows SharePoint Services e SQL Reporting Services

HTTP

80

Computer di compilazione - accesso remoto dal server di livello applicazione Team Foundation

SOAP mediante HTTP

9191*

Livello dati

TCP MS-SQL

1443*

Team Foundation Server Proxy: dal client al proxy

HTTP

8081*

Team Foundation Server Proxy: dal proxy al livello applicazione

HTTP

8080*

Livello client - Reporting Services

HTTP

80

Livello client - Servizi Web

HTTP

8080*

Impostazioni di rete personalizzabili

È possibile modificare Team Foundation Server per utilizzare alcune porte personalizzate. È possibile modificare la comunicazione tra i livelli applicazione, dati e client, come illustrato nella tabella precedente. Nella tabella seguente sono descritte le modifiche alle porte da HTTP a HTTPS come esempio.

Nota:

La configurazione di Team Foundation Server per l'utilizzo di HTTPS e SSL è un'attività complessa che richiede altre operazioni oltre all'abilitazione del traffico di rete HTTPS sulle porte. Per ulteriori informazioni, vedere Sicurezza di Team Foundation Server tramite HTTPS e Secure Sockets Layer (SSL).

Servizio e livello

Protocollo

Porta

Livello applicazione - Servizi Web con SSL

HTTPS

Configurato dall'amministratore

Livello applicazione – Amministrazione di Windows SharePoint Services

HTTPS

Configurato dall'amministratore

Livello applicazione - Windows SharePoint Services e SQL Reporting Services

HTTPS

443

Livello client - Reporting Services

HTTPS

443

Livello client - Servizi Web

HTTPS

Configurato dall'amministratore

Vedere anche

Concetti

Concetti relativi alla sicurezza in Team Foundation Server

Autorizzazioni per Team Foundation Server

Altre risorse

Topologie di Team Foundation Server