Deployment connects the WebReports application files to an IIS website, an application pool, an HTTPS address, and the WebReports application database. Complete these settings before starting the site so the application can find its files, use its database, and identify the licensed installation.
This guide is for a new Windows/IIS deployment. For an existing installation, follow Update WebReports to the Latest Version before replacing live files. Return to Installing WebReports on Windows for the complete prerequisite sequence.
What the Deployment Settings Do
| Setting | Purpose |
|---|---|
| IIS site and physical path | Define the website and the folder IIS uses to locate the application files. |
| Application pool | Defines the process settings and identity used to run WebReports. |
| HTTPS binding and certificate | Define the browser address and protect the connection to the site. |
| appsettings.json | Supplies the installation's database, licensing, authentication, and applicable integration settings. |
Before You Begin
- Confirm IIS and the supported ASP.NET Core Hosting Bundle are installed, including the bundle's required restart. See Download and Install the ASP.NET Hosting Bundle.
- Prepare the supported SQL Server or MySQL application database and dedicated application account. Have the connection details available securely.
- Choose the site's DNS name, HTTPS port, application directory, and authentication method. Have the server certificate and private key available through the deployment administrator.
- Have the company and license details supplied by BridgeWorks, plus access to the completed WebReports download.
- Use an account authorized to manage IIS and the application directory. Coordinate any interruption to an existing site with its administrator.
Demo context: Examples use WR-DEMO-SRV, site and pool WebReports, directory C:\inetpub\WebReportsDemo, and https://webreports.demo.example.com. Names, addresses, license values, and account examples are illustrative and do not work as deployment credentials. The IIS images are edited reference illustrations; the Registration image reuses the demo example from the Registration article. They are not evidence of a new server installation. Select any image to view it at full size.
Step 1: Open IIS Manager
On the server, open Server Manager → Tools → Internet Information Services (IIS) Manager. You can also open IIS Manager from Windows Tools. In Connections, expand the server that will host WebReports.
Step 2: Create the WebReports Application Pool
An application pool defines the worker process and identity used to run the application. A dedicated WebReports pool keeps its settings separate from other IIS applications.
- Select Application Pools, then Add Application Pool in the Actions pane or context menu.
- Enter WebReports as the demo pool name, or the approved pool name for your deployment.
- Set .NET CLR version to No Managed Code and leave Managed pipeline mode as Integrated.
- Leave Start application pool immediately selected and choose OK.
No Managed Code refers to the desktop .NET CLR selection in IIS. WebReports uses ASP.NET Core and the runtime supplied by the Hosting Bundle. See Microsoft's IIS hosting guidance.
Edited reference: the WebReports pool uses No Managed Code. This is the selected value, not an open dropdown showing a different current setting. Select the image to view it at full size.
Step 3: Configure the WebReports Website
The website defines where users connect and which physical folder contains the deployed application. Use either a dedicated site or an existing site reserved for WebReports.
Create a Dedicated Site
- Create the intended application directory, for example
C:\inetpub\WebReportsDemo. - In IIS Manager, right-click Sites → Add Website.
- Enter the site name, for example WebReports. Select the WebReports application pool created above.
- Set Physical path to the application directory.
- Configure the initial https binding and certificate using the values in Step 8, then select OK. Do not create a duplicate binding when reviewing Step 8 later.
- If the new site starts, select it and choose Stop while completing file deployment and configuration.
Use an Existing Site
- Under Sites, select the site reserved for WebReports. Default Web Site can be used only when it is the intended site for this deployment.
- Choose Basic Settings. Next to Application pool, select Select and choose the WebReports pool.
- Confirm Physical path points to the intended application directory and save with OK.
- Keep the site stopped while preparing its files and configuration. Do not redirect an unrelated application to the WebReports folder.
Record the actual physical path. All file-copy, configuration, and permission steps below must use that same directory.
Step 4: Configure the Application Pool
- In Application Pools, select the WebReports pool.
- Open Recycling, clear Regular time intervals (in minutes), then select Next → Finish.
- Open that pool's Advanced Settings and apply the settings below. Confirm its Name is WebReports and its .NET CLR Version remains No Managed Code.
| Setting | Value for this procedure | Reason |
|---|---|---|
| Start Mode | AlwaysRunning |
Starts the application pool without waiting for an ordinary on-demand pool start. |
| Idle Time-out (minutes) | 0 |
Disables idle timeout for the pool. |
| Idle Time-out Action | Suspend |
Preserves the documented action; the idle timer is disabled while its timeout is 0. |
These settings reduce ordinary idle shutdown and time-based recycling while WebReports processes work. They do not prevent every restart or guarantee uninterrupted background jobs. A timeout of 0 disables the idle timer, so Suspend is not triggered by that timer while 0 is in effect.
AlwaysRunning starts the pool; verify application initialization and scheduled processing after server or pool restarts. If unattended application startup is required before the first request, review Microsoft's Application Initialization and Idle Timeout guidance with the deployment administrator and BridgeWorks Support.
Edited reference: Name is WebReports and .NET CLR Version is No Managed Code. Apply the settings named in the text; other pictured properties are example values rather than additional requirements. Select the image to view it at full size.
Step 5: Download and Unblock WebReports
Use Download the Latest WebReports Version to obtain the official package. Before extraction, follow Unblock WebReports Files. Extract the prepared ZIP to a staging folder separate from the IIS application directory.
Step 6: Deploy the Application Files
- Locate the extracted application folder containing
appsettings.json,web.config,wwwroot, and the WebReports executable and supporting files. Folder contents can vary by release. - Copy that folder's contents into the site's physical directory, for example
C:\inetpub\WebReportsDemo. Do not copy only the parent WebReportsInstall folder. - Confirm
appsettings.jsonandweb.configare directly in the configured physical directory. Preserve the package's hosting configuration. - Back up
appsettings.jsonbefore editing. Keep configuration backups outside the web-served application directory.
Editing the configuration: Use the file supplied for the release being deployed. The focused examples below show selected properties only. Merge values into the matching existing sections, preserve unrelated settings, and avoid duplicate properties. Do not replace the entire file with any example. Preserve valid configuration syntax, commas, quotes, and value types; represent a backslash inside a JSON string with \\.
Step 7: Configure IIS Authentication
For Windows Authentication, first confirm its IIS role service is installed using Install Internet Information Services (IIS) for WebReports. Then select the WebReports site, open Authentication, enable Windows Authentication, and disable Anonymous Authentication.
Reference for the Windows Authentication branch only. Other WebReports sign-in methods use their own matching IIS configuration. Select the image to view it at full size.
For the built-in Default WebReports sign-in, keep Anonymous Authentication enabled and Windows Authentication disabled in IIS; WebReports handles the user's sign-in. For an external provider, follow that provider's WebReports guide for the matching IIS and application settings. Windows Authentication and Anonymous Authentication must not be changed on unrelated sites. The matching WebReports settings are covered in Step 12. The IIS sign-in method is separate from the SQL or MySQL credentials used by the application database. Apply these settings after copying the package files, because replacing web.config can overwrite authentication settings saved there by IIS. See Microsoft's IIS Windows Authentication guidance.
Step 8: Configure HTTPS
A binding connects a protocol, address, port, and host name to the IIS site. The certificate identifies the site and protects browser traffic.
- Have the administrator install a valid server certificate with its private key and required chain in the appropriate Windows certificate store. It must match the DNS name users will open and be trusted by their browsers. If it is missing from IIS, resolve certificate installation before continuing.
- Select the WebReports site and choose Bindings. Review an existing HTTPS binding from Step 3, or select Add if none exists.
- Set Type to
https, use the approved IP address selection, and set Port to443unless another HTTPS port is configured. - Enter the actual DNS name in Host name, without
https://or a path. Select the matching SSL certificate. - Use Require Server Name Indication when the hosting arrangement requires host-name-based HTTPS sharing. Confirm the address, port, host name, certificate, and SNI choice with the IIS administrator.
- Select OK, then Close. Confirm DNS and the network route allow intended users to reach the configured site.
Edited dedicated-IP example with SNI unchecked. The address, DNS name, and certificate label are nonworking demo values. Use the certificate and SNI configuration appropriate to your site's actual binding. Select the image to view it at full size.
For IIS binding and SNI details, see Microsoft's binding reference.
Remove the HTTP Binding When Appropriate
If this site must accept HTTPS only, first verify its HTTPS binding. In Bindings, select this site's http binding on port 80, select Remove, and confirm. Coordinate any existing HTTP redirect, certificate-renewal, or other dependency before removal. Do not remove another site's binding.
Step 9: Configure the Application Database
Open the deployed appsettings.json in a text editor with permission to save it. This connection is for WebReports' own configuration, users, and scheduling information. Connections to business reporting data are configured separately in Management.
Use the database details recorded during setup:
| Value | Where to obtain it |
|---|---|
| Server / instance / port | The endpoint recorded by the database administrator during SQL Server or MySQL setup. |
| Application database name | The database created or selected for WebReports, visible in the database administration tool. |
| Application account and password | The dedicated account prepared for WebReports; obtain its password through the approved secure process. |
| DatabaseType | Use MSSQL for SQL Server or MYSQL for MySQL, matching the configured connection. |
Microsoft SQL Server
Use the prepared SQL Server instance and set DatabaseType to MSSQL. For setup and where to record the values, see Configuring WebReports SQL Server Using SSMS.
Illustrative partial configuration: Replace the demo server, instance, database, account, and password. Omit the instance suffix if your connection uses a different approved endpoint format.
{
"ConnectionStrings": {
"DefaultConnection": "Server=sql.demo.example.com\\DEMO;Database=WebReportsDemo;User Id=webreports_demo;Password=REPLACE_WITH_DATABASE_PASSWORD;Connect Timeout=60;Encrypt=True;TrustServerCertificate=False"
},
"DatabaseType": "MSSQL",
"EncryptedConnection": false
}SQL certificate settings: This example uses encrypted transport with certificate validation and therefore requires a trusted database-server certificate that matches the connection's server name. The downloaded template includes TrustServerCertificate=Yes; that permits encrypted traffic while bypassing certificate trust validation. Confirm the certificate configuration with the database administrator rather than treating that bypass as a general connection fix. See Microsoft's TrustServerCertificate reference.
MySQL
Use the prepared MySQL server, port, database, and dedicated account, and set DatabaseType to MYSQL. See Install MySQL for WebReports.
{
"ConnectionStrings": {
"DefaultConnection": "server=mysql.demo.example.com;port=3306;user=webreports_demo;password=REPLACE_WITH_DATABASE_PASSWORD;database=WebReportsDemo;connect timeout=60;Pooling=False"
},
"DatabaseType": "MYSQL",
"EncryptedConnection": false
}The MySQL example retains the downloaded template's Pooling=False option. Confirm release-specific requirements before changing it. Both database examples use a 60-second connection timeout, matching the reviewed package; investigate endpoint availability, credentials, and logs before increasing it. Keep only the connection and database type for the selected platform, not duplicate active DefaultConnection properties.
Step 10: Configure License Information
Under Registration, enter the LicenseKey and CompanyID supplied by BridgeWorks for this installation. These are licensing values, not the database account or its password. Contact BridgeWorks Support if they are unavailable.
{
"Registration": {
"LicenseKey": "DEMO-LICENSE-NOT-VALID",
"CompanyID": "1001"
}
}The pictured company ID and nonworking license placeholder are demo information. Replace both with the issued values. Registration contact information and status are reviewed after first launch.
Step 11: Configure WRXValue for VDM Integration
If VDM will connect to this WebReports installation, configure a unique WRXValue and enter the exact same value in the VDM connection profile's WebReports Value field. It is separate from the database password and license key.
{
"WRXValue": "REPLACE_WITH_UNIQUE_WRX_VALUE"
}See Configuring WRXValue for VDM and WebReports for the profile and Test Connection steps. Do not copy this placeholder as the installation's value.
Step 12: Configure WebReports Authentication
Set the application authentication method to match the choice made for IIS in Step 7. For Windows Authentication, merge the relevant properties into the existing sections:
{
"Authentication": {
"Method": "Windows"
},
"ActiveDirectory": {
"Domain": "DEMO",
"Admin": "DEMO\\demo.admin"
}
}Replace DEMO and DEMO\demo.admin with the domain and administrator account approved for the deployment. Preserve other Authentication properties. For an external identity provider, use its dedicated guide, such as Microsoft Entra ID OIDC Configuration, including its required IIS settings.
For a VDM API-key connection, verify APISettings.AllowAPIKeysForVDM. The reviewed package uses the string value shown below:
{
"APISettings": {
"AllowAPIKeysForVDM": "true"
}
}Keep that setting at its actual location under APISettings and preserve its value type. It does not create a VDM API key or configure the connection profile by itself.
Step 13: Configure Stored Connection-String Encryption
WebReports can store an encrypted database connection string. This protects the stored connection value; it is a separate setting from SQL transport encryption such as Encrypt=True.
- Follow Encrypting Your WebReports Connection String in VDM to generate the encrypted value using the installation's company ID, license key, and database connection string.
- Place the complete generated value in
ConnectionStrings.DefaultConnection. - Set
EncryptedConnectiontotrue. When DefaultConnection contains the ordinary connection text instead, keep this settingfalse.
{
"ConnectionStrings": {
"DefaultConnection": "REPLACE_WITH_VDM_GENERATED_ENCRYPTED_VALUE"
},
"EncryptedConnection": true
}Use the actual generated encrypted value, not the placeholder above. Save the completed file and retain a protected backup outside the website directory.
Step 14: Set Folder Access and Launch WebReports
- Before first launch, complete Configure IIS Folder Permissions for WebReports for the actual physical directory. Confirm the pool identity and required folder scope with the administrator. It needs access to application files and the locations used for logs and uploaded branding.
- Review the saved configuration and confirm that the site's physical path and assigned pool are correct.
- In IIS Manager, start the WebReports application pool and website. If applying configuration to an already-running deployment, coordinate a restart of this pool and site.
- Open the approved HTTPS URL in a supported browser, or select the site and use its HTTPS link under Browse Website. Use the DNS name matching the certificate.
- Verify WebReports loads. Review any certificate, startup, or connection error before proceeding.
Edited reference: select the intended WebReports site, then use its HTTPS Browse Website link. The demo hostname is not a working deployment URL. Select the image to view it at full size.
If startup fails, check the site's path and pool, supported Hosting Bundle, database endpoint and account, configuration formatting, and folder access. Review WebReports Logs Overview. Avoid restarting unrelated sites while troubleshooting.
Step 15: Sign In and Register WebReports
- Sign in using the administrator access prepared for the selected authentication method. Windows Authentication may sign in the current Windows user automatically. If an initial administrator password was supplied, change it as directed.
- If initial-account creation needs review, see Enable / Disable Seed Admin or contact BridgeWorks Support. Do not substitute the database login for a WebReports sign-in account.
- Open Configuration → Registration. Review the licensed company information and enter the registration credentials and responsible contact details supplied for this installation.
- Use Offline License? only when following the offline process provided by BridgeWorks.
- Select Update and review the registration status and returned message. This submits the information immediately.
Demo reference reused from WebReports Registration. Company ID, license, contact, and installation ID are illustrative. Its displayed Active status does not establish the status of another installation. Select the image to view it at full size.
See WebReports Registration for the fields and registration workflow. The demo image's Active status is illustrative; verify the status of your own installation.
Next Steps and Verification
- Verify the intended HTTPS address, certificate, administrator sign-in, and registration.
- Confirm application database access and check startup and application logs.
- After setting up a reporting connection and a test report, run the report and verify its results. Signing in alone does not establish reporting-source access.
- Verify log creation and, if used, branding uploads, email, and scheduled processing. Check unattended processing again after a planned pool or server restart.
- Use Configuration for registration, email, branding, and application options. Use Management for users, roles, reporting connections, and report definitions.
Retain the deployment's site and pool names, physical path, database details, protected configuration backup, and recovery information so the installation can be supported and updated consistently.





Comments
0 comments
Please sign in to leave a comment.