Reports are an important tool for law enforcement and at the agency I work at, we use SQL Server Reporting Services (SSRS) to manage our reporting needs from quick and dirty reports to full fledge strategic reports.
One of the most important tasks of managing SSRS is to backup the encryption key that is used to safeguard all the sensitive information stored on the report server database. If anything happens to the server and one tries to recover or move the report server database without the encryption key, then all your information has been lost. (There are workarounds, but that can be saved for another time and another post…)
As part of my upgrade plan to update SSRS, I decided to do another backup of the encryption key just in case. Hence I opened up the Report Services Configuration utility and proceeded to backup the key when it returned the following error:
ReportServicesConfigUI.WMIProvider.WMIProviderException: An unknown error has occurred in the WMI Provider. Error Code 80070A90
---> System.Runtime.InteropServices.COMException (0x80070A90): Exception from HRESULT: 0x80070A90
--- End of inner exception stack trace ---
at ReportServicesConfigUI.WMIProvider.RSReportServerAdmin.ThrowOnError(ManagementBaseObject mo)
at ReportServicesConfigUI.WMIProvider.RSReportServerAdmin.BackupEncryptionKey(Byte& encryptedBytes, String password)
I always love encountering unknown errors, and performing a general search for WMI errors while backing up the encryption key in SSRS yielded nothing really significant, so I decided to try the command line tool RSKeyMgmt to backup the key and encountered the same error with less verbose details:
exception from HRESULT: 0x80070A90
Of course, just searching for that error code pointed me to the fact that the password I chose did not meet the complexity requirements of our policies. It’s good that the policy caught this, as even though I was going to do this backup just for upgrade purposes and then delete it, security is of utmost importance where I work and even I get caught doing shortcuts that may not be the best practice!
Once I used a proper password, everything worked perfectly.