/// <summary> /// Creates an instance of IExecutionContext using the system account. Should /// be used sparingly for elevating permissions, typically for back-end processes. /// </summary> /// <param name="executionContextToCopy">Optional execution context to base the new context on</param> public async Task <IExecutionContext> CreateSystemUserExecutionContextAsync(IExecutionContext executionContextToCopy = null) { var userContext = await _userContextService.GetSystemUserContextAsync(); return(Create(userContext, executionContextToCopy)); }