Configurare l'autenticazione personalizzata o basata su form nel server di report

Reporting Services offre un'architettura estensibile che consente di inserire moduli di autenticazione basata su form o personalizzata. È possibile implementare un'estensione di autenticazione personalizzata, se i requisiti di distribuzione non includono la sicurezza integrata di Windows o l'autenticazione di base. Lo scenario più comune per l'utilizzo dell'autenticazione personalizzata consiste nel supporto dell'accesso Internet o extranet a un'applicazione Web. La sostituzione dell'estensione di autenticazione di Windows predefinita con un'estensione di autenticazione personalizzata consente un maggiore controllo sulle modalità di concessione dell'accesso al server di report agli utenti esterni.

La distribuzione di un'estensione di autenticazione personalizzata richiede sostanzialmente più passaggi, che includono la copia di un assembly e dei file dell'applicazione, la modifica dei file di configurazione e il test. In questo articolo vengono illustrate solo le impostazioni di autenticazione che l'utente specifica nei file di configurazione.

Nota

La creazione di un'estensione di autenticazione personalizzata richiede codice personalizzato ed esperienza in materia di sicurezza di ASP.NET. Se non si desidera creare un'estensione di autenticazione personalizzata, è possibile utilizzare gruppi e account di Microsoft Entry ID, ma è necessario ridurre notevolmente l'ambito di distribuzione del server di report. Per altre informazioni sull'autenticazione personalizzata, vedere Implementazione di un'estensione di sicurezza.

Inoltre, è possibile usare anche l'autenticazione basata su form o un'estensione di autenticazione personalizzata in un ambiente SQL Server Reporting Services integrato con un prodotto SharePoint A tale scopo, è necessario configurare il sito di SharePoint per l'uso del metodo di autenticazione scelto. Per altre informazioni sulla configurazione dell'autenticazione in SharePoint, vedere Esempi di autenticazione in Microsoft Developer Network (MSDN).

Configurare un server di report per l'utilizzo dell'autenticazione personalizzata

  1. Aprire RSReportServer.config in un editor di testo.

  2. Trovare la sezione <Authentication>.

  3. Copiare la struttura XML seguente:

    <Authentication>
          <AuthenticationTypes>
                 <Custom />
          </AuthenticationTypes>
          <EnableAuthPersistence>true</EnableAuthPersistence>
    </Authentication>
    
  4. Incollare la struttura sulle voci esistenti per la sezione <Authentication>.

    Si noti che non è possibile utilizzare Custom con altri tipi di autenticazione.

  5. Salvare il file.

  6. Aprire il file Web.config per il server di report. Per impostazione predefinita, il file si trova nella stessa cartella del file rsreportserver.config (vedere il file di configurazione RsReportServer.config).

  7. Trovare authentication mode e impostarlo su Forms.

    <authentication mode = "Forms" />
    
  8. Trovare identity impersonate e impostarlo su False.

    <identity impersonate = "false" />  
    
  9. Aggiungere la struttura dell'elemento PassThroughCookies al file di configurazione. Per altre informazioni, vedere Configurare il portale Web per il passaggio di cookie di autenticazione personalizzati

  10. Salvare il file.

  11. Se è stata configurata una distribuzione con scalabilità orizzontale, ripetere tutti i passaggi precedenti per gli altri server di report presenti nella distribuzione.

  12. Riavviare il server di report per cancellare qualsiasi sessione attualmente aperta.

Implementazione di un'estensione di sicurezza
Esempio di sicurezza personalizzata di Reporting Services (GitHub)
Autenticazione con il server di report
File di configurazione RsReportServer.config
Configurare l'autenticazione di base nel server di report
Configurare l'autenticazione di Windows nel server di report
Altre domande? Visitare il forum su Reporting Services