About URL Reservations and Registration (SSRS Configuration Manager)
Updated: May 18, 2016
Applies To: SQL Server 2016
URLs for Reporting Services applications are defined as URL reservations in HTTP.SYS. A URL reservation defines the syntax of a URL endpoint to a Web application. URL reservations are defined for both the Report Server Web service and Report Manager when you configure the applications on the report server. URL reservations are created for you automatically when configure URLs through Setup or the Reporting Services Configuration tool:
Setup will create URL reservations using default values. If Setup installs the default configuration, it will reserve two URLs; one of the Report Server Web service and another for Report Manager. You can use the Reporting Services Configuration tool to add more URLs or modify the default URLs that Setup creates.
The Reporting Services Configuration tool will create a URL reservation based on the URL you specify in the Web Service URL or Web Portal URL pages in the tool.
Both Setup and the tool will also assign permissions on the URL to the Report Server service, check for duplicate instances, and add the URL reservation to HTTP.SYS. Never create or modify a Reporting Services URL reservation directly using HttpCfg.exe or other tool. If you skip a step or set an invalid value, you will encounter problems that might be difficult to diagnose or fix.
In a Reporting Services installation, you can access the following tools, applications, and items through URLs:
Report Server Web service
Reports that have been published to a report server
Other published URL-addressable items, such as shared data sources, should not be accessed through URLs as stand-alone items. The report server does not display those items in a meaningful format when viewed in a browser window.
A URL reservation defines the URLs that can be used to access a Reporting Services application. Reporting Services will reserve one or more URLs for the Report Server Web service and the web portal in HTTP.SYS, and then register them when the service starts. By appending parameters to the URL, you can open reports through the Web service. Reservations and registration is provided by HTTP.SYS. For more information, see Namespace Reservations, Registration, and Routing on MSDN.
URL reservation is a process by which a URL endpoint to a Web application is created and stored in HTTP.SYS. HTTP.SYS is the common repository of all URL reservations that are defined on a computer and defines a set of common rules that guarantee unique URL reservations.
URL registration occurs when the service starts. The request queue is created and HTTP.SYS begins routing requests to that queue. A URL endpoint must be registered before requests that are directed to that endpoint are added to the queue. When the Report Server service starts, it will register all URLs that it has reserved for all enabled applications. This means that the Web service must be enabled in order for registration to occur. If you set the WebServiceAndHTTPAccessEnabled property to False in the Surface Area Configuration for Reporting Services facet of Policy-Based Management, the URL for the Web service will not register when the service starts.
URLs are unregistered if you stop the service or recycle the Web service or the web portal application domain. If you modify a URL reservation while the service is running, the report server will recycle the application domain immediately so that the old URL can be unregistered and the new one put into use.
A few simple examples illustrate the concept of a URL reservation and how it relates to URL addresses used for Reporting Services applications. A key point to notice is that the URL reservation has different syntax than the the URL you use to access the application:
|URL Reservation in HTTP.SYS||URL||Explanation|
|The URL reservation specifies a wildcard (+) on port 80. This puts into the report server queue any incoming request that specifies a host that resolves to the report server computer on port 80. Notice that with this URL reservation, any number of URLs can be used to access the report server.|
This is the default URL reservation for a Reporting Services report server for most operating systems.
|http://18.104.22.168:80/reportserver||http://22.214.171.124/reportserver||This URL reservation specifies an IP address and is much more restrictive than the wildcard URL reservation. Only URLs that include the IP address can be used to connect to the report server. Given this URL reservation, a request to a report server at http://<computername>/reportserver or http://localhost/reportserver would fail.|
If you install Reporting Services in the default configuration, Setup will reserve URLs for the Report Server Web service and the web portal. You can also accept these default values when you define URL reservations in the Reporting Services Configuration tool. Default URLs will include an instance name if you install SQL Server Express or if you install Reporting Services as a named instance.
URL reservations include a port number. The following operating systems will allow multiple Web applications to share a port:
Windows Server 2012 R2
Windows Server 2012
Windows Server 2008 R2
Windows Server 2008
|Instance Type||Application||Default URL||Actual URL reservation in HTTP.SYS|
|Default instance||Report Server Web service||http://<servername>/reportserver||http://<servername>:80/reportserver|
|Default instance||Web portal||http://<servername>/reportserver||http://<servername>:80/reportserver|
|Named instance||Report Server Web service||http://<servername>/reportserver_<instancename>||http://<servername>:80/reportserver_<instancename>|
|Named instance||Web portal||http://<servername>/reports_<instancename>||http://<servername>:80/reports_<instancename>|
|SQL Server Express||Report Server Web service||http://<servername>/reportserver_SQLExpress||http://<servername>:80/reportserver_SQLExpress|
|SQL Server Express||Web portal||http://<servername>/reports_SQLExpress||http://<servername>:80/reports_SQLExpress|
Reporting Services URL reservations specify the service account of the Report Server service. The account under which the service runs is used for all URLs that are created for the Reporting Services applications that run in the same instance. The service identity of the report server instance is stored in the RSReportServer.config file.
The service account has no default value. However, specifying a service account is required during Setup and is specified in URLReservation in RSReportServer.config even if you install the server in files-only mode. Valid values for the service account include a domain user account, LocalSystem, or NetworkService.
Anonymous access is disabled because the default security is RSWindowsNegotiate. For intranet access, report server URLs use network computer names. If you want to configure Reporting Services for Internet connections, you must use different settings. For more information about authentication, see Authentication with the Report Server in SQL Server Books Online.
You can use http://localhost/reportserver or http://localhost/reports if you specified a strong or weak wildcard for the URL reservation.
The http://localhost URL is interpreted as http://127.0.0.1. If you pegged the URL reservation to a computer name or single IP address, you cannot use localhost unless you create an additional reservation for 127.0.0.1 on the local computer. Similarly, if localhost or 127.0.0.1 is disabled on your computer, you cannot use that URL.
Windows Vista, Windows Server 2008 and later include new security features to minimize the risk of accidentally running programs with elevated privileges. Additional steps are necessary to enable local administration on these operating systems. For more information, see Configure a Native Mode Report Server for Local Administration (SSRS).