Inside SharePointDecentralizzazione dell'amministrazione di siti

Pav Cherny

Scarica il codice per questo articolo: SharePoint2008_06.exe (1160KB)

Microsoft Windows SharePoint Services (WSS) 3.0 e Microsoft Office SharePoint Server (MOSS) 2007 supportano un modello di sicurezza e di amministrazione flessibile che consente alle organizzazioni IT di centralizzare il controllo sui componenti dell'infrastruttura, come server Web e server di database, nonché di decentralizzare il controllo

sulle raccolte siti e sui siti ospitati. La centralizzazione dell'infrastruttura SharePoint® consente di ridurre l'overhead di manutenzione, consolidare la logica aziendale, fornire un singolo punto di accesso alle risorse SharePoint ed evitare investimenti non necessari nella tecnologia.

Nello stesso tempo, la decentralizzazione dell'amministrazione dei siti consente ai singoli reparti di mantenere un controllo autonomo sulle raccolte siti, sui siti, sulle raccolte documenti, sugli elenchi e sulle soluzioni di flusso di lavoro di reparto SharePoint nonché su altre risorse SharePoint ad essi associate. Tuttavia, uno degli svantaggi della delega dell'amministrazione dei siti a singoli reparti è rappresentata dalla maggiore complessità di gestione per il reparto IT. Come è possibile, ad esempio, tenere traccia dell'utilizzo delle risorse, dei siti di SharePoint scaduti e del contenuto non aggiornato in un'infrastruttura centralizzata se non si ha accesso ai siti e alle raccolte siti all'interno dell'ambiente in uso?

In questo articolo viene illustrato il modello di sicurezza di WSS 3.0, compresi i vantaggi e le implicazioni associati alla delega del controllo amministrativo sui siti di SharePoint ai singoli reparti, mantenendo nel contempo il controllo amministrativo centralizzato sull'infrastruttura SharePoint. Verrà inoltre illustrata la modalità di funzionamento dell'amministrazione delegata dei siti e verrà descritto come le autorizzazioni di accesso e la limitazione per motivi di sicurezza a livello di sito, elenco ed elemento consentano di garantire un ambiente di lavoro sicuro e semplice da gestire. Infine, verrà mostrato come gli amministratori di Web farm siano in grado di ottenere l'accesso alle statistiche dei siti necessarie senza disporre di autorizzazioni SharePoint elevate.

Se si desidera seguire le mie spiegazioni in un laboratorio di test, scaricare il materiale associato a questo articolo all'indirizzo technetmagazine.com. Il materiale contiene istruzioni dettagliate sulla distribuzione per una Web farm basata su Windows Server® 2008 che riflette in modo appropriato un ambiente di produzione per un'azienda con più reparti.

Amministrazione della raccolta siti e dell'infrastruttura SharePoint

È possibile creare un'infrastruttura SharePoint in base a una distribuzione a server singolo o una distribuzione di una Web farm. In effetti, le aziende utilizzano in genere entrambi gli approcci. La distribuzione a server singolo è appropriata per i singoli reparti che necessitano di una soluzione di collaborazione rapida e semplice. I requisiti di prestazioni e affidabilità sono minimi. Gli utenti tendono ad essere più comprensivi di fronte a una situazione in cui un server SharePoint di reparto, distribuito in genere sull'hardware di una workstation, non è disponibile in quanto la gestione dei sistemi rientra nell'ambito delle responsabilità del reparto e gli utenti che lavorano in tale reparto, dopo tutto, non sono amministratori IT.

Il quadro cambia completamente nel caso delle risorse server gestite dal reparto IT. Le prestazioni e l'affidabilità diventano fattori di importanza critica che, spesso, richiedono la distribuzione di soluzioni a disponibilità elevata per assicurare la conformità al contratto di servizio (SLA). Le distribuzioni di Web farm con carico bilanciato, i cluster di failover di SQL Server® e i database archiviati in reti SAN (Storage Area Network) possono contribuire a soddisfare le esigenze aziendali in termini di prestazioni ed elevata disponibilità. Per un'illustrazione di questa architettura, vedere la Figura 1.

