摘要:Reporting Service Form驗證相關設定
- 需實作Microsoft.ReportingServices.Interfaces的IAuthenticationExtension、 IAuthorizationExtension。
- 將實作完成的DLL拷貝到<install>\ReportServer\bin及<install>\ReportManager\bin目錄。
- 修改<install>\ReportServer 目錄的RSReportServer.config:
- <Authentication>
<AuthenticationTypes>
<Custom/>
</AuthenticationTypes>
<EnableAuthPersistence>true</EnableAuthPersistence>
</Authentication>
- <Authentication>
- 修改 RSReportServer.config 檔:
<Security> <Extension Name="Forms" Type="{授權TypeName}" > <Configuration> <AdminConfiguration> <UserName>username</UserName> </AdminConfiguration> </Configuration> </Extension> </Security> <Authentication> <Extension Name="Forms" Type="{驗證TypeName}" /> </Authentication>
- 設定Login的頁面:
<UI> <CustomAuthenticationUI> <loginUrl>{路徑}</loginUrl> <UseSSL>True</UseSSL> </CustomAuthenticationUI> <ReportServerUrl>http://<server>/ReportServer</ReportServerUrl> </UI>
- 修改 <install>\ReportServer 目錄中的 RSSrvPolicy.config 檔:
- 加入
<CodeGroup class="UnionCodeGroup" version="1" Name="SecurityExtensionCodeGroup" Description="Code group for the sample security extension" PermissionSetName="FullTrust"> <IMembershipCondition class="UrlMembershipCondition" version="1" Url="{DLL路徑}" /> </CodeGroup>
- 加入
- 修改<install>\ReportManager 目錄中的 RSMgrPolicy.config 檔:
- 尋找Zone為MyComputer的CodeGroup,將將 PermissionSetName 屬性由 Execution 變更為 FullTrust。
- 修改<install>\ReportManager 目錄的 Web.config 檔:
- 將impersonate設為false。