Condividi tramite


Autenticazione del servizio Web

Per autenticare le chiamate effettuate al servizio Web ReportServer, è possibile utilizzare l'autenticazione di Windows o l'autenticazione di base. Qualsiasi client che effettua richieste SOAP al server di report deve implementare la parte client di uno dei protocolli di autenticazione supportati. Se si utilizza Microsoft.NET Framework, è possibile utilizzare le classi HTTP di codice gestito per implementare l'autenticazione. L'utilizzo di queste API semplifica l'invio delle informazioni di autenticazione insieme alle richieste SOAP.

Se non si dispone delle credenziali appropriate prima di effettuare una chiamata al servizio Web ReportServer, la chiamata ha esito negativo. In fase di esecuzione è possibile passare le credenziali al servizio Web impostando la proprietà Credentials dell'oggetto sul lato client che rappresenta il servizio Web prima di chiamarne i metodi.

Nelle sezioni seguenti sono inclusi esempi di codice per l'invio delle credenziali utilizzando .NET Framework.

Autenticazione di Windows

Nel codice seguente vengono passate le credenziali di Windows al servizio Web.

Dim rs As New ReportingService()
rs.Credentials = System.Net.CredentialCache.DefaultCredentials
ReportingService rs = new ReportingService();
rs.Credentials = System.Net.CredentialCache.DefaultCredentials;

Autenticazione di base

Nel codice seguente vengono passate le credenziali di base al servizio Web.

Dim rs As New ReportingService()
rs.Credentials = New System.Net.NetworkCredential("username", "password", "domain")
ReportingService service = new ReportingService();
service.Credentials = new System.Net.NetworkCredential("username", "password", "domain");

Le credenziali devono essere impostate prima di chiamare i metodi del servizio Web ReportServer. Se non si impostano le credenziali, viene visualizzato il codice di errore Errore HTTP 401: Accesso negato. È necessario autenticare il servizio prima di utilizzarlo, ma dopo avere impostato le credenziali non è necessario impostarle di nuovo fino a quando si continua a utilizzare la stessa variabile del servizio (ad esempio rs).

Autenticazione personalizzata

Reporting Services include un'API di programmazione che consente agli sviluppatori di progettare e sviluppare estensioni di autenticazione personalizzate, note come estensioni di protezione. Per ulteriori informazioni, vedere Implementazione di un'estensione di protezione.