Upgraded to Jenkins 2.389 and some jobs are failing with java.lang.SecurityException: Sending hudson.FilePath$CopyTo from agent to controller is prohibited

Build step ‘Execute shell’ changed build result to UNSTABLE 18:31:33 ERROR: Build step failed with exception 18:31:33 Also: hudson.remoting.Channel$CallSiteStackTrace: Remote call to channel 18:31:33 at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1784) 18:31:33 at hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:356) 18:31:33 at hudson.remoting.Channel.call(Channel.java:1000) 18:31:33 at hudson.FilePath.act(FilePath.java:1186) 18:31:33 at hudson.FilePath.act(FilePath.java:1175) 18:31:33 at hudson.FilePath.copyTo(FilePath.java:2584) 18:31:33 at hudson.FilePath.copyTo(FilePath.java:2537) 18:31:33 at hudson.plugins.logparser.LogParserStatusComputer.computeStatusMatches(LogParserStatusComputer.java:88) 18:31:33 at hudson.plugins.logparser.LogParserStatusComputer.access$000(LogParserStatusComputer.java:22) 18:31:33 at hudson.plugins.logparser.LogParserStatusComputer$1.call(LogParserStatusComputer.java:54) 18:31:33 at hudson.plugins.logparser.LogParserStatusComputer$1.call(LogParserStatusComputer.java:47) 18:31:33 at hudson.remoting.UserRequest.perform(UserRequest.java:211) 18:31:33 at hudson.remoting.UserRequest.perform(UserRequest.java:54) 18:31:33 at hudson.remoting.Request$2.run(Request.java:377) 18:31:33 at hudson.remoting.InterceptingExecutorService.lambda$wrap$0(InterceptingExecutorService.java:78) 18:31:33 java.lang.SecurityException: Sending hudson.FilePath$CopyTo from agent to controller is prohibited. 18:31:33 See https://www.jenkins.io/redirect/security-144 for more details 18:31:33 at jenkins.security.s2m.CallableDirectionChecker.check(CallableDirectionChecker.java:55) 18:31:33 at org.jenkinsci.remoting.RoleChecker.check(RoleChecker.java:39) 18:31:33 at hudson.remoting.RequiredRoleCheckerWrapper.check(RequiredRoleCheckerWrapper.java:54) 18:31:33 at jenkins.MasterToSlaveFileCallable.checkRoles(MasterToSlaveFileCallable.java:22) 18:31:33 at hudson.FilePath$FileCallableWrapper.checkRoles(FilePath.java:3503) 18:31:33 at hudson.remoting.ChannelBuilder$2.userRequest(ChannelBuilder.java:331) 18:31:33 at hudson.remoting.CallableDecoratorList.wrapUserRequest(CallableDecoratorList.java:26) 18:31:33 at hudson.remoting.UserRequest.perform(UserRequest.java:205) 18:31:33 at hudson.remoting.UserRequest.perform(UserRequest.java:54) 18:31:33 at hudson.remoting.Request$2.run(Request.java:377) 18:31:33 at hudson.remoting.InterceptingExecutorService.lambda$wrap$0(InterceptingExecutorService.java:78) 18:31:33 at org.jenkinsci.remoting.CallableDecorator.call(CallableDecorator.java:18) 18:31:33 at hudson.remoting.CallableDecoratorList.lambda$applyDecorator$0(CallableDecoratorList.java:19) 18:31:33 at jenkins.util.ContextResettingExecutorService$2.call(ContextResettingExecutorService.java:46) 18:31:33 at jenkins.security.ImpersonatingExecutorService$2.call(ImpersonatingExecutorService.java:80) 18:31:33 Caused: java.io.IOException: Failed to deserialize response to UserRequest:hudson.FilePath$CopyTo@7e33e651 18:31:33 at hudson.remoting.Channel.call(Channel.java:1006) 18:31:33 at hudson.FilePath.act(FilePath.java:1186) 18:31:33 at hudson.FilePath.act(FilePath.java:1175) 18:31:33 at hudson.FilePath.copyTo(FilePath.java:2584) 18:31:33 at hudson.FilePath.copyTo(FilePath.java:2537) 18:31:33 Caused: java.io.IOException: Failed to copy /wbsoft/jenkins/jobs/HCMS Post Refresh - Predecessor/builds/5812/log to /tmp/log-parser_HCMS Post Refresh - Predecessor_build_5812 18:31:33 at hudson.FilePath.copyTo(FilePath.java:2540) 18:31:33 at hudson.plugins.logparser.LogParserStatusComputer.computeStatusMatches(LogParserStatusComputer.java:88) 18:31:33 at hudson.plugins.logparser.LogParserStatusComputer.access$000(LogParserStatusComputer.java:22) 18:31:33 at hudson.plugins.logparser.LogParserStatusComputer$1.call(LogParserStatusComputer.java:54) 18:31:33 Also: hudson.remoting.Channel$CallSiteStackTrace: Remote call to w0lxthcm01 18:31:33 at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1784) 18:31:33 at hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:356) 18:31:33 at hudson.remoting.Channel.call(Channel.java:1000) 18:31:33 at hudson.plugins.logparser.LogParserStatusComputer.computeStatusMatches(LogParserStatusComputer.java:47) 18:31:33 at hudson.plugins.logparser.LogParserStatusComputer.(LogParserStatusComputer.java:36) 18:31:33 at hudson.plugins.logparser.LogParserParser.parseLogBody(LogParserParser.java:355) 18:31:33 at hudson.plugins.logparser.LogParserParser.parseLog(LogParserParser.java:165) 18:31:33 at hudson.plugins.logparser.LogParserPublisher.perform(LogParserPublisher.java:119) 18:31:33 at jenkins.tasks.SimpleBuildStep.perform(SimpleBuildStep.java:123) 18:31:33 at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:80) 18:31:33 at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20) 18:31:33 at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:818) 18:31:33 at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:767) 18:31:33 at hudson.model.Build$BuildExecution.post2(Build.java:179) 18:31:33 at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:711) 18:31:33 at hudson.model.Run.execute(Run.java:1925) 18:31:33 at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:44) 18:31:33 at hudson.model.ResourceController.execute(ResourceController.java:101) 18:31:33 at hudson.model.Executor.run(Executor.java:442) 18:31:33 Caused: java.lang.RuntimeException 18:31:33 at hudson.plugins.logparser.LogParserStatusComputer$1.call(LogParserStatusComputer.java:62) 18:31:33 at hudson.plugins.logparser.LogParserStatusComputer$1.call(LogParserStatusComputer.java:47) 18:31:33 at hudson.remoting.UserRequest.perform(UserRequest.java:211) 18:31:33 at hudson.remoting.UserRequest.perform(UserRequest.java:54) 18:31:33 at hudson.remoting.Request$2.run(Request.java:377) 18:31:33 at hudson.remoting.InterceptingExecutorService.lambda$wrap$0(InterceptingExecutorService.java:78) 18:31:33 at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) 18:31:33 at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) 18:31:33 at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) 18:31:33 at java.base/java.lang.Thread.run(Thread.java:834) 18:31:33 Build step ‘Console output (build log) parsing’ marked build as failure

In order to help other help you, I would recommend giving more context than a raw error log:

  • what version did you update from ?
  • what is your job doing when the error appears ?

Reading from the raw out of context log, one can see See https://www.jenkins.io/redirect/security-144 for more details. Did you read the explanation in this link? Are you concerned (ie upgrading from a version earlier than 2.326)?

Hi @PierreBtz ,

The jenkins version was upgraded from version 2.303 to to 2.389.
How to enable this in version 2.389

First sentence from Agent → Controller Security Changes in 2.326 :

Jenkins 2.326 removes the ability to disable or customize the agent-to-controller security system.

I’m having the same issue.
What was the solution for this?