Esercitazione: Applicazione di filtri di sicurezza agli elementi dei modelli di report

In SQL Server Reporting Services la sicurezza degli elementi dei modelli consente di concedere l'accesso a gruppi o utenti. Si supponga che il database contenga informazioni relative agli ordini di vendita. A meno che non si applichi la sicurezza degli elementi dei modelli, qualsiasi utente che disponga delle autorizzazioni per il modello può visualizzare i dati degli ordini. La sicurezza degli elementi dei modelli consente di esporre gli elementi inclusi nei modelli in modo selettivo a utenti e gruppi diversi. Si tratta di un tipo di sicurezza analogo a quello utilizzato per le tabelle e le colonne di un database. La sicurezza degli elementi dei modelli viene attivata e configurata mediante Gestione report.

Per applicare la sicurezza agli elementi dei modelli è necessario distribuire il modello a un server di report, quindi nella pagina Sicurezza di Gestione report è possibile applicare la sicurezza a entità e campi all'interno del modello. È inoltre possibile proteggere i dati restituiti dal modello mediante la sicurezza a livello di riga. È ad esempio possibile consentire ai venditori di visualizzare soltanto i propri ordini di vendita. Per applicare la sicurezza a livello di riga, è necessario creare almeno un attributo utilizzabile come filtro per limitare i dati e quindi assegnarlo alla proprietà Raccolta SecurityFilters o alla proprietà DefaultSecurityFilter Object. Deve trattarsi di un attributo booleano e la proprietà IsFilter deve essere impostata su True. Facoltativamente, se l'attributo non risulta utile come campo di report, è possibile impostare la proprietà Hidden su True.

Se viene utilizzato almeno un attributo per la sicurezza a livello di riga, tutte le righe vengono nascoste per impostazione predefinita. Gli utenti hanno accesso alle righe in base ai filtri di sicurezza. Ogni attributo aggiunto alla raccolta SecurityFilters diventa un meccanismo per la concessione dell'accesso alle righe esposte dal filtro. Se sono presenti filtri di sicurezza, agli utenti o ai gruppi che non dispongono delle autorizzazioni per tali filtri non verrà visualizzata alcuna riga, a meno che non venga impostato un filtro di sicurezza predefinito. In questo caso, gli utenti potranno visualizzare solo le righe esposte dal filtro di sicurezza predefinito.

Nota

Per impostazione predefinita, gli amministratori non dispongono dell'accesso all'intero modello. Se si desidera che un amministratore disponga di tale accesso, è necessario concedere autorizzazioni come a qualsiasi altro utente o gruppo.

In questa esercitazione verrà illustrato come applicare la sicurezza a livello di riga a un'entità all'interno del modello di report AdventureWorks2008R2 mediante la raccolta SecurityFilters. Verranno inoltre applicate le impostazioni di sicurezza necessarie in Gestione report.

Nota importanteImportante

Per visualizzare o utilizzare gli esempi e i database di esempio di SQL Server, è necessario scaricarli e installarli. Per ulteriori informazioni, vedere Considerazioni per l'installazione di esempi e di database di esempio di SQL Server.

Requisiti

Per utilizzare l'esercitazione è necessario che nel sistema sia installato quanto segue:

  • Microsoft SQL Server Reporting Services in esecuzione in modalità nativa. I modelli non sono supportati in SQL Server Express. Per ulteriori informazioni, vedere Funzionalità supportate dalle edizioni di SQL Server 2008 R2, in cui sono inclusi:

    • Microsoft SQL Server.

    • Microsoft SQL Server Business Intelligence Development Studio.

    • Microsoft SQL Server con il database AdventureWorks2008R2.

    • Microsoft SQL Server con l'esempio di modello di report Adventure Works.

  • Microsoft .NET Framework 2.0 nel sistema in cui verrà eseguito Generatore report.

È necessario disporre delle autorizzazioni seguenti:

  • Per distribuire e pubblicare il modello di report è necessaria l'assegnazione ai ruoli Server di pubblicazione o Gestione contenuto.

  • Autorizzazioni per il recupero dei dati dal database AdventureWorks2008R2.

Verificare inoltre che il computer che esegue il server di report utilizzi Internet Information Services (IIS) con sicurezza integrata.