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

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

Per contenuti relativi a versioni precedenti di SQL Server Reporting Services (SSRS), vedere SQL Server 2014 Reporting Services.

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. È possibile modificare la connessione in qualsiasi momento per cambiare il tipo di account o reimpostare le credenziali. Per istruzioni dettagliate 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).

È necessario 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 dalle credenziali e dalle informazioni di connessione. Dipende anche dalle chiavi di crittografia valide per l'istanza del server di report che usa tale database. Per archiviare e recuperare dati sensibili è necessario disporre di chiavi di crittografia valide. Le chiavi di crittografia 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, le connessioni remote per TCP/IP sono abilitate per impostazione predefinita.

Per verificare che l'istanza accetti connessioni remote, selezionare Start, scegliere Tutti i programmi, selezionare Microsoft SQL Server, Strumenti di configurazione e Gestione configurazione SQL Server, quindi verificare che il protocollo TCP/IP sia abilitato per ogni servizio.

Quando si attivano le connessioni remote, vengono abilitati anche i protocolli client e server. Per verificare che i protocolli siano abilitati, selezionare Start, scegliere Tutti i programmi, selezionare Microsoft SQL Server, Strumenti di configurazione, Gestione configurazione SQL Server, Configurazione di rete SQL Server e quindi selezionare 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, è necessario 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 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 un account di accesso al database di SQL Server.

  • Nome utente e password, necessari solo se si utilizza un account di dominio di Windows o un account di accesso 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, vedere la sezione "Autorizzazioni per il 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, è necessario utilizzare lo strumento di configurazione di Reporting Services o l'utilità rsconfig.

Non tutti i valori vengono impostati per ogni tipo di connessione. Se si configura la connessione usando i valori predefiniti, ovvero si stabilisce 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 l'utilizzo di un account di Windows o un account di accesso al database specifico, è necessario ricordarsi di aggiornare i valori archiviati, se in un secondo momento si modifica l'account di accesso.

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 tramite l'account del servizio del 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, è necessario utilizzare un account di dominio.

  • Un accesso a SQL Server.

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.

Se l'istanza del motore di database è configurata per l'autenticazione di Windows e si trova nello stesso dominio o in un dominio attendibile con il computer server di report, è possibile configurare la connessione in modo da usare l'account del servizio o 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 un account di accesso al database di SQL Server. In questo caso, assicurarsi di crittografare la connessione.

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. È importante ricordare, inoltre, che Istanza gestita non può ospitare l'istanza del server di report.

Utilizzo di account di servizio e sicurezza integrata

È 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à, ad esempio passando da un account predefinito a un account di dominio, 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 della configurazione del server di report).

Se si configura la connessione di database per l'utilizzo dell'account del servizio, l'account dovrà disporre di autorizzazione di rete se il database del server di report si trova in un computer remoto. 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.

Utilizzare un account utente di dominio

È 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.

Utilizzare l'accesso a SQL Server

È possibile specificare un singolo 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 utilizza un account 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:

  • Ruolipublic e RSExecRole per il database ReportServer .

  • RuoloRSExecRole per i database master, msdbe ReportServerTempDB .

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, è necessario aggiornare l'account di accesso di SQL Server per il nuovo account. È possibile creare file di script nello strumento di configurazione di Reporting Services per aggiornare l'account 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. È inoltre 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 (Gestione della configurazione del server di report).

Altre domande? Visitare il forum su Reporting Services.