为什么这个SSRS Windows身份验证不起作用?

时间:2014-11-12 16:46:13

标签: c# asp.net .net sql-server reporting-services

  1. 我有一个SSRS Express 2012,SQL Express 2012 DB和一个ASP.NET 4.5应用程序,都在同一个盒子里。应用程序实际使用
  2.   

    表单身份验证

    。在SSRS中,我向用户提供了管理员权限

      

    NTAUTHORITY / IUSR

    1. 网络应用程序的web.config,SSRS Web服务和SSRS报告管理器都有<authentication mode="Windows" /><identity impersonate="true" />
    2. 服务帐户
    3.   

      本地系统

      1. rsreportserver.config中的身份验证类型为<RSWindowsNegotiate /><RSWindowsKerberos />以及<RSWindowsNTLM />
      2. 在IIS 7中,该网站启用了ASP.NET ImpersonationWindows Authentication,其他所有人都已停用
      3. 数据库使用Windows身份验证。我创建了一个名为
      4. 的登录名
          

        NTAUTHORITY / IUSR

        并且给出Login,使用数据库的权限

        1. 当我从应用程序运行报告时出现错误
        2.   

          尝试连接到报表服务器失败。检查你的   连接信息以及报表服务器是兼容的   版。匿名身份无法执行模拟

          1. ASP.NET中的报表查看器的代码如下

                    public class ReportCredentials : IReportServerCredentials
                    {
            
                    public bool GetFormsCredentials(out Cookie authCookie, out string userName, out string password,
                        out string authority)
                    {
                        authCookie = null;
                        userName = null;
                        password = null;
                        authority = null;
            
                        return false;
                    }
            
                    public WindowsIdentity ImpersonationUser
                    {
                        get { return (WindowsIdentity)HttpContext.Current.User.Identity; }
                    }
            
                    public ICredentials NetworkCredentials
                    {
                        get { return null; }
                    }
            
            
                }
            

0 个答案:

没有答案