How to enable hidden dashboards

Applies to On-Premises | Gizmo 1.8 to 1.9

From Gizmo 2.0, you can easily enable or disable dashboards through the Web Application in the Dashboards management page.

This should be done on the Windows Server machine hosting Gizmo and only applies when Database connection relies on SQL Authentication.

Instructions

  • Open a PowerShell editor (e.g. PowerShell ISE) as Administrator.

  • Edit the top lines of below scripts depending on the dashboards you wish to enable.

    $queries = New-Object System.Collections.ArrayList
    
    # Enable SkypeForBusiness Dashboard
    $queries.add("UPDATE WebUi_Dashboards SET Active = 1 WHERE [DashboardGuid] = 'CB5533AE-9312-4EFE-B4F2-2C074EDD35AB'")
    # Mail Routing Hybrid
    $queries.add("UPDATE WebUi_Dashboards SET Active = 1 WHERE [DashboardGuid] = '31B8A1AC-1BC6-4169-942B-F74A0DF57233'")
    
    
    # Get connection info
    $GsxSolutionsRegistryKey = 'HKLM:\SOFTWARE\GSX Solutions'
    $ScanConfigRegistryKey = Join-Path $GsxSolutionsRegistryKey -ChildPath "Scan Configuration Microservice"
    $Configuration = New-Object -TypeName PSObject
    $Configuration | Add-Member -MemberType NoteProperty -Name RabbitMQHostname -Value (Get-ItemPropertyValue ("$ScanConfigRegistryKey\busconfig\") -Name hostname)
    $Configuration | Add-Member -MemberType NoteProperty -Name RabbitMQPassword -Value ([System.Text.Encoding]::UTF32.GetString([System.Convert]::FromBase64String((Get-ItemPropertyValue ("$ScanConfigRegistryKey\busconfig\") -Name Password))))
    $Configuration | Add-Member -MemberType NoteProperty -Name RabbitMQPort -Value (Get-ItemPropertyValue ("$ScanConfigRegistryKey\busconfig\") -Name Port)
    $Configuration | Add-Member -MemberType NoteProperty -Name RabbitMQVirtualHostname -Value (Get-ItemPropertyValue ("$ScanConfigRegistryKey\busconfig\") -Name VirtualHostname)
    $Configuration | Add-Member -MemberType NoteProperty -Name RabbitMQUsername -Value (Get-ItemPropertyValue ("$ScanConfigRegistryKey\busconfig\") -Name Username)
    $Configuration | Add-Member -MemberType NoteProperty -Name RabbitMQUseSsl -Value ([Convert]::ToBoolean((Get-ItemPropertyValue ("$ScanConfigRegistryKey\busconfig\") -Name UseSsl)))
    $Configuration | Add-Member -MemberType NoteProperty -Name SQLDataSource -Value (Get-ItemPropertyValue ("$ScanConfigRegistryKey\dbconfig\") -Name DataSource)
    $Configuration | Add-Member -MemberType NoteProperty -Name SQLDatabase -Value (Get-ItemPropertyValue ("$ScanConfigRegistryKey\dbconfig\") -Name Database)
    $Configuration | Add-Member -MemberType NoteProperty -Name SQLPassword -Value ([System.Text.Encoding]::UTF32.GetString([System.Convert]::FromBase64String((Get-ItemPropertyValue ("$ScanConfigRegistryKey\dbconfig\") -Name Password))))
    $Configuration | Add-Member -MemberType NoteProperty -Name SQLUserID -Value (Get-ItemPropertyValue ("$ScanConfigRegistryKey\dbconfig\") -Name UserID)
    $Configuration | Add-Member -MemberType NoteProperty -Name SQLUseWindowsCredentials -Value ([Convert]::ToBoolean((Get-ItemPropertyValue ("$ScanConfigRegistryKey\dbconfig\") -Name UseWindowsCredentials)))
    $Configuration
    
    foreach ($query in $queries) {
        Write-host 'Executing '$query
        Invoke-Sqlcmd -ServerInstance $Configuration.SQLDataSource -Database $Configuration.SQLDatabase -Query $query -Username $Configuration.SQLUserID -Password $Configuration.SQLPassword
    }