Audits TLS/SSL configuration for all SQL Server instances on one or more computers: certificate thumbprint, ForceEncryption, cert expiry/trust/SAN, and SCHANNEL TLS 1.0–1.3 protocol state. Works locally and remotely via WinRM. No dbatools required.
Execution Flow
Synopsis
Reads SQL Server TLS/SSL configuration entirely from the Windows Registry and certificate store — no SQL connection, no dbatools needed. For each instance, the certificate thumbprint bound in SuperSocketNetLib is resolved against Cert:\LocalMachine\My, chain-validated, and its expiry and SAN entries are recorded. SCHANNEL TLS protocol state (TLS 1.0–1.3) is read per computer. Remote execution uses Invoke-Command (WinRM).
No dbatools required. Remote access via WinRM (Invoke-Command). Use -Credential for non-default remote credentials. Certificate chain validation uses RevocationMode=NoCheck to avoid network dependency.
Status Logic
Status
Condition
Critical
Cert thumbprint set but not found in LocalMachine\My, OR cert chain not trusted, OR cert expired.
Warning
Cert expires within WarnDaysBeforeExpiry days, OR ForceEncryption=0, OR TLS 1.0/1.1 Enabled, OR no cert bound (self-signed auto-cert).