Execution Flow
Each configuration area (service account, database, URLs, encryption key) can be skipped independently with the matching
-Skip* switch. For AlwaysOn, set -DatabaseServer to the AG listener — the DB is created on the primary and SSRS connects via the listener. SQL auth is supported via -DatabaseAuthType SQL + -DatabaseCredential.Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| -ComputerName | String | Optional | SSRS server (local or remote). Default: $env:COMPUTERNAME. |
| -InstanceName | String | Optional | SSRS instance name. Default: MSSQLSERVER. |
| -DatabaseServer | String | Optional | SQL Server instance or AG listener for the ReportServer database. Default: ComputerName. |
| -DatabaseName | String | Optional | ReportServer database name. Default: ReportServer. |
| -ReportServerUrl | String | Optional | Web Service URL. Default: http://+:80/ReportServer. |
| -ReportsUrl | String | Optional | Web Portal URL. Default: http://+:80/Reports. |
| -ServiceAccount | String | Optional | Windows service account for SSRS (e.g. DOMAIN\user). |
| -ServiceAccountPassword | SecureString | Optional | Password for -ServiceAccount. Not needed for managed service accounts. |
| -DatabaseAuthType | String | Optional | Windows (default) or SQL. |
| -DatabaseCredential | PSCredential | Optional | SQL credential for -DatabaseAuthType SQL. |
| -EncryptionKeyFile | String | Optional | Path for the encryption key backup (.snk). Default: OutputPath\SsrsEncryptionKey_*.snk. |
| -EncryptionKeyPassword | SecureString | Optional | Password for the encryption key backup. |
| -PbmPolicyName | String | Optional | PBM policy to disable before DB creation and re-enable after. |
| -SkipDatabase | Switch | Optional | Skip database creation/configuration step. |
| -SkipUrls | Switch | Optional | Skip URL reservation step. |
| -SkipServiceAccount | Switch | Optional | Skip service account configuration step. |
| -SkipEncryptionKeyBackup | Switch | Optional | Skip encryption key backup step. |
| -OutputPath | String | Optional | Directory for the encryption key backup file. |
| -Credential | PSCredential | Optional | Credential for remote WMI connection to ComputerName. |
| -EnableException | Switch | Optional | Throw terminating errors instead of logging warnings. |
Return Value
Returns a PSCustomObject with: ComputerName, InstanceName, DatabaseServer, DatabaseName, ReportServerUrl, ReportsUrl, EncryptionKeyFile, Status, Message.
Examples
Example 1 — Full auto-configuration on local server
Set-sqmSsrsConfiguration -ServiceAccount "DOMAIN\svc-ssrs" -ServiceAccountPassword $pwExample 2 — Remote server with AG listener as DB backend
Set-sqmSsrsConfiguration -ComputerName "SSRS01" -DatabaseServer "AG-Listener" -Credential $credExample 3 — Only reconfigure URLs (skip all other steps)
Set-sqmSsrsConfiguration -SkipServiceAccount -SkipDatabase -SkipEncryptionKeyBackup `
-ReportServerUrl "http://+:8080/ReportServer" -ReportsUrl "http://+:8080/Reports"