Figura 1 Infrastruttura SharePoint con cluster di failover SQL Server e archiviazione SAN

Figura 1** Infrastruttura SharePoint con cluster di failover SQL Server e archiviazione SAN **(Fare clic sull'immagine per ingrandirla)

Come è possibile osservare nella Figura 1, per gestire le risorse in un'infrastruttura SharePoint centralizzata, è necessaria la collaborazione di diversi tipi di amministratori; tuttavia, ciascuno di questi amministratori esamina l'ambiente da una prospettiva differente. Ad esempio, i server nell'infrastruttura sono trasparenti agli amministratori di raccolte siti. Gli amministratori delle raccolte siti utilizzano l'interfaccia utente SharePoint standard. Questa interfaccia non cambia, sia che i siti vengano ospitati su una workstation all'interno del proprio ufficio su cui viene eseguito WSS 3.0 sia che vengano ospitati in una Web farm all'interno di un centro dati.

L'infrastruttura SharePoint è inoltre trasparente agli amministratori di database e ai progettisti dell'archiviazione SAN. Per questi amministratori, i database di SharePoint sono identici a qualsiasi altro database di SQL Server e i numeri di unità logica (LUN, Logical Unit Number) per il cluster di failover di SQL Server non sono diversi da qualsiasi altro LUN. L'amministratore che ricopre un ruolo più diretto nella gestione dell'infrastruttura SharePoint è l'amministratore di Web farm che, tuttavia, non ha alcun controllo sulle raccolte siti, sui database o sui numeri di unità logica.

È opportuno dire che gli amministratori delle raccolte siti di reparto, in genere, non conoscono i dettagli dell'infrastruttura. Dopotutto, non è necessario conoscere questi dettagli per eseguire il provisioning dei siti e delegare le autorizzazioni di accesso a team e gruppi all'interno di un reparto. È semplice creare un nuovo sito e avviare nuovi rapporti di collaborazione; inoltre problemi, come i costi di archiviazione elevati associati alla tecnologia SAN, raramente vengono presi in considerazione.

Con ogni progetto e iniziativa, vengono creati nuovi siti di team, i siti scaduti continuano a essere visualizzati e il contenuto non aggiornato non viene eliminato; in tal modo, l'ambiente SharePoint si espande rapidamente a un passo impressionante fino a quando non raggiunge una scala che gli amministratori di sistema non possono più ignorare. Ad esempio, l'ambiente SharePoint interno in Microsoft in passato includeva più di 180.000 siti prima che Microsoft IT avviasse un'iniziativa di semplificazione nel 2006.

Una formazione adeguata degli amministratori delle raccolte siti può contribuire a tenere sotto controllo i diversi aspetti di un'infrastruttura SharePoint centralizzata. Anche l'applicazione di quote e blocchi alle raccolte siti risulta utile, anche se questi metodi non sono molto efficaci quando si tratta di gestire siti di team e contenuti non aggiornati che sprecano preziose risorse di backup e archiviazione.

I contenuti non aggiornati non portano necessariamente al superamento della quota di una raccolta siti. È possibile, ovviamente, configurare SharePoint per l'invio di notifiche tramite posta elettronica ai proprietari delle raccolte siti e per l'eliminazione automatica delle raccolte siti inutilizzate dopo uno specifico periodo di tempo mediante la funzionalità Conferma utilizzo siti ed eliminazione nel sito Amministrazione centrale di SharePoint 3.0; tuttavia questa funzionalità non funziona a livello di singolo sito. Una raccolta siti può contenere siti aggiornati e obsoleti, ma la funzionalità Conferma utilizzo siti ed eliminazione non funziona a questo livello di granularità.

Più avanti in questo articolo verrà illustrato come identificare i siti non utilizzati e i contenuti non aggiornati controllando la data dell'ultima modifica di documenti ed elementi di elenchi, anche senza disporre di autorizzazioni di accesso alla raccolta siti. Questa funzionalità di report non è disponibile per impostazione predefinita, ma non è difficile da implementare.

Amministrazione decentralizzata dei siti di SharePoint

La delega dei privilegi di amministrazione dei siti di SharePoint è molto semplice. Utilizzando il sito Amministrazione centrale di SharePoint 3.0, lo strumento da riga di comando Stsadm.exe o uno strumento di provisioning personalizzato, è possibile creare applicazioni Web, percorsi gestiti e raccolte siti all'interno dell'infrastruttura. In qualità di amministratore di Web farm, durante la creazione di una raccolta siti, è possibile specificare amministratori di raccolte siti principali e secondari. Gli amministratori di raccolte siti possono essere normali utenti di dominio. Non richiedono autorizzazioni amministrative per la Web farm o altri server dell'infrastruttura. Utilizzano i relativi browser Web per eseguire le attività di amministrazione dei siti direttamente nell'interfaccia utente di SharePoint.

Nella Figura 2 viene illustrata l'amministrazione delegata dei siti in base alle istruzioni dettagliate disponibili nei fogli di lavoro del materiale di accompagnamento. In questo esempio, l'amministratore di Web farm ha eseguito il provisioning delle raccolte siti separate per il reparto HR (https://sharepoint/hr) e il reparto IT (https://sharepoint/it).

Figura 2 Amministrazione delegata dei siti di SharePoint

Figura 2** Amministrazione delegata dei siti di SharePoint **(Fare clic sull'immagine per ingrandirla)

Gli amministratori HR e IT possono quindi utilizzare la funzionalità Siti e aree di lavoro disponibile nel menu Azioni sito nell'interfaccia utente di SharePoint per creare siti secondari e possono applicare le autorizzazioni dal sito padre o definire nuove autorizzazioni utente e amministrative per i siti secondari. Tenere presente che, se non configurato diversamente in modo esplicito, l'amministratore di Web farm non può accedere a nessun sito principale o secondario, l'amministratore HR non può accedere ai siti IT e l'amministratore IT non può accedere ai siti HR, anche se tutti i siti sono ospitati nello stesso ambiente SharePoint.

La progettazione delle gerarchie delle raccolte siti e dei siti dipende dai requisiti dell'organizzazione. Nell'esempio riportato nella Figura 2 non è stato creato un sito master in base a https://sharepoint/hr e https://sharepoint/it. In altre parole, non è presente alcuna raccolta siti nel percorso https://sharepoint. Tuttavia, è possibile creare una raccolta siti in questo percorso o utilizzare altri percorsi gestiti, come https://sharepoint/sites/hr e https://sharepoint/sites/it.

È possibile, inoltre, creare applicazioni Web separate per HR e IT in modo da stabilire URL di base più intuitivi, come http://hr e http://it, eseguire il provisioning di siti portale generali per i reparti e utilizzare le web part di rollup per elencare le informazioni dei siti secondari in questi siti master. Le raccolte siti separate facilitano l'amministrazione autonoma, consentono di limitare l'accesso alle informazioni del reparto, forniscono singole funzionalità di personalizzazione per le pagine master, i layout di pagina, i modelli, le web part e i controlli di spostamento e possono essere utilizzate per inserire dati riservati in database del contenuto dedicati, separati da altre raccolte siti e altri database del contenuto.

Ruoli, autorizzazioni di siti e limitazione per motivi di sicurezza

Dopo aver creato le raccolte siti e aver delegato le autorizzazioni amministrative, l'amministratore di una raccolta siti può aprire un sito principale e utilizzare la funzionalità Impostazioni sito disponibile nel menu Azioni sito per gestire la raccolta siti. Questa attività include l'aggiunta (o la rimozione) degli altri amministratori di raccolte siti con autorizzazioni complete a tutti i siti della raccolta siti, la creazione di gruppi, l'associazione di questi gruppi a ruoli, l'aggiunta di utenti ai gruppi in questione per concedere autorizzazioni di lettura e collaborazione nonché il provisioning di siti di team e siti di gruppi secondari.

Sebbene sia possibile concedere autorizzazioni SharePoint agli utenti singolarmente, è preferibile creare gruppi SharePoint in base a ruoli specifici. Ad esempio, SharePoint include tre gruppi predefiniti per i ruoli Visitatori, Collaboratori e Proprietari. I visitatori dispongono dell'accesso di sola lettura; i collaboratori possono aggiungere elementi a elenchi e raccolte documenti e personalizzare le pagine Web; i proprietari dispongono del controllo completo.

Una funzionalità molto interessante è la capacità di SharePoint di eseguire la limitazione per motivi di sicurezza in base al ruolo dell'utente, il che implica che gli utenti sono in grado di visualizzare solo i collegamenti e gli elementi dell'interfaccia utente per i quali dispongono delle autorizzazioni di accesso. Se a un utente non si consente di accedere a una risorsa, come un elenco (configurando autorizzazioni esplicite in Impostazioni elenco) o un elemento di elenco selezionato (utilizzando il comando Gestisci autorizzazioni nel menu di scelta rapida dell'elemento), l'elenco o l'elemento non sarà visibile all'utente in questione. Se l'utente specifica l'URL dell'elemento direttamente nel browser, l'utente accederà alla pagina Errore: accesso negato.

Nella Figura 3 viene illustrata la funzionalità di limitazione per motivi di sicurezza in azione. L'amministratore HR dispone di autorizzazioni complete ed è in grado di utilizzare il menu Azioni sito per eseguire attività amministrative. Il visitatore HR, invece, dispone solo delle autorizzazioni di sola lettura alla raccolta siti e non è in grado di visualizzare questo menu.

Figura 3 Limitazione per motivi di sicurezza basata sui ruoli degli utenti nell'interfaccia SharePoint

Figura 3** Limitazione per motivi di sicurezza basata sui ruoli degli utenti nell'interfaccia SharePoint **(Fare clic sull'immagine per ingrandirla)

La limitazione per motivi di sicurezza è molto utile in quanto nasconde funzionalità, collegamenti ed elementi inaccessibili, ma implica anche che gli amministratori di Web farm non possono utilizzare l'interfaccia utente SharePoint per elencare siti e risorse di siti senza disporre delle autorizzazioni di accesso. Queste risorse non vengono visualizzate nelle pagine Web o nelle web part. Inoltre, le risorse inaccessibili non vengono visualizzate nei risultati di ricerca, in quanto il servizio di ricerca avanzato di SharePoint esegue la limitazione per motivi di sicurezza in fase di query in base all'identità dell'utente che invia la query.

Considerazioni sulla riga di comando

Se l'interfaccia utente grafica non fornisce l'accesso alle informazioni desiderate senza disporre di autorizzazioni elevate a livello di raccolta siti, lo strumento da riga di comando Stsadm.exe rappresenta la soluzione al problema. Si potrebbe, ad esempio, pensare che sia possibile utilizzare il comando

Stsadm -o enumsites -url https://sharepoint

per elencare tutte le raccolte siti e i proprietari nell'applicazione Web https://sharepoint. Utilizzando quindi il seguente comando, si dovrebbe essere in grado di elencare tutti i siti secondari:

Stsadm -o enumsubwebs -url <raccolta siti>

Tuttavia, in un ambiente di Web farm, quando si esegue un'operazione di questo tipo, Stsadm.exe in genere visualizza un messaggio di errore che indica la mancanza di autorizzazione di accesso al database. Stsadm.exe non è in grado di enumerare le raccolte siti anche se si è amministratori di Web farm e consente di gestire le raccolte siti in Amministrazione centrale di SharePoint 3.0. Di seguito viene riportato il messaggio di errore visualizzato se si utilizza Stsadm.exe in una Web farm senza autorizzazioni di accesso a SQL Server:

C:\Programmi\File comuni\Microsoft Shared\Web Server Extensions\12\BIN>stsadm -o enumsites -url https://sharepoint

<Sites Count="2">

<Site Error="Impossibile aprire il database &quot;WSS_Content&quot; richiesto dall'account di accesso. Accesso non riuscito.&#xD;&#xA;Accesso non riuscito per l'utente 'CONTOSO\SPAdmin'.">

<Site Error="Impossibile aprire il database &quot;WSS_Content&quot; richiesto dall'account di accesso. Accesso non riuscito.&#xD;&#xA;Accesso non riuscito per l'utente 'CONTOSO\SPAdmin'." />

L'amministratore di Web farm riceve questo messaggio di errore perché Stsadm.exe viene eseguito nel contesto dell'utente connesso, come CONTOSO\SPAdmin, mentre il sito Amministrazione centrale di SharePoint 3.0 accede ai database di SharePoint nel contesto dell'account di sistema associato al pool di applicazioni di Amministrazione centrale di SharePoint 3.0, come CONTOSO\WssConfigAdmin. Sebbene la concessione all'account delle autorizzazioni db_owner per il database del contenuto in SQL Server consenta di eseguire il comando Stsadm -o enumsites -url https://sharepoint, non si sarà comunque in grado di enumerare i siti secondari all'interno della raccolta siti. Il comando Stsadm -o enumsubwebs -url <raccolta siti> restituisce il messaggio di errore Accesso negato. (Eccezione da HRESULT: 0x80070005 (E_ACCESSDENIED)), quindi si ritorna al punto di partenza. Tuttavia, esiste un metodo più efficace che non richiede autorizzazioni SQL Server elevate.

Informazioni relative al sito nei database del contenuto

Se non è possibile ottenere le informazioni desiderate tramite le interfacce e gli strumenti SharePoint standard, è necessario accedere direttamente ai database del contenuto SharePoint. Tenere presente, tuttavia, che questa operazione deve essere eseguita solo come ultima risorsa. I database del contenuto si basano su strutture di database e schemi proprietari che sono stati documentati da Microsoft solo parzialmente in WSS 3.0 SDK nel tentativo di impedire ai clienti di utilizzare i database direttamente. Quando possibile, per accedere alle informazioni desiderate, è opportuno utilizzare l'interfaccia utente, gli strumenti da riga di comando, il modello a oggetti o i servizi Web SharePoint.

Se non i dispone di altre alternative ed è necessario accedere ai database direttamente, è consigliabile almeno limitare la soluzione all'accesso di sola lettura. La modifica delle strutture di database o dello schema di database non è supportata e può causare problemi seri che potrebbero richiedere il ripristino delle raccolte siti dal backup o la reinstallazione della Web farm SharePoint.

Un'alternativa possibile all'implementazione di una soluzione di report che consenta di accedere direttamente ai database del contenuto consiste nello specificare l'account dell'amministratore della Web farm come proprietario secondario nella configurazione della raccolta siti. Gli amministratori di Web farm possono eseguire questo passaggio nel sito Amministrazione centrale di SharePoint 3.0. È possibile trovare il collegamento Amministratori raccolta siti corrispondente in Gestione siti di SharePoint nella pagina Gestione applicazioni.

Un amministratore secondario di raccolte siti può aprire la raccolta siti nel browser Web, visualizzare le impostazioni del sito e fare clic sul collegamento Report utilizzo sito in Amministrazione sito, purché si sia attivata la funzionalità Elaborazione analisi dati di utilizzo in Amministrazione centrale di SharePoint 3.0. Se si desidera tenere traccia dei dati di utilizzo nei file di registro sui server SharePoint, utilizzare Registrazione e report nella pagina Operazioni. La funzionalità Report utilizzo sito è disattivata per impostazione predefinita.

Tuttavia, la creazione manuale dei report di utilizzo del sito per le singole raccolte siti non è una soluzione pratica in ambienti con un numero elevato di raccolte siti o con requisiti rigidi che impediscono la concessione agli amministratori di Web farm delle autorizzazioni necessarie. Un approccio più pratico prevede l'implementazione di un'applicazione di report ASP.NET semplice che elenca tutte le raccolte siti e i siti presenti nel database del contenuto insieme a statistiche importanti, ad esempio il numero di elementi, la dimensione totale di tutti gli elementi e la data dell'ultima modifica degli elementi, come illustrato nella Figura 4.

Figura 4 Come ottenere direttamente le statistiche del sito da un database del contenuto

Figura 4** Come ottenere direttamente le statistiche del sito da un database del contenuto **(Fare clic sull'immagine per ingrandirla)

Se si esegue questa applicazione con l'identità dell'account del pool di applicazioni di Amministrazione centrale SharePoint 3.0, sarà possibile ottenere l'accesso ai database del contenuto senza la necessità di disporre di autorizzazioni SQL Server elevate. Come affermato in precedenza, l'account di Amministrazione centrale dispone già delle autorizzazioni SQL Server necessarie.

Il materiale di accompagnamento include una semplice soluzione di report che prevede l'esecuzione di query SELECT nel database del contenuto sul server SQL e istruzioni dettagliate per la distribuzione di questa soluzione su un server Web. È importante notare che non è stato implementato alcun controllo di sicurezza. La soluzione viene eseguita con l'autenticazione anonima.

Non è necessario autenticare l'utente perché l'account di Amministrazione centrale fornisce il contesto di sicurezza richiesto per accedere ai database del contenuto. Per il sito Web della soluzione è stata utilizzata una porta personalizzata, bloccata tramite Windows® Firewall in Windows Server 2008; pertanto, solo un utente locale può aprire l'applicazione Web. In tal modo, i requisiti di sicurezza nell'ambiente di test sono stati soddisfatti, ma in un ambiente di produzione, è consigliabile rafforzare ulteriormente la sicurezza, ad esempio attivando l'autenticazione di Windows e configurando autorizzazioni di accesso restrittive alla directory virtuale dell'applicazione ASP.NET.

Conclusioni

SharePoint fornisce funzionalità di amministrazione di siti e raccolte siti flessibili che consentono di centralizzare l'infrastruttura SharePoint, decentralizzando nel contempo l'amministrazione dei siti in base alle specifiche esigenze aziendali. Un'infrastruttura centralizzata può essere vantaggiosa per le aziende di qualsiasi dimensione, in quanto un ambiente consolidato consente di ridurre i costi, semplifica la condivisione delle informazioni all'interno dei reparti, fornisce le basi per applicare le conoscenze degli esperti in modo più mirato per gestire l'ambiente con livelli elevati di sicurezza, affidabilità e scalabilità e offre agli utenti un singolo punto di accesso ai siti e alle risorse SharePoint nella rete aziendale.

I singoli reparti e unità aziendali, allo stesso tempo, possono continuare ad avere il controllo delle relative risorse SharePoint. Gli amministratori di Web farm possono designare gli amministratori delle raccolte siti, che eseguono quindi le attività di amministrazione dei siti all'interno delle relative aree di responsabilità senza alcun ulteriore coinvolgimento del reparto IT.

Tuttavia, con la delega del controllo ai reparti, gli amministratori di Web farm non sono più in grado di monitorare l'utilizzo delle risorse nell'infrastruttura mediante l'uso delle funzionalità e degli strumenti SharePoint standard. L'applicazione di quote ai database del contenuto, l'invio di promemoria tramite posta elettronica agli amministratori delle raccolte siti e il rilevamento dei dati di utilizzo a scopi di report possono contribuire ad attenuare il problema; tuttavia, per gestire l'infrastruttura SharePoint in modo efficace, gli amministratori di Web farm necessitano di ulteriori strumenti in grado di estrarre i metadati dei siti necessari direttamente dai database del contenuto in modalità di sola lettura.

Le opzioni disponibili includono l'utilizzo di SQL Server 2005 Reporting Services o di una soluzione di report aziendale simile. Come illustrato nell'esempio del materiale di accompagnamento, per ottenere le informazioni necessarie, è inoltre possibile utilizzare le query SELECT di SQL Server.

Pav Cherny è un esperto IT e un autore specializzato in tecnologie Microsoft per la collaborazione e le comunicazioni unificate. Le sue pubblicazioni includono white paper, manuali di prodotti e libri su amministrazione del sistema e operazioni IT. Pav è Presidente di Biblioso Corporation, un'azienda specializzata in servizi di localizzazione e documentazione gestita.

© 2008 Microsoft Corporation e CMP Media, LLC. Tutti i diritti riservati. È vietata la riproduzione completa o parziale senza autorizzazione.