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).
- Open Reporting Services Configuration Manager:
- Set your service account to Network Service:
- Set your web service URL to reportserver (this is to match Azure’s url):
- Choose your database (Change Database button); Network Service should be
selected for the credentials:
- Set your report manager URL to reportmanager:
- Change your execution account to an account that’s in the Administrators
group:
- Apply your changes and exit.
- Run Internet Explorer as an administrator, then go to
http://MACHINE_NAME/reportmanager:
- 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:
- Navigate to Home (top left link).
- Choose Folder Settings from the tool bar.
- Add a new role assignment for NT AUTHORITY\NETWORK SERVICE, selecting all
roles. Additionally, update the Administrators group to have all roles:
- Close IE.
- Additional things to check:
- In IIS: your app pools (default and other user-defined) are running as
Network Service:
- In SSMS: the NT AUTHORITY\NETWORK SERVICE user has access to your web
applications’ databases as well as the reporting databases:
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.