-
Improvement
-
Resolution: Fixed
-
Major
-
None
-
-
Pipeline - October, Pipeline - December
As a Jenkins administrator, I would like for developers to be able to configure jobs, but only have certain users able to build those jobs. Through various means like RBAC and controlled agents, I have given jobs in a certain folder the ability to access agents and secrets. While I trust developers to configure those jobs, I have business requirements to only allow certain users to build those jobs.
However, Jenkins allows users to Replay a build even if they don't have the Run/Replay or Job/Build permissions. This seems to due the fact that Run/Replay is implied by Job/Configure.
Put another way, Job/Build isn't implied by Job/Configure, so why does Job/Configure imply Run/Replay? Instead, it seems like Run/Replay should only be implied if a user has both Job/Build and Job/Configure.
- is related to
-
JENKINS-63080 Replay link is shown to users with push access to repo, but replay page shows no script editor
-
- Resolved
-
-
JENKINS-39874 Abilty to disable pipeline-replay in Job Configuration.
-
- Reopened
-
-
JENKINS-50855 Replay action visible although Replay permission is not granted
-
- Resolved
-
- links to
- mentioned in
-
Page Loading...
Ok, thought about this a bit - ReplayAction.REPLAY should be implied by Item.CONFIGURE. That's because replaying a build lets you make changes to what was run. So we definitely don't want to just allow anyone with Item.BUILD permissions to be able to replay a build unless they also have Item.CONFIGURE. And since, as far as I know, there's no way to do two required permissions to imply a third, we're restricted to having ReplayAction.REPLAY implied by one of Item.CONFIGURE or Item.BUILD but not the other, and in that scenario, Item.CONFIGURE is definitely the right one.