Specificare le credenziali e le informazioni sulla connessione per le origini dati del report

Un server di report utilizza credenziali per connettersi a origini dei dati esterne che forniscono contenuto ai report o informazioni sui destinatari alle sottoscrizioni guidate dai dati. È possibile specificare credenziali che utilizzano l'autenticazione di Windows, l'autenticazione del database, l'autenticazione personalizzata o che non utilizzano alcuna autenticazione. Quando il server di report invia una richiesta di connessione in rete, rappresenta un account utente o l'account di esecuzione automatica. Per altre informazioni sul contesto di protezione in cui viene eseguita una richiesta di connessione, vedere Configurazione dell'origine dei dati e connessioni di rete in questo articolo.

Nota

Un server di report utilizza le credenziali anche per autenticare gli utenti che vi accedono. Le informazioni relative all'autenticazione di utenti per l'accesso a un server di report sono disponibili in un altro argomento.

La connessione a un'origine dei dati esterna viene definita quando si crea il report. Può essere gestita separatamente dopo la pubblicazione del report. È possibile specificare una stringa di connessione statica oppure un'espressione che consente agli utenti di selezionare un'origine dei dati da un elenco dinamico. Per altre informazioni su come specificare un tipo di origine dati e una stringa di connessione, vedere Creare stringhe di connessione dati - Generatore report e SSRS.

Come Generatore di report usa le credenziali

In Generatore di report, un server di report spesso utilizza le credenziali quando si effettua la connessione. Il server di report utilizza le credenziali anche per le attività correlate ai dati, ad esempio la creazione di un'origine dati incorporata, l'esecuzione di una query sul set di dati o l'anteprima di un report. Le credenziali non vengono archiviate nel report. Il server di report e il client locale gestiscono le credenziali separatamente. Nell'elenco seguente vengono descritti i tipi di credenziali che potrebbe essere necessario fornire, dove il server di report li ha archiviati e li utilizza:

  • Le credenziali del server di report immesse nella finestra di dialogo Registrazione a Reporting Services.

    Quando si salva, si pubblica su o si passa al server di report o a un sito di SharePoint, potrebbe essere necessario immettere le proprie credenziali. Le credenziali immesse verranno usate fino alla fine della sessione di Generatore report. Se si sceglie di salvare le credenziali, il server di report o il sito SharePoint le memorizzano in modo sicuro con le impostazioni utente nel computer. Nelle sessioni di Generatore report successive, le credenziali salvate vengono usate per connettersi allo stesso server di report o sito di SharePoint. L'amministratore del server di report o di SharePoint specifica quale tipo di credenziali usare.

  • Le credenziali dell'origine dati immesse nella Finestra di dialogo Proprietà origine dati per un'origine dati incorporata.

    Queste credenziali vengono usate dal stabilire una connessione dati all'origine dati esterna. Per alcuni tipi di origini dati, il server di report può memorizzare queste credenziali in modo sicuro. Queste credenziali consentono ad altri utenti di eseguire il report senza fornire credenziali per la connessione dati sottostante.

  • Le credenziali dell'origine dati immesse nella finestra di dialogo Immetti credenziali origine dati quando si esegue una query del set di dati, si aggiornano i campi del set di dati o si visualizza in anteprima il report.

    Il server di report utilizza queste credenziali per stabilire una connessione dati da Generatore di report verso l'origine dati esterna o per visualizzare in anteprima un report configurato per la richiesta di credenziali. Le credenziali che si immettono in questa finestra di dialogo non sono archiviate nel server di report e non sono disponibili per l'utilizzo da parte di altri utenti. Generatore di report memorizza nella cache le credenziali durante la sessione di modifica del report in modo che non sia necessario immetterle ogni volta che si esegue la query o si visualizza in anteprima il report.

    Per le origini dati condivise, usare l'opzione Salva password per salvare in locale le credenziali con le impostazioni utente nel computer. Generatore report usa le credenziali salvate ogni volta che viene stabilita una connessione all'origine dati esterna corrispondente.

Per altre informazioni, vedere Anteprima dei report in Generatore du report.

Utilizzo di fonti di dati remote

Se il report recupera dati da un server di database remoto, verificare:

  • Le credenziali fornite al server di database devono essere valide. Se si utilizzano le credenziali utente di Windows, verificare che l'utente disponga delle autorizzazioni per il server e il database.

  • Le porte utilizzate dal server di database devono essere aperte. È necessario aprire le porte 1433 e 1434 sul computer esterno se:

    • Si accede a database relazionali di SQL Server in computer esterni.
    • Il database del server di report si trova in un'istanza esterna di SQL Server.

Nota

Assicurarsi di riavviare il server dopo avere aperto porte. Per altre informazioni, vedere Configurazione di Windows Firewall per l'accesso al Motore di database.

  • Le connessioni remote sono abilitate. Se si accede ai database relazionali SQL Server in computer esterni, per verificare che le connessioni remote sul Transmission Control Protocol TCP siano abilitate è possibile utilizzare lo strumento Gestione configurazione SQL Server.

