Configurare una connessione del database del server di report (Gestione della configurazione del server di report)

Si applica a: SQL Server Reporting Services 2016 (13.x) e versioni successive Server di report di Power BI

Per contenuti relativi a versioni precedenti di SQL Server Reporting Services (SSRS), si veda Che cos’è SQL Server Reporting Services?

In questo articolo vengono fornite informazioni sulla connessione al database del server di report di SQL Server e informazioni essenziali sul funzionamento. Sono comprese anche informazioni su come configurare la connessione e quali considerazioni tenere presenti durante la configurazione.

Ogni istanza del server di report richiede una connessione al database del server di report in cui sono archiviati report, origini dei dati condivise, risorse e metadati gestiti dal server. La connessione iniziale può essere creata durante l'installazione del server di report, se si sta installando la configurazione predefinita. Nella maggior parte dei casi viene usato lo strumento di configurazione di Reporting Services per configurare la connessione al termine dell'installazione. Modificare la connessione in qualsiasi momento per cambiare il tipo di account o reimpostare le credenziali. Per maggiori informazioni su come creare il database e configurare la connessione, vedere Creare un database del server di report in modalità nativa (Gestione della configurazione del server di report).

Quando configurare una connessione del database del server di report

Configurare un database del server di report nei casi seguenti:

Modalità di connessione di Reporting Services al Motore di database

L'accesso al server di report a un database del server di report dipende da:

  • Credenziali e informazioni di connessione: quelle specificate per il database del server di report vengono utilizzate esclusivamente dal server di report.
  • Chiavi di crittografia: per archiviare e recuperare dati sensibili è necessario disporre di chiavi di crittografia valide. Vengono create automaticamente alla prima configurazione del database. In seguito alla creazione delle chiavi, è necessario aggiornarle se si modifica l'identità del servizio del server di report. Per altre informazioni sull'uso delle chiavi di crittografia, vedere Configurare e gestire chiavi di crittografia (Gestione della configurazione del server di report).

Il database del server di report è un componente interno, a cui accede solo il server di report. Le credenziali e le informazioni di connessione specificate per il database del server di report vengono utilizzate esclusivamente dal server di report. Gli utenti che richiedono i report non devono disporre di autorizzazioni per il database o di un account di accesso al database per il database del server di report.

Reporting Services usa System.Data.SqlClient per connettersi al motore di database che ospita il database del server di report. Se si utilizza un'istanza locale del motore di database, il server di report stabilisce la connessione tramite memoria condivisa. Se si utilizza un server di database remoto per il database del server di report, a seconda dell'edizione utilizzata potrebbe essere necessario abilitare le connessioni remote. Se si usa l'edizione Enterprise Edition, le connessioni remote sono abilitate per TCP/IP per impostazione predefinita.

È possibile verificare che l'istanza accetti connessioni remote aprendo Gestione configurazione SQL Server e confermando che il protocollo TCP/IP è abilitato per ciascun servizio. L'abilitazione delle connessioni remote attiva anche i protocolli client e server necessari. Per verificare che questi protocolli siano abilitati, aprire Gestione configurazione SQL Server, passare a Configurazione di rete di SQL Server nel riquadro sinistro e scegliere Protocolli per MSSQLSERVER. Per altre informazioni, vedere Abilitare o disabilitare un protocollo di rete del server in SQL Server.

Definizione della connessione a un database del server di report

Per configurare la connessione, usare Gestione configurazione Reporting Services o l'utilità della riga di comando rsconfig. Un server di report richiede le informazioni seguenti sulla connessione:

  • Nome dell'istanza del motore di database: il nome dell'istanza del motore di database che ospita il database del server di report.
  • Nome del database del server di report: quando si crea una connessione per la prima volta, è possibile creare un nuovo database del server di report oppure selezionare un database esistente. Per altre informazioni, vedere Creare un database del server di report, Gestione della configurazione del server di report.
  • Tipo di credenziali: è possibile utilizzare gli account di servizio, un account di dominio di Windows o le credenziali di accesso al database di SQL Server.
  • Nome utente e password: nome utente e password, necessari solo se si utilizza un account di dominio di Windows o le credenziali di accesso al database di SQL Server.

