2016-11-02 3 views
1

ReportingService2010 웹 서비스 끝점을 사용하여 보고서를 검색하고 다운로드하는 SSRS에 연결하는 ASP.NET MVC 프로젝트가 있습니다.MVC 응용 프로그램에서 SSRS 인증

연결 비주얼 스튜디오는 가상 디렉터리에 게시 또는 예상대로 작동하지 않습니다 domain\usernameNetworkCredential 사용 관리자 권한

실행 로컬로 개발할 때 CredentialCache.DefaultCredentials를 사용하여 잘 작동합니다. SSRS에 Windows 시스템 사용자를 시스템 관리자로 추가했습니다.

관리자 권한으로 Visual Studio에서 로컬로 실행할 때만 작동하는 현재 구문.

ReportingService2010 service = new ReportingService2010(); 
service.Credentials = CredentialCache.DefaultCredentials; 
CatalogItem[] items = service.ListChildren(reportsFolderPath, true); 

있는 A 단지 만 사용자를 추가 할 수 없습니다 NetworkCredential

ReportingService2010 service = new ReportingService2010(); 
var credentials = new NetworkCredential("insharp", "abc123", "insharp-lenovo"); 
service.Credentials = credentials; 

답변

0

domain\username 암호를 구성하는 방법 (사이트 설정의 예 insharp - 레노버 \의 insharp이 거기에 해당 사용자를 줄 필요가 "브라우저"권한, 그리고 아마도 좀 더 - 테스트를 위해 사용자에게 모든 권한을 부여한 다음 단계별로 제거하십시오)

하지만 SSRS 웹 서비스를 호출하는 대신 ReportViewer 귀하의 응용 프로그램에서 제어?
어쨌든 응용 프로그램에 대해 SSRS를 구성 할 사람이 아무도 없으므로 실패에 대비하여 설정하지 마십시오. 구성을 피할 수 있으면 그렇게해야합니다. 또한 고객 X에 설치된 ReportServer와는 독립적입니다. 이는 좋은 일입니다.
또한 설치된 SSRS 버전을 사용하고 싶지 않을 수도 있습니다.

https://github.com/ststeiger/ReportViewerWrapper

이것은 당신이해야합니다 것입니다 :

당신은 여기에 완벽한 예를 찾을 수 있습니다
당신은 (최신 버전 SSRS2016 - 미리보기의 ReportViewer입니다) 보고서를 수출하는 데 사용할 수 있습니다 한 보고서 :
https://github.com/ststeiger/ReportViewerWrapper/blob/master/Embedded2016/Umzugsmitteilung.cs

편집 :
는 만 사용자를 추가 내가 N 여기에서 사이트 설정 : Site Settings

지금 당신은 폴더 설정 탭

Folder Settings

의 사용자 권한을 부여 할 필요가 그런 다음 "새 역할 할당"을 클릭, 또는라고 어떤 영어로.

Folder Permissions

+0

SSRS에 이미 사용자가 추가되었습니다. 그러나'브라우저'권한은 없으며 시스템 관리자와 시스템 사용자 만 있습니다. 최종 사용자는 보고서의 필수 매개 변수를 채우고 엑셀 형식으로 보고서를 다운로드하기 만하면되므로 웹 서비스를 사용해야합니다. – chanafdo

+0

@chanafdo : 충분하지 않습니다 - 내가 쓴 것처럼 사용자는 여전히 폴더 설정에 대한 사용 권한이 필요합니다. 또한 응용 프로그램에서 필터를 수행 한 다음 ReportViewer를 호출 할 수 있습니다. –

0

은 (당신이> 보안을 직접 링크를 통해 도달하거나 관리 할 수 ​​있습니다) 그것을 위해 당신의 reportsFolderPath SSRS의 경로 및 개방형 보안 설정을 찾습니다. 보안 탭에 사용 권한이있는 사용자 목록이 표시되며 목록 폴더 내용에 대한 액세스 권한을 부여하려면 여기에 사용자 이름이 있어야합니다. 사용자가 목록에있는 경우 편집을 클릭하여 모든 확인란이 설정되어 있는지 확인하십시오. 사용자 이름이 없으면 새 사용자 이름을 추가하고 모든 확인란을 선택하십시오.

관련 문제