Specificare le credenziali per la connessione a fonti di dati remote

Le fonti dei dati che forniscono contenuto ai report si trovano spesso in server remoti. Per recuperare dati per un report, il server di report deve connettersi al server tramite un set di credenziali fornite in anticipo o ottenute in fase di esecuzione. Quando si configura un'origine dei dati, è possibile specificare le credenziali nei modi seguenti:

  • Richiedere all'utente le credenziali.
  • Archiviare le credenziali.
  • Utilizzare la sicurezza integrata di Windows.
  • Utilizzare l'impostazione Nessuna credenziale.

I tipi di connessione supportati variano in base al tipo di ambiente di rete. Se, ad esempio, è abilitato il protocollo Kerberos versione 5 è possibile utilizzare le caratteristiche di delega e rappresentazione disponibili con l'autenticazione di Windows per supportare connessioni tra più server. Se la rete non supporta queste caratteristiche di sicurezza, è necessario utilizzare soluzioni che tengano in considerazione i vincoli di connessione. Se delega e rappresentazione non sono attivate, le credenziali di Windows possono essere inviate attraverso una connessione del computer prima che scadano. La connessione utente da un computer client a un computer del server di report viene considerata la prima connessione. Se l'utente apre un report che recupera i dati da un server remoto, l’accesso viene conteggiato come seconda connessione. La connessione non riesce se si è specificato di usare la sicurezza integrata quando la delega non è abilitata.

Connessioni multiple

Se sono richieste più connessioni per completare un round trip dal computer client a un'origine dei dati del report esterna, scegliere tra le strategie seguenti per consentire le connessioni.

  • Attivare le caratteristiche di rappresentazione e di delega nel dominio in modo che il server di report possa delegare le credenziali ad altri computer senza alcuna limitazione.
  • Utilizzare credenziali archiviate o credenziali fornite dall'utente per l'esecuzione di query nelle origini dei dati esterne. Le credenziali possono essere un account di dominio di Windows o un account di ingresso al database.

Credenziali fornite dall'utente

Quando si configura una connessione dell'origine dati del report per utilizzare le credenziali su richiesta, ogni utente che accede al report deve immettere un nome utente e una password per recuperare i dati. Questo approccio è consigliato per i report contenenti dati riservati. Le credenziali su richiesta possono essere utilizzate solo su report eseguiti su richiesta. Le credenziali fornite dall'utente possono essere un account di dominio di Windows o un account di ingresso al database. Per usare l'autenticazione di Windows, è necessario selezionare Usa come credenziali di Windows per la connessione all'origine dei dati. In caso contrario, il server di report passa le credenziali al server di database per l'autenticazione utente. Se il server di database non è in grado di autenticare le credenziali fornite dall'utente, la connessione non viene stabilita.

Sicurezza integrata di Windows

Quando si usa l'opzione Sicurezza integrata di Windows , il server di report passa il token di sicurezza dell'utente che accede al report al server che ospita l'origine dati esterna. In questo caso, all'utente non viene richiesto di digitare un nome utente o una password. Questo approccio è consigliato se le caratteristiche di rappresentazione e delega sono attivate. In caso contrario, è consigliabile utilizzare questo approccio solo se tutti i server cui si desidera accedere si trovano nello stesso computer.

Credenziali archiviate.

È possibile archiviare le credenziali utilizzate per accedere a un'origine dei dati esterna. Le credenziali vengono archiviate con la crittografia reversibile nel database del server di report. È possibile specificare un solo set di credenziali archiviate per ogni origine dei dati utilizzata in un report. Le credenziali specificate recuperano gli stessi dati per i diversi utenti che eseguono il report.

L'utilizzo di credenziali archiviate è consigliabile come parte di una strategia per l'accesso a server di database remoti. Le credenziali archiviate sono necessarie se si desidera supportare le sottoscrizioni oppure impostare una pianificazione per la generazione della cronologia dei report o per gli aggiornamenti degli snapshot dei report. Un report eseguito come processo in background viene eseguito automaticamente dal server di report. Poiché non è impostato alcun contesto utente, per connettersi a un'origine dei dati il server di report deve recuperare le informazioni sulle credenziali dal database del server di report.

La password e il nome utente specificati possono essere credenziali di Windows o un account di ingresso al database. Se si specificano le credenziali di Windows, il server di report le passa a Windows per l'autenticazione successiva. In caso contrario, le credenziali vengono passate al server di database per l'autenticazione.

Concessione delle autorizzazioni "Consenti accesso locale" agli account utente di dominio

Se si utilizzano credenziali archiviate per connettersi a un'origine dati esterna, l'account utente di dominio di Windows deve disporre dell'autorizzazione per la registrazione locale. Questa autorizzazione consente al server di report di rappresentare l'utente sul server di report stesso e di inviare la richiesta all'origine dati esterna in qualità dell'utente rappresentato.