Alle credenziali fornite deve essere concesso l'accesso al database del server di report. Se si utilizza lo strumento di configurazione di Reporting Services, questo passaggio verrà eseguito automaticamente. Per ulteriori informazioni sulle autorizzazioni necessarie per accedere al database, si veda la sezione In che modo il servizio di creazione report si connette al motore di database di questo articolo.

Memorizzare le informazioni di connessione al database

Reporting Services archivia e crittografa le informazioni di connessione nelle impostazioni di RSreportserver.config seguenti. Per creare valori crittografati per queste impostazioni, utilizzare lo strumento di configurazione di Reporting Services o l'utilità rsconfig.

Non tutti i valori sono impostati per ogni tipo di connessione. Se si configura la connessione usando i valori predefiniti per la connessione con gli account del servizio, <LogonUser>, <LogonDomain> e <LogonCred> risultano vuoti, come indicato di seguito:

<Dsn></Dsn>
<ConnectionType></ConnectionType>
<LogonUser></LogonUser>
<LogonDomain></LogonDomain>
<LogonCred></LogonCred>

Se si configura la connessione per utilizzare un account Windows specifico o le credenziali di accesso al database e successivamente si cambiano l'account o le credenziali di accesso, ricordarsi di aggiornare i valori memorizzati.

Scelta del tipo di credenziali

In una connessione a un database del server di report è possibile utilizzare tre tipi di credenziali:

  • Sicurezza integrata di Windows con l'account del servizio server di report:: poiché il server di report è implementato come singolo servizio, solo l'account utilizzato per l'esecuzione del servizio deve disporre di accesso al database.
  • Account utente di Windows: se il server di report e il relativo database sono installati sullo stesso computer, è possibile utilizzare un account locale. In caso contrario, utilizzare un account di dominio.
  • Credenziali di accesso di SQL Server: usare le credenziali di accesso di SQL Server per autenticare e connettersi al database del server di report. Questa opzione è utile quando il server di database si trova in un dominio diverso o quando si usa la sicurezza del gruppo di lavoro anziché la sicurezza del dominio.

Nota

Non è possibile utilizzare un'estensione di autenticazione personalizzata per connettersi a un database del server di report. Le estensioni di autenticazione personalizzate sono utilizzate solo per autenticare un'entità a un server di report. Tali estensioni non influiscono sulle connessioni al database del server di report o alle origini dati esterne che forniscono contenuto ai report.

Nota

Se si usa Istanza gestita di SQL di Azure per ospitare i database del server di report, l'autenticazione di SQL Server è l'unico tipo di credenziali supportato. Inoltre, Istanza gestita non può ospitare l'istanza del server di report.

Utilizzare la sicurezza integrata di Windows tramite l'account del servizio del server di report

È possibile utilizzare la sicurezza integrata di Windows per connettersi tramite l'account di servizio del server di report. All'account vengono concessi diritti di accesso al database del server di report. Si tratta del tipo di credenziali predefinito scelto dal programma di installazione se Reporting Services viene installato nella configurazione predefinita.

L'account del servizio è un account attendibile che consente di adottare un approccio con interventi minimi di manutenzione per la gestione di una connessione al database del server di report. Poiché l'account del servizio utilizza la sicurezza integrata di Windows per stabilire la connessione, non è necessario archiviare le credenziali. Se in seguito, tuttavia, si modifica la password dell'account del servizio o l'identità, assicurarsi di utilizzare lo strumento di configurazione di Reporting Services per apportare la modifica. Lo strumento aggiorna automaticamente le autorizzazioni per il database per utilizzare le informazioni sull'account modificate. Per altre informazioni, vedere Configurare l'account del servizio del server di report (Gestione configurazione del server di report).

