Share via


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

In SQL ServerReporting Services la protezione 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 protezione degli elementi dei modelli, qualsiasi utente che disponga delle autorizzazioni per il modello può visualizzare i dati degli ordini. La protezione 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 protezione analogo a quello utilizzato per le tabelle e le colonne di un database. La protezione degli elementi dei modelli viene attivata e configurata mediante Gestione report.

Per applicare la protezione agli elementi dei modelli è necessario distribuire il modello a un server di report, quindi nella pagina Protezione di Gestione report è possibile applicare la protezione a entità e campi all'interno del modello. È inoltre possibile proteggere i dati restituiti dal modello mediante la protezione a livello di riga. È ad esempio possibile consentire ai venditori di visualizzare soltanto i propri ordini di vendita. Per applicare la protezione 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 protezione a livello di riga, tutte le righe vengono nascoste per impostazione predefinita. Gli utenti hanno accesso alle righe in base ai filtri di protezione. Ogni attributo aggiunto alla raccolta SecurityFilters diventa un meccanismo per la concessione dell'accesso alle righe esposte dal filtro. Se sono presenti filtri di protezione, 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 protezione predefinito. In questo caso, gli utenti potranno visualizzare solo le righe esposte dal filtro di protezione 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 protezione a livello di riga a un'entità all'interno del modello di report Adventure Works mediante la raccolta SecurityFilters. Verranno inoltre applicate le impostazioni di protezione 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:

  • MicrosoftSQL ServerReporting 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, in cui sono inclusi:

    • MicrosoftSQL Server.

    • MicrosoftSQL ServerBusiness Intelligence Development Studio.

    • MicrosoftSQL Server con il database AdventureWorks.

    • MicrosoftSQL 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 di AdventureWorks.

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