Compartilhar via


Autenticação de serviço Web

Você pode usar a Autenticação de Windows ou a autenticação Básica para autenticar as chamadas feitas ao serviço Web Servidor de Relatório. Qualquer cliente que faz solicitações SOAP ao servidor de relatório deve implementar a parte cliente de um dos protocolos de autenticação suportados. Se você estiver usando o Microsoft .NET Framework, poderá usar as classes HTTP de código gerenciado para implementar a autenticação. O uso dessas APIs facilita o envio de informações de autenticação junto comas solicitações SOAP.

Se você não tiver as credenciais apropriados antes de fazer uma chamada ao serviço Web Servidor de Relatório, a chamada falhará. Em tempo de execução, você pode passar credenciais ao serviço Web definindo a propriedade Credentials do objeto do lado cliente que representa o serviço Web antes de chamar seus métodos.

As seções a seguir contêm código de exemplo que envia credenciais usando o .NET Framework.

Autenticação do Windows

O código a seguir transmite credenciais do Windows ao serviço Web.

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

Autenticação Básica

O código a seguir transmite credenciais Básicas ao serviço 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");

As credenciais devem ser definidas antes de você chamar qualquer um dos métodos do serviço Web Servidor de Relatório. Se você não definir as credenciais, receberá o código de erro HTTP 401 Erro: acesso negado. Autentique o serviço antes de usá-lo, mas depois de definir as credenciais, não será preciso defini-las novamente, desde que você continue a usar a mesma variável de serviço (como rs).

Autenticação personalizada

O Reporting Services inclui uma API de programação que oferece aos desenvolvedores a oportunidade de criar e de desenvolver extensões de autenticação personalizadas, conhecido como extensões de segurança. Para obter mais informações, consulte Implementando uma extensão de segurança.