Se si configura la connessione di database per l'utilizzo dell'account del servizio e il database del server di report si trova in un computer remoto, l'account dovrà disporre di autorizzazione di rete. Non utilizzare l'account di servizio se il database del server di report si trova in un dominio diverso, dietro un firewall o se si utilizza la sicurezza dei gruppi di lavoro anziché la sicurezza di dominio. Utilizzare invece un account utente del database di SQL Server.

Se si configura l'istanza del motore di database per l'autenticazione di Windows, assicurarsi che l'istanza si trovi nello stesso dominio o in un dominio attendibile con il computer del server di report. Successivamente è possibile configurare la connessione per l'uso dell'account del servizio. In alternativa, è possibile usare un account utente di dominio gestito come proprietà di connessione tramite lo strumento di configurazione di Reporting Services. Se il server di database si trova in un dominio diverso o si utilizza la sicurezza dei gruppi di lavoro, è necessario configurare la connessione per l'utilizzo di credenziali di accesso al database di SQL Server. In questo caso, assicurarsi di crittografare la connessione.

Utilizzare l’account utente di Windows

È possibile specificare un account utente di Windows per la connessione del server di report al database del server di report. Se si utilizza un account locale o di dominio, è necessario aggiornare la connessione al database del server di report ogni volta che si modifica la password o l'account. Per aggiornare la connessione, utilizzare sempre lo strumento di configurazione di Reporting Services.

Usare le credenziali di accesso di SQL Server

È possibile specificare un account di accesso di SQL Server per la connessione al database del server di report. Se si usa l'autenticazione di SQL Server e il database del server di report si trova in un computer remoto, usare IPSec per proteggere la trasmissione dei dati tra i server. Se si utilizzano le credenziali di accesso al database, è necessario aggiornare la connessione al database del server di report ogni volta che si modifica la password o l'account.

Autorizzazioni per il database

Agli account utilizzati per connettersi al database del server di report vengono concessi i ruoli seguenti:

Database Ruolo
ReportServer public
RSExecRole
master
msdb
ReportServerTempDB
RSExecRole

Quando si usa lo strumento di configurazione di Reporting Services per creare o modificare la connessione, queste autorizzazioni vengono concesse automaticamente. Se si usa l'utilità rsconfig e si specifica un account diverso per la connessione, aggiornare l'account di accesso di SQL Server per le nuove credenziali. È possibile creare file di script nello strumento di configurazione di Reporting Services per aggiornare le credenziali di accesso di SQL Server per il server di report.

Verifica del nome di database

Usare lo strumento di configurazione di Reporting Services per stabilire quale database del server di report viene usato da una determinata istanza del server di report. Per individuare il nome, connettersi all'istanza del server di report e aprire la pagina Impostazioni database.

Utilizzo di un database diverso del server di report o spostamento di un database del server di report

È possibile configurare un'istanza del server di report in modo da utilizzare un database diverso del server di report modificando le informazioni di connessione. In genere, si rende necessario cambiare database quando si distribuisce un server di report di produzione. In questo caso si passa da un database del server di report di prova a un database del server di report di produzione. È inoltre possibile spostare un database del server di report in un altro computer. Per altre informazioni, vedere Eseguire l'aggiornamento e la migrazione di Reporting Services in SQL Server.

Configurare più server di report in modo che utilizzino lo stesso database del server di report

È possibile configurare più server di report in modo che utilizzino lo stesso database del server di report. Questa configurazione di distribuzione è denominata distribuzione con scalabilità orizzontale e costituisce un prerequisito se si desidera eseguire più server di report in un cluster di server. Tuttavia, è anche possibile usare questa configurazione se si desidera segmentare le applicazioni di servizio. È possibile usarlo per testare l'installazione e le impostazioni di una nuova istanza del server di report per confrontarla con un'installazione del server di report esistente. Per altre informazioni, vedere Configurare una distribuzione con scalabilità orizzontale di un server di report in modalità nativa.

Altre domande? Visitare il forum su Reporting Services.