Per concedere quest’autorizzazione:

  1. Nel computer del server di report, in Strumenti di amministrazioneaprire Criteri di sicurezza locali.

  2. Da Impostazioni di protezione, espandere Criteri locali, quindi fare clic su Assegnazione diritti utente.

  3. Nel riquadro dei dettagli fare clic con il pulsante destro del mouse su Consenti accesso locale e quindi scegliere Proprietà.

  4. Selezionare Aggiungi utente o gruppo.

  5. Selezionare Percorsi, specificare un dominio o un altro percorso in cui eseguire la ricerca e quindi selezionare OK.

  6. Immettere l'account di Windows per il quale si desidera consentire la registrazione interattiva e poi selezionare OK.

  7. Nella finestra di dialogo Proprietà Consenti accesso locale selezionare OK.

  8. Verificare che all'account selezionato non siano assegnate anche autorizzazioni di negazione:

    1. Fare clic con il pulsante destro del mouse su Nega accesso locale e quindi scegliere Proprietà.

    2. Se l'account è incluso nell'elenco, selezionarlo e quindi fare clic su Rimuovi.

È inoltre possibile utilizzare le credenziali per rappresentare l'identità di un altro utente. Per i database di SQL Server, le opzioni di rappresentazione utilizzano la funzione SETUSER.

Importante

Non utilizzare la rappresentazione per i report che supportano le sottoscrizioni o che utilizzano pianificazioni per generare la cronologia dei report o aggiornare gli snapshot dell'esecuzione dei report.

Nessuna credenziale

È possibile configurare una connessione a un'origine dei dati in modo che non utilizzi alcuna credenziale. Microsoft consiglia di utilizzare sempre le credenziali per accedere a un'origine dati; evitare di non utilizzare le credenziali. Tuttavia, è possibile scegliere di eseguire un report senza credenziali nei casi seguenti:

  • Per l'origine dei dati remota non sono necessarie credenziali.
  • Le credenziali vengono passate nella stringa di connessione, opzione consigliata solo per connessioni protette.
  • Il report è un sottoreport che utilizza le credenziali del report padre.

In queste situazioni il server di report si connette a un'origine dei dati remota tramite l'account di esecuzione automatica che è necessario definire a priori. Poiché il server di report non si connette a un server remoto tramite le relative credenziali del servizio, è necessario specificare un account che il server di report può utilizzare per eseguire la connessione. Per altre informazioni sulla creazione di questo account, vedere Configurare l'account di esecuzione automatica (Gestione configurazione del server di report).

Altri metodi

  • Nome utente e password di registrazione: quando si seleziona Usa il nome utente e la password seguenti, è necessario specificare un nome utente e una password per accedere all'origine dati. Per un database di SQL Server, le credenziali possono essere relative a un account di ingresso al database. Le credenziali vengono passate all'origine dati per l'autenticazione.
  • Impostazione programmatica delle credenziali: è possibile impostare le credenziali tramite codice per controllare l'accesso ai report e al server di report. Per altre informazioni, vedere Origini dati e metodi di connessione.

Configurazione dell'origine dei dati e connessioni di rete

Nella tabella seguente viene illustrato come vengono eseguite le connessioni per combinazioni specifiche di tipi di credenziali ed estensioni per l'elaborazione dati. Se si usa un'estensione per l'elaborazione dati personalizzata, si veda Specificare le connessioni per le estensioni per l'elaborazione dati personalizzate.

Type Contesto per la connessione di rete Tipi di origine dei dati

(SQL Server, Oracle, ODBC, OLE DB, Analysis Services, XML, SAP NetWeaver BI, Hyperion Essbase)
sicurezza integrata Rappresentare l'utente corrente. Per tutti i tipi di origine dei dati, la connessione viene eseguita tramite l'account utente corrente.
Credenziali di Windows Rappresentare l'utente specificato. Per SQL Server, Oracle, ODBC e OLE DB la connessione viene eseguita tramite l'account utente rappresentato.
Credenziali di database Rappresenta l'account di esecuzione automatica o l'account del servizio.

(Reporting Services rimuove le autorizzazioni di amministratore quando la richiesta di connessione viene inviata tramite l'identità del servizio).
Per SQL Server, Oracle, ODBC e OLE DB:

Il nome utente e la password vengono accodati alla stringa di connessione.

Per Analysis Services:

La connessione ha esito positivo se viene utilizzato il protocollo TCP/IP, in caso contrario ha esito negativo.

Per XML:

La connessione sul server di report ha esito negativo se vengono utilizzate le credenziali del database.
None Rappresenta l'account di esecuzione automatica. Per SQL Server, Oracle, ODBC e OLE DB:

Vengono utilizzate le credenziali definite nella stringa di connessione. La connessione ha esito negativo sul server di report se l'account di esecuzione automatica non è definito.

Per Analysis Services:

La connessione ha sempre esito negativo se non vengono specificate credenziali, anche se l'account di esecuzione automatica è stato definito.

Per XML:

La connessione viene eseguita come utente anonimo se l'account di esecuzione automatica è definito; in caso contrario, la connessione ha esito negativo.