Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 381
  • Last Modified:

RDLC Run from application is asking for Windows log in credentials

I have set the unattended access, but when I attempt to run the report remotely I am getting prompted for the Windows log in.   What have I missed?
0
rcowen00
Asked:
rcowen00
  • 7
  • 6
2 Solutions
 
Vitor MontalvãoMSSQL Senior EngineerCommented:
From the lack of information I can only guess that you are running with an user without the necessary permissions.
0
 
rcowen00Author Commented:
What details can I give you that would help you to assist me?  Sorry, I have been turned all around with this problem and have no idea what you need.  Thank you.
0
 
Vitor MontalvãoMSSQL Senior EngineerCommented:
Can you post a screenshot?
And how it's configured the connection to the database?
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
rcowen00Author Commented:
The application has a connection string saved in the web.config.  The report uses a shared data source that holds the database connection information.  I call the report from the code behind using this and render it is pdf

 
    Protected Sub btnRun_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnRun.Click

        Response.Redirect("http://xxxxx/ReportServer/Pages/ReportViewer.aspx?%2fPOSReports%2fWeeklyGrossDetail&rs:Command=Render&rs:Format=PDF&Begin=" & txbgn.Text & "&End=" & txend.Text & " ")
    End Sub
   

Open in new window


Up until recently, I was using a report viewer control to view the report in the application to view/print the report.  The report viewer control  used this as the ReportServerUrl="http://localhost:80/reportserver".  Since the report viewer doesn't have all functionality when  used in non IE browsers, we needed a better solution.   When that change was made is when I started being asked for the Windows credentials when running the reports.  Service Accountwebservice-url.PNGReport server databaseExecution Account  

Yesterday I added the following class to push the windows credentials, but I am not sure how to implement, if that is even my problem.

Imports Microsoft.VisualBasic
Imports Microsoft.Reporting.WebForms
Imports System.Net

Public Class ReportServerCredentials

    Implements IReportServerCredentials

    Private _userName As String
    Private _password As String
    Private _domain As String

    Public Sub New(ByVal userName As String, ByVal password As String, ByVal domain As String)
        _userName = userName
        _password = password
        _domain = domain
    End Sub

    Public ReadOnly Property ImpersonationUser() As System.Security.Principal.WindowsIdentity Implements Microsoft.Reporting.WebForms.IReportServerCredentials.ImpersonationUser
        Get
            Return Nothing
        End Get
    End Property

    Public ReadOnly Property NetworkCredentials() As ICredentials Implements Microsoft.Reporting.WebForms.IReportServerCredentials.NetworkCredentials
        Get
            Return New NetworkCredential(_userName, _password, _domain)
        End Get
    End Property

    Public Function GetFormsCredentials(ByRef authCookie As System.Net.Cookie, ByRef userName As String, ByRef password As String, ByRef authority As String) As Boolean Implements Microsoft.Reporting.WebForms.IReportServerCredentials.GetFormsCredentials
        userName = _userName
        password = _password
        authority = _domain
        Return Nothing
    End Function
End Class

Open in new window

0
 
Vitor MontalvãoMSSQL Senior EngineerCommented:
Avoid using Network Service since it has very few privileges. I recommend you to change it to Local System account.
0
 
rcowen00Author Commented:
I changed to Local System and the users are still being asked for windows login for the server.
0
 
Vitor MontalvãoMSSQL Senior EngineerCommented:
The SQL Server is in the same machine of SSRS?
0
 
rcowen00Author Commented:
yes
0
 
Vitor MontalvãoMSSQL Senior EngineerCommented:
Then check if Local System has permission on SQL Server.
Also check Windows Event Log and MSSQL logs for errors.
0
 
rcowen00Author Commented:
If I have the identity impersonate set to true shouldn't the application be running under that identity?  

<identity impersonate="true"  userName="xxxx" password="xxxx"/>
            <httpHandlers>
0
 
Vitor MontalvãoMSSQL Senior EngineerCommented:
Theoretically speaking, yes. But I never used that option so I can't help you with that. Maybe something is missing for you can use the impersonation.
0
 
rcowen00Author Commented:
I received the following from an acquaintance versed in SSRS deployment and he suggested using crystal reports vs SSRS.  

I’m sorry but so far I couldn’t find a solution to this problem after 2 days of research.
 
SSRS2008  is pretty tight with security and to only allow public anonymous access would be to use 2005.
 
The only way I see around this is to mirror the report view much like the  Contribution report and then allow the franchisees to download via pdf.
 
I’ve tried giving access to /everyone as well as nt authority/anonymous logon in both server and report manager but that didn’t work.
 
Given the time constraint mirroring the contribution report would be the best option.
0
 
rcowen00Author Commented:
Issue was never resolved, but I gave the reason for that myself.
0

Featured Post

Fill in the form and get your FREE NFR key NOW!

Veeam is happy to provide a FREE NFR server license to certified engineers, trainers, and bloggers.  It allows for the non‑production use of Veeam Agent for Microsoft Windows. This license is valid for five workstations and two servers.

  • 7
  • 6
Tackle projects and never again get stuck behind a technical roadblock.
Join Now