- Title SSRS - 익명인증 - DirectoryBrowsing 권한 제거
- Writer Minwoo, Song Date 2023-05-19/16:32 Read 42
- Att.#1 20230517.7z - 4.03KB[6]
첨부파일. 참조. * SSRS버전에 따른 dll을 모두 올림.
1. ReportServer가 설치된 위치 (e.g., C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\ReportServer\) 아래 bin 폴더에
첨부의 microsoft.samples.reportingservices.anonymoussecurity.dll 파일 복사
2. ReportServer 폴더에 있는 config 파일 3개 복사해서 ReportServer 아래 _config_authentication 폴더 생성 후 붙여넣기 (백업 필요, 인증모드로 되돌리려면 꼭 필요함)
3. 위에서 만든 _config_authentication 폴더를 복사하여 _config_anonymous 폴더도 생성 (파일 3개 포함)
4. _config_anonymous내의 config 파일 3개를 아래와 같이 수정
(첨부의 config 파일은 참고용, ReportServer 마다 ID, DSN, Assembly Version 등이 다르기 때문에 설치 후 셋팅된 파일을 수정해서 사용해야 함)
[rsreportserver.config] 파일 내 아래 3개 부분 수정
<RSWindowsNTLM/>
→ <Custom/>
<Extension Name="Windows" Type="Microsoft.ReportingServices.Authorization.WindowsAuthorization, Microsoft.ReportingServices.Authorization"/>
→ <Extension Name="None" Type="Microsoft.Samples.ReportingServices.AnonymousSecurity.Authorization, Microsoft.Samples.ReportingServices.AnonymousSecurity"/>
<Extension Name="Windows" Type="Microsoft.ReportingServices.Authentication.WindowsAuthentication, Microsoft.ReportingServices.Authorization"/>
→ <Extension Name="None" Type="Microsoft.Samples.ReportingServices.AnonymousSecurity.AuthenticationExtension, Microsoft.Samples.ReportingServices.AnonymousSecurity" />
[rssrvpolicy.config] 파일 내 코드그룹이 나열되어 있는 부분 아래에 다음 내용 추가 (설치 폴더가 다른 경우 dll을 복사한 위치에 맞게 경로 수정 필요)
<CodeGroup class="UnionCodeGroup" version="1" PermissionSetName="FullTrust" Name="Private_assembly" Description="This code group grants custom code full trust.">
<IMembershipCondition class="UrlMembershipCondition" version="1" Url="C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\ReportServer\bin\microsoft.samples.reportingservices.anonymoussecurity.dll" />
</CodeGroup>
[rssrvpolicy.config] 파일 내 아래 2개 부분 수정
<authentication mode="Windows" />
→ <authentication mode="None" />
<identity impersonate="true" />
→ <identity impersonate="false" />
5. Report Server Configuration Manager를 실행 후 서비스를 중단하고 _config_anonymous 폴더 내의 config 파일 3개를 ReportServer 폴더에 덮어쓰기 후 서비스를 다시 시작하면
이제부터 리포트 웹서비스를 익명으로 접근 할 수 있으나 SSRS 웹포탈은 로그인이 안되어 사용 할 수 없는 문제가 있음,
다시 SSRS 웹포탈을 사용하려면 서비스를 중단하고 _config_authentication의 config 파일로 교체 후 서비스 재시작 필요
1. ReportServer가 설치된 위치 (e.g., C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\ReportServer\) 아래 bin 폴더에
첨부의 microsoft.samples.reportingservices.anonymoussecurity.dll 파일 복사
2. ReportServer 폴더에 있는 config 파일 3개 복사해서 ReportServer 아래 _config_authentication 폴더 생성 후 붙여넣기 (백업 필요, 인증모드로 되돌리려면 꼭 필요함)
3. 위에서 만든 _config_authentication 폴더를 복사하여 _config_anonymous 폴더도 생성 (파일 3개 포함)
4. _config_anonymous내의 config 파일 3개를 아래와 같이 수정
(첨부의 config 파일은 참고용, ReportServer 마다 ID, DSN, Assembly Version 등이 다르기 때문에 설치 후 셋팅된 파일을 수정해서 사용해야 함)
[rsreportserver.config] 파일 내 아래 3개 부분 수정
<RSWindowsNTLM/>
→ <Custom/>
<Extension Name="Windows" Type="Microsoft.ReportingServices.Authorization.WindowsAuthorization, Microsoft.ReportingServices.Authorization"/>
→ <Extension Name="None" Type="Microsoft.Samples.ReportingServices.AnonymousSecurity.Authorization, Microsoft.Samples.ReportingServices.AnonymousSecurity"/>
<Extension Name="Windows" Type="Microsoft.ReportingServices.Authentication.WindowsAuthentication, Microsoft.ReportingServices.Authorization"/>
→ <Extension Name="None" Type="Microsoft.Samples.ReportingServices.AnonymousSecurity.AuthenticationExtension, Microsoft.Samples.ReportingServices.AnonymousSecurity" />
[rssrvpolicy.config] 파일 내 코드그룹이 나열되어 있는 부분 아래에 다음 내용 추가 (설치 폴더가 다른 경우 dll을 복사한 위치에 맞게 경로 수정 필요)
<CodeGroup class="UnionCodeGroup" version="1" PermissionSetName="FullTrust" Name="Private_assembly" Description="This code group grants custom code full trust.">
<IMembershipCondition class="UrlMembershipCondition" version="1" Url="C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\ReportServer\bin\microsoft.samples.reportingservices.anonymoussecurity.dll" />
</CodeGroup>
[rssrvpolicy.config] 파일 내 아래 2개 부분 수정
<authentication mode="Windows" />
→ <authentication mode="None" />
<identity impersonate="true" />
→ <identity impersonate="false" />
5. Report Server Configuration Manager를 실행 후 서비스를 중단하고 _config_anonymous 폴더 내의 config 파일 3개를 ReportServer 폴더에 덮어쓰기 후 서비스를 다시 시작하면
이제부터 리포트 웹서비스를 익명으로 접근 할 수 있으나 SSRS 웹포탈은 로그인이 안되어 사용 할 수 없는 문제가 있음,
다시 SSRS 웹포탈을 사용하려면 서비스를 중단하고 _config_authentication의 config 파일로 교체 후 서비스 재시작 필요