Started New PWSH? YES
Import-Module Devolution.Powershell? NO
Get-RDMCurrentWorkspace: Fails
Sometimes it still shows the Details of the workspace and sometimes just the error, not clear whats the deciding factor here.
PS C:\Users\a2.simmerstatter>Get-RDMCurrentWorkspace: Unexpected exception
ID : 735b67a3-1ac8-4080-8690-eafe6bf1ae96
IsConnected : True
IsDefault : True
IsOffline : False
Name : MACO
RepositoryID : 00000000-0000-0000-0000-000000000000
Type : RDMS
Started New PWSH? YES via RDM "Powershell (RDM Cmdlet)"
Import-Module Devolution.Powershell? NO
Get-RDMCurrentWorkspace: Works
PS C:\Users\a2.simmerstatter> Get-RDMCurrentWorkspace
ID : 735b67a3-1ac8-4080-8690-eafe6bf1ae96
IsConnected : True
IsDefault : True
IsOffline : True
Name : MACO
RepositoryID : 00000000-0000-0000-0000-000000000000
Type : RDMS
Started New PWSH? YES
Import-Module Devolution.Powershell? NO but this preloads the Module anyway
Get-RDMCurrentWorkspace: Works
PS C:\Users\a2.simmerstatter> import-module devolutions.powershell
PS C:\Users\a2.simmerstatter> Get-RDMCurrentWorkspace
ID : 735b67a3-1ac8-4080-8690-eafe6bf1ae96
IsConnected : True
IsDefault : True
IsOffline : True
Name : MACO
RepositoryID : 00000000-0000-0000-0000-000000000000
Type : RDMS
Looks like it only fails when the Devolutions.Powershell module was not explicitely loaded before the command
Here is the full error message from $Error:
PS C:\Users\a2.simmerstatter> $Error.exception
Status : UnknownError
Response :
TargetSite : T RunSynchronous[T](System.Threading.Tasks.Task`1[T])
Message : Unexpected exception
Data : {}
InnerException :
HelpLink :
Source : Devolutions.Server.ApiWrapper
HResult : -2146233079
StackTrace : at Devolutions.Server.ApiWrapper.RDMSWebClient.RunSynchronous[T](Task`1 task)
at Devolutions.Server.ApiWrapper.RDMSWebClient.GetRoles()
at Devolutions.RemoteDesktopManager.Business.DataSources.RDMSWebApiClient.<GetRoles>b__308_0()
at Devolutions.RemoteDesktopManager.Business.DataSources.RDMSWebApiClient.RetryAction[T](ExecuteAct
ionDelegate`1 action, String label, Boolean failFastOnBackgroundThread)
at Devolutions.RemoteDesktopManager.Business.DataSources.RDMSWebApiClient.ExecuteAction[T](ExecuteA
ctionDelegate`1 action, ExecuteActionLogMode logMode, Boolean retryAction)
at Devolutions.RemoteDesktopManager.Business.DataSources.RDMSWebApiClient.ExecuteActionMultipleData
[T](ExecuteActionDelegate`1 action)
at Devolutions.RemoteDesktopManager.Business.DataSources.RDMSWebApiClient.GetRoles()
at Devolutions.RemoteDesktopManager.Business.DataSources.RDMSSecuritySubDataSource.GetRoles()
at Devolutions.RemoteDesktopManager.Business.DataSources.ContextSubDataSource.RoleContext.GetAllRol
es(Boolean getAllRoleInformation, Boolean useRecentCache)
at Devolutions.RemoteDesktopManager.Business.DataSources.ContextSubDataSource.UserContext.GetCurren
tLoggedInUserNotCached(ConnectionEngine engine)
at Devolutions.RemoteDesktopManager.Business.DataSources.ContextSubDataSource.UserContext.get_UserE
ntity()
at
Devolutions.RemoteDesktopManager.Business.DataSources.ContextSubDataSource.get_IsUserVaultSupported()
at Devolutions.RemoteDesktopManager.Managers.ConnectionEngine.FindConnectionEx(Nullable`1
connectionId, String groupMain, Boolean searchOnlyCurrentEngine)
at Devolutions.RemoteDesktopManager.Managers.ConnectionEngine.FindConnectionEx(String
connectionId, Boolean searchOnlyCurrentEngine)
at Devolutions.RemoteDesktopManager.Managers.FavoriteManager.UpdatePayloads(ConnectionEngine
engine)
at Devolutions.RemoteDesktopManager.Managers.FavoriteManager.LoadFolders(ConnectionEngine engine)
at Devolutions.RemoteDesktopManager.Managers.ConnectionManager.LoadConnections(ConnectionEngine&
engine, Boolean refreshSubVaults)
at Devolutions.RemoteDesktopManager.Managers.ConnectionManager.LoadConnections(ConnectionEngine&
engine, Boolean refreshSubVaults)
at
Devolutions.RemoteDesktopManager.Managers.ConnectionManager.LoadConnections(BaseConnectionDataSource
dataSource, ConnectionEngine& engine, Boolean refreshSubVaults)
at
Devolutions.RemoteDesktopManager.Managers.ConnectionManager.RefreshConnections(ConnectionEngine&
engine, Boolean refreshSubVaults)
at Devolutions.RemoteDesktopManager.Managers.ConnectionManager.RefreshConnections(ConnectionEngine
engine, Boolean refreshSubVaults)
at Devolutions.RemoteDesktopManager.Managers.PowerShellConnectionManager.RefreshConnections(Connect
ionEngine engine, Boolean refreshSubVaults)
at Devolutions.RemoteDesktopManager.Managers.PowerShellConnectionManager.RefreshConnections(Connect
ionEngine engine)
at RemoteDesktopManager.PowerShellModule.BaseCommand.RefreshConnectionEngine(ConnectionEngine
engine)
at RemoteDesktopManager.PowerShellModule.BaseCommand.BeginProcessing()
at System.Management.Automation.CommandProcessorBase.DoBegin()
PS C:\Users\a2.simmerstatter> $Error.exception.tostring()
System.Net.WebException: Unexpected exception
at Devolutions.Server.ApiWrapper.RDMSWebClient.RunSynchronous[T](Task`1 task)
at Devolutions.Server.ApiWrapper.RDMSWebClient.GetRoles()
at Devolutions.RemoteDesktopManager.Business.DataSources.RDMSWebApiClient.<GetRoles>b__308_0()
at Devolutions.RemoteDesktopManager.Business.DataSources.RDMSWebApiClient.RetryAction[T](ExecuteActionDelegate`1 action, String label, Boolean failFastOnBackgroundThread)
at Devolutions.RemoteDesktopManager.Business.DataSources.RDMSWebApiClient.ExecuteAction[T](ExecuteActionDelegate`1 action, ExecuteActionLogMode logMode, Boolean retryAction)
at Devolutions.RemoteDesktopManager.Business.DataSources.RDMSWebApiClient.ExecuteActionMultipleData[T](ExecuteActionDelegate`1 action)
at Devolutions.RemoteDesktopManager.Business.DataSources.RDMSWebApiClient.GetRoles()
at Devolutions.RemoteDesktopManager.Business.DataSources.RDMSSecuritySubDataSource.GetRoles()
at Devolutions.RemoteDesktopManager.Business.DataSources.ContextSubDataSource.RoleContext.GetAllRoles(Boolean getAllRoleInformation, Boolean useRecentCache)
at Devolutions.RemoteDesktopManager.Business.DataSources.ContextSubDataSource.UserContext.GetCurrentLoggedInUserNotCached(ConnectionEngine engine)
at Devolutions.RemoteDesktopManager.Business.DataSources.ContextSubDataSource.UserContext.get_UserEntity()
at Devolutions.RemoteDesktopManager.Business.DataSources.ContextSubDataSource.get_IsUserVaultSupported()
at Devolutions.RemoteDesktopManager.Managers.ConnectionEngine.FindConnectionEx(Nullable`1 connectionId, String groupMain, Boolean searchOnlyCurrentEngine)
at Devolutions.RemoteDesktopManager.Managers.ConnectionEngine.FindConnectionEx(String connectionId, Boolean searchOnlyCurrentEngine)
at Devolutions.RemoteDesktopManager.Managers.FavoriteManager.UpdatePayloads(ConnectionEngine engine)
at Devolutions.RemoteDesktopManager.Managers.FavoriteManager.LoadFolders(ConnectionEngine engine)
at Devolutions.RemoteDesktopManager.Managers.ConnectionManager.LoadConnections(ConnectionEngine& engine, Boolean refreshSubVaults)
at Devolutions.RemoteDesktopManager.Managers.ConnectionManager.LoadConnections(ConnectionEngine& engine, Boolean refreshSubVaults)
at Devolutions.RemoteDesktopManager.Managers.ConnectionManager.LoadConnections(BaseConnectionDataSource dataSource, ConnectionEngine& engine, Boolean refreshSubVaults)
at Devolutions.RemoteDesktopManager.Managers.ConnectionManager.RefreshConnections(ConnectionEngine& engine, Boolean refreshSubVaults)
at Devolutions.RemoteDesktopManager.Managers.ConnectionManager.RefreshConnections(ConnectionEngine engine, Boolean refreshSubVaults)
at Devolutions.RemoteDesktopManager.Managers.PowerShellConnectionManager.RefreshConnections(ConnectionEngine engine, Boolean refreshSubVaults)
at Devolutions.RemoteDesktopManager.Managers.PowerShellConnectionManager.RefreshConnections(ConnectionEngine engine)
at RemoteDesktopManager.PowerShellModule.BaseCommand.RefreshConnectionEngine(ConnectionEngine engine)
at RemoteDesktopManager.PowerShellModule.BaseCommand.BeginProcessing()
at System.Management.Automation.CommandProcessorBase.DoBegin()
PS C:\Users\a2.simmerstatter>
Serverlogs shows this message 4-5 times:
AccessDeniedException - Exception of type 'Devolutions.Server.V2.Domain.Exceptions.AccessDeniedException' was thrown.at Devolutions.Server.V2.Application.Common.GuardClause.IGuardExtensions.HasPermission[G](G guard, Func`1 predicate)at Devolutions.Server.Controllers.ControllerGuard.HasAdministrativePermission(AdministrativePermission permission)at Devolutions.Server.Controllers.APIControllers.V2.SecurityController.GetRoles()at lambda_method631(Closure, Object, Object[])at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeActionMethodAsync()at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync()--- End of stack trace from previous location ---at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync()--- End of stack trace from previous location ---at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextExceptionFilterAsync>g__Awaited|26_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)