Apr052013

Configure SQL Server Reporting Services for Local-to-Azure Development

Recently, I was tasked with configuring our development environments for local SSRS reporting and development. This is the basic configuration I used, as well as some configuration for the ReportViewer control to get it communicating properly.

First, a few assumptions:

  • You already have SQL Server, as well as Reporting Services, installed locally.
  • Your SQL Server instance is SQL2012 (or, just substitute your name wherever applicable).
  1. Open Reporting Services Configuration Manager: 01_reportingservicesconfigmanager
  2. Set your service account to Network Service: 02_networkservice
  3. Set your web service URL to reportserver (this is to match Azure’s url): 03_reportserver
  4. Choose your database (Change Database button); Network Service should be selected for the credentials: 04_database
  5. Set your report manager URL to reportmanager: 05_reportmanager
  6. Change your execution account to an account that’s in the Administrators group: 06_execution
  7. Apply your changes and exit.
  8. Run Internet Explorer as an administrator, then go to http://MACHINE_NAME/reportmanager: 09_reportmanager
  9. Go to "Site Settings" from the navigation at the top right, then select the security tab. Add a new role assignment for NT AUTHORITY\NETWORK SERVICE, selecting both options. Additionally, update the Administrators group to have both role assignments: 10_admin
  10. Navigate to Home (top left link).
  11. Choose Folder Settings from the tool bar.
  12. Add a new role assignment for NT AUTHORITY\NETWORK SERVICE, selecting all roles. Additionally, update the Administrators group to have all roles: 13_foldersecurity
  13. Close IE.
  14. Additional things to check:
    • In IIS: your app pools (default and other user-defined) are running as Network Service: 15_iis
    • In SSMS: the NT AUTHORITY\NETWORK SERVICE user has access to your web applications’ databases as well as the reporting databases: 15_ssms

That environment should be perfect for local development and testing of .NET web applications and SSRS development.

P.S. If you're receiving The request failed with HTTP status 401: Unauthorized. errors from the ReportViewer control, these steps helped alleviate that problem for me.