SQL Server - SSRS Report prompting for login credentials

Asked By Kaushik Chandra on 09-Jan-12 08:31 AM

Hi ,

I developed a SSRS report and deployed that report to my staging server.

When I try to access the report it is always prompting for the login details. I noticed that the prompt is for the login information of datasource and not the report server.

My database server is different from the reportserver. Are there any configuration changes that need to be made to avoid the prompt ,as I have already mentioned those details in the datasource.

This is the screen shot 1-9-2025 5-04-45 PM.zip

Can you anyone please help me in this.

Thanks in advance
D Company replied to Kaushik Chandra on 09-Jan-12 09:19 AM
you can go through the below link


Solving the Reporting Services Login issue in the  of SQL Server 2008:

 http://blogs.msdn.com/b/lukaszp/archive/2008/03/26/solving-the-reporting-services-login-issue-in-the-february-ctp-of-sql-server-2008.aspx
Suchit shah replied to Kaushik Chandra on 09-Jan-12 09:21 AM
In case  Windows Integrated authentication to access a Report Server, the credential for the client will be passed to the Report Server. However, the credential from public network won't be able to pass in a site inside a privale network automatically by default. That is why the login dialog prompt while we trying to access the Report Server from anywhere in the world.

We can use one of the workaround to workaround the issue:
 1. Ask the end-uses to type the valid username and password.
 2. Enable Anonymous Access for the Report Server. Please NOTE, this will reduce the security level of the Report Server. In Microsoft SQL Server Reporting Services 2008, we need to implement custom authentication extension to enable anonymous access.


For more information about enabling Anonymous Access, please see:
http://blogs.msdn.com/b/jameswu/archive/2008/07/15/anonymous-access-in-sql-rs-2008.aspx
D Company replied to Kaushik Chandra on 09-Jan-12 09:25 AM
I am assuming the prompt is for the username / password for the domain. Internally you are likely getting through the AD authentication check in your application as you will have permissions to deliver the report (you can test that premise with Firefox or other browser that doesnt handle AD authentication like IE does.

I think you may have setup for basic authorisation to view the report RSReportServer.config rather than web.config is that what you have done? (see this to see example

http://msdn.microsoft.com/en-us/library/cc281309.aspx.

If you are trying to get full anonymous access then you are in for some fun; luckily one of the RS team blogged a way to achieve it; I wouldn't advocate doing it straight onto a production box though.

you can check this blog also

http://blogs.msdn.com/b/jameswu/archive/2008/07/15/anonymous-access-in-sql-rs-2008.aspx

Riley K replied to Kaushik Chandra on 09-Jan-12 11:15 AM


When setting up datasource what type of credentilas have you set ??

Usually there are three ways to set

  • Windows integrated security using the Report Server service account. Because the report server is implemented as a single service, only the account under which the service runs requires database access.

  • A Windows user account. If the report server and the report server database are installed on the same computer, you can use a local account. Otherwise, you must use a domain account.

  • A SQL Server login.

Several other things to consider

To deploy the reports, you need to have specific permissions. the username and password you are giving may not belongs to administrator group. Just give username and password of the administrator of the deployment server. 

Make sure the URL is correct, http://SERVERName/ReportServer. If you give something like http://SERVERName/Reports it doens' say that it's not a valid report server. It keeps prompting for the credentials.


Regards


Jitendra Faye replied to Kaushik Chandra on 09-Jan-12 11:55 AM
The following Code describes how to pass the logon information like Server Name , database Name , User Name and password dynamically to the Crystal Reports from C# applications.Use this code-
using System;
using System.Windows.Forms;
using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;

namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
ReportDocument cryRpt = new ReportDocument();
TableLogOnInfos crtableLogoninfos = new TableLogOnInfos();
TableLogOnInfo crtableLogoninfo = new TableLogOnInfo();
ConnectionInfo crConnectionInfo = new ConnectionInfo();
Tables CrTables ;

cryRpt.Load("PUT CRYSTAL REPORT PATH HERE\CrystalReport1.rpt");

crConnectionInfo.ServerName = "YOUR SERVER NAME";
crConnectionInfo.DatabaseName = "YOUR DATABASE NAME";
crConnectionInfo.UserID = "YOUR DATABASE USERNAME";
crConnectionInfo.Password = "YOUR DATABASE PASSWORD";

CrTables = cryRpt.Database.Tables ;
foreach (CrystalDecisions.CrystalReports.Engine.Table CrTable in CrTables)
{
crtableLogoninfo = CrTable.LogOnInfo;
crtableLogoninfo.ConnectionInfo = crConnectionInfo;
CrTable.ApplyLogOnInfo(crtableLogoninfo);
}

crystalReportViewer1.ReportSource = cryRpt;
crystalReportViewer1.Refresh();
}
}
} Try this code and let me know.
Chintan Vaghela replied to Kaushik Chandra on 10-Jan-12 12:15 AM

Hello,

 

have you checked the properties of the data source once its been deployed to the report server? For comparison, on the report server, I have the following set up for a typical datasource:

- "Name" : name of datasource
- "enable this data source": is checked
- "connection type": MS SQL Server
- "connection string": Data Source= name of SQL server
Catalog = name of database
- "Credentials stored securely in the report server" (radio button):
User name = SQL Username or 'sa'
Password = password for the above

everything else is blank / not filled in / not checked

I don't use windows authentication when setting up the data source, I usually create a SQL Login/user with db_datareader permission on the database. This user is created specifically for running reports on the database. Alternatively, try using 'sa'

:)

 

Hope this is helpful !

Thanks

 

 

 

 

 

kalpana aparnathi replied to Kaushik Chandra on 10-Jan-12 01:16 PM
hi,

http://msdn.microsoft.com/en-us/library/ms160330.aspx
:%20http://blogs.msdn.com/b/lukaszp/archive/2008/03/26/solving-the-reporting-services-login-issue-in-the-february-ctp-of-sql-server-2008.aspx