Forum Discussion
mike137g
Jan 04, 2024Copper Contributor
System Center Orchestrator 2022 Web Console Issues
This is more for information for others that have experienced the issues I have with System Center Orchestrator 2022 and the Web Console.
Issues Discussed:
Runbooks not visible in the Web Console
Cannot remove stale runbook server entries
Runbooks checked out in Web Console
Issue 1: Runbooks not visible in the Web Console.
In this issue the left hand pane where the runbook structure should be populated is blank.
Solution 1: Ran this query on the Orchestrator DB
GRANT CONTROL ON ASYMMETRIC KEY::[ORCHESTRATOR_ASYM_KEY] TO [Microsoft.SystemCenter.Orchestrator.Admins]
GRANT CONTROL ON SYMMETRIC KEY::[ORCHESTRATOR_SYM_KEY] TO [Microsoft.SystemCenter.Orchestrator.Admins]
GRANT EXECUTE ON object::[Microsoft.SystemCenter.Orchestrator].[GetSecurityToken] TO [Microsoft.SystemCenter.Orchestrator.Operators]
GRANT SELECT ON object::[Microsoft.SystemCenter.Orchestrator.Internal].[Settings] TO [Microsoft.SystemCenter.Orchestrator.Operators]
GRANT SELECT ON object::[Microsoft.SystemCenter.Orchestrator.Internal].[AuthorizationCache] TO [Microsoft.SystemCenter.Orchestrator.Admins]
Issue 2: Unable to delete stale or orphaned runbook server instances
I decommissioned some older runbook servers but was unable to delete them from any of the orchestrator consoles.
Solution: Run these sql queries against the orchestartor database
DELETE FROM [Orchestrator].[dbo].[CLIENTCONNECTIONS]
WHERE [ClientMachine] = 'SCORCHRB'
-- Here SCORCHRB is my Runbook Server Name.
DELETE FROM [Orchestrator].[dbo].[ACTIONSERVERS]
WHERE [Computer] = 'SCORCHRBServer'
-- Here SCORCHRBServer is my Runbook Server Name.
DELETE FROM dbo.OBJECTS
where Name = ‘SCORCHRBServer’
-- Here SCORCHRBServer is my Runbook Server Name.
Issue 3: Runbooks remain in the checked out state in the web console
I have run into an issue where no matter how many times i check in a runbook, the runbook in the web console remains checked out.
Solution 3: Run this sql query against the orchestrator database
use Orchestrator
GO Truncate table [Microsoft.SystemCenter.Orchestrator.Internal].AuthorizationCache
DECLARE @secToken INT
DECLARE tokenCursor CURSOR FOR
SELECT Id FROM [Microsoft.SystemCenter.Orchestrator.Internal].SecurityTokens
where ExpirationTime >= GETUTCDATE() OPEN tokenCursor
FETCH NEXT FROM tokenCursor
INTO @secToken
WHILE @@FETCH_STATUS = 0
BEGIN PRINT 'Computing Authorization Cache for Security Token: ' + Convert(Nvarchar, @secToken) exec [Microsoft.SystemCenter.Orchestrator].ComputeAuthorizationCache @TokenId = @secToken FETCH NEXT FROM tokenCursor
INTO @secToken END CLOSE tokenCursor DEALLOCATE tokenCursor