웹 서비스 인증Web Service Authentication

Windows 인증 또는 기본 인증을 사용하여 보고서 서버 웹 서비스에 대한 호출을 인증할 수 있습니다.You can use either Windows Authentication or Basic authentication to authenticate the calls made to the Report Server Web service. 보고서 서버에 SOAP 요청을 하는 클라이언트는 지원되는 인증 프로토콜 중 하나의 클라이언트 부분을 구현해야 합니다.Any client that makes SOAP requests to the report server must implement the client portion of one of the supported authentication protocols. 사용 하는 경우는 MicrosoftMicrosoft .NET Framework.NET Framework, 인증을 구현 하는 관리 코드 HTTP 클래스를 사용할 수 있습니다.If you are using the MicrosoftMicrosoft .NET Framework.NET Framework, you can use the managed code HTTP classes to implement authentication. 이러한 API를 사용하면 SOAP 요청과 함께 인증 정보를 쉽게 보낼 수 있습니다.Using these APIs makes it easy to send authentication information along with the SOAP requests.

보고서 서버 웹 서비스에 호출하기 전에 적절한 자격 증명이 없는 경우 호출이 실패합니다.If you do not have appropriate credentials before you make a call to the Report Server Web service, the call fails. 실행 시 자격 전달할 수 있습니다는 웹 서비스를 설정 하 여는 자격 증명 해당 메서드를 호출 하기 전에 웹 서비스를 나타내는 클라이언트 개체의 속성입니다.At run time, you can pass credentials to the Web service by setting the Credentials property of the client-side object that represents the Web service before you call its methods.

다음 섹션에는 .NET Framework.NET Framework를 사용하여 자격 증명을 보내는 예제 코드가 포함되어 있습니다.The following sections contain example code that sends credentials using the .NET Framework.NET Framework.

Windows 인증Windows Authentication

다음 코드는 Windows 자격 증명을 웹 서비스에 전달합니다.The following code passes Windows credentials to the Web service.

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

기본 인증Basic Authentication

다음 코드는 기본 자격 증명을 웹 서비스에 전달합니다.The following code passes Basic credentials to the Web service.

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");  

보고서 서버 웹 서비스의 메서드를 호출하기 전에 먼저 자격 증명을 설정해야 합니다.The credentials must be set before you call any of the methods of the Report Server Web service. 오류 코드는 HTTP 401 오류를 수신 하는 자격 증명을 설정 하지 않은 경우: 액세스가 거부 되었습니다.If you do not set the credentials, you receive the error code an HTTP 401 Error: Access Denied. 을 사용 하지만 자격 증명을 설정한 후 필요가 없습니다는 동일한 서비스 변수를 사용 하 여 계속으로 다시 설정 하기 전에 서비스를 인증 해야 합니다 (예: rs).You must authenticate the service before you use it, but after you have set the credentials, you do not need to set them again as long as you continue to use the same service variable (such as rs).

사용자 지정 인증Custom Authentication

Reporting ServicesReporting Services에는 개발자가 보안 확장 프로그램이라고 하는 사용자 지정 인증 확장 프로그램을 디자인하고 개발할 수 있도록 프로그래밍 API가 포함되어 있습니다. includes a programming API that provides developers with the opportunity to design and develop custom authentication extensions, known as security extensions. 자세한 내용은 Implementing a Security Extension을 참조하세요.For more information, see Implementing a Security Extension.

관련 항목:See Also

웹 서비스와.NET Framework를 사용 하 여 응용 프로그램 빌드 Building Applications Using the Web Service and the .NET Framework
보고서 서버 웹 서비스Report Server Web Service