Commands / Set-sqmSsrsHttpsCertificate
Security

Set-sqmSsrsHttpsCertificate

Binds a Windows certificate to SSRS or Power BI Report Server for HTTPS access — validates the certificate, calls SetCertificateConfiguration via WMI, and optionally enforces SSL and restarts the service.

Module: sqmSQLTool
Requires: none (WMI + Cert:)
ShouldProcess: Yes (Medium)
Output: PSCustomObject

Execution Flow

START 1. Validate cert in Cert:\LocalMachine\My (thumbprint / expiry / private key) Cert valid? throw error 2. Connect to WMI ReportingService on ComputerName WMI object found? throw error ShouldProcess: bind certificate? return (WhatIf) 3. SetCertificateConfiguration (WMI) — bind thumbprint + port -RequireSSL? Yes SetSecureConnectionLevel (WMI) 4. Restart SSRS service (Restart-Service) Return PSCustomObject (cert info + bind result) DONE
The SSRS service is restarted automatically after binding. Spaces in -Thumbprint are stripped automatically. For Power BI Report Server, specify -InstanceName PBIRS. Use -IPAddress to bind to a specific IP instead of all interfaces.

Parameters

ParameterTypeRequiredDescription
-ComputerNameStringOptionalSSRS server. Default: $env:COMPUTERNAME.
-ThumbprintStringRequiredSHA-1 thumbprint of the certificate in Cert:\LocalMachine\My. Spaces are stripped automatically.
-PortIntOptionalHTTPS port to bind. Default: 443.
-InstanceNameStringOptionalSSRS/PBIRS instance name. Default: MSSQLSERVER.
-IPAddressStringOptionalIP address to bind. Default: all interfaces (0.0.0.0).
-RequireSSLSwitchOptionalEnforce HTTPS for all SSRS connections (SetSecureConnectionLevel).
-CredentialPSCredentialOptionalCredential for remote WMI connection.
-WhatIf / -ConfirmSwitchOptionalStandard ShouldProcess support.

Return Value

Returns a PSCustomObject with: ComputerName, InstanceName, Thumbprint, Port, RequireSSL, Status, Message.

Examples

Example 1 — Bind certificate on local SSRS

Set-sqmSsrsHttpsCertificate -Thumbprint "A1B2C3D4E5F6..."

Example 2 — Remote server, enforce SSL, custom port

Set-sqmSsrsHttpsCertificate -ComputerName "SSRS01" -Thumbprint "A1B2C3..." -Port 8443 -RequireSSL

Example 3 — Power BI Report Server instance

Set-sqmSsrsHttpsCertificate -Thumbprint "A1B2C3..." -InstanceName "PBIRS"