Symptom: reports work from the server. They do not work from client machines. "An error has occurred during report processing. (rsProcessingAborted). Cannot create a connection to data source 'MyData'. (rsErrorOpeningConnection). For more information about this error navigate to the report server on the local server machine, or enable remote errors."
Step 1: Set the server as trusted for delegation
-
Active Directory Users and Computers
-
Right-click SSRS Server, Properties
-
Delegation tab
-
(o) Trust this computer for delegation to any service (Kerberos only)
Step 2: Enable the service account to impersonate
-
Check the service account
-
Microsoft SQL Server 2005 > Configuration Tools > Reporting Services Configuration
-
Windows Service Identity
-
Web Service Identity
-
SSRS is generally running under Network Service (NT Authority\NetworkService)
-
Set the permissions
-
Administrative Tools > Local Security Policy
-
Add Network Service to: Act as part of the operating system; Impersonate a client after authentication
Step 3: Add the service principal name (SPN) for web services
-
Install Support Tools
-
List the active SPN
-
CD C:\Program Files\Support Tools
-
Setspn -L SSRSServer
-
If HTTP SPNs do not exist, add them.
-
Setspn -A HTTP/SSRSServer SSRSServer
-
Setspn -A HTTP/ssrsserver.mydomain.com SSRSServer
Step 4: Add the service principal name (SPN) for databases
-
Check the service account
-
Check to see what service is running "SQL Server (Instance)"
-
Microsoft SQL Server 2005 > Configuration Tools > SQL Server Configuration Manager
-
SQL Server 2005 Network Configuration
-
Protocols for Instance: TCP/IP
-
Scroll to the bottom, IPALL
-
TCP Dynamic Ports: 3418
-
setspn -L DOMAIN\serviceaccount
-
If MSSQL SPNs do not exist, add them
-
setspn -A MSSQLsvc/SSRSServer:port DOMAIN\serviceaccount
-
setspn -A MSSQLsvc/ssrsserver.mydomain.com DOMAIN\serviceaccount
Step 5: Modify the Data Sources
-
http://ssrsserver.mydomain.com/Reports
-
Data Sources
-
Edit the data source
-
Connection string: Data Source=ssrsserver\instance;Initial Catalog=MyDBname;Integrated Security=SSPI
-
(o) Windows integrated security
From the desktop, open SQL Server Management Studio. Create a new connection
-
Server type: Reporting Services
-
Server name: http://ssrsserver.mydomain.com/ReportServer
-
Authentication: Windows Authentication
-
Click Connect and it will now open up reporting services.