Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use native CLI functions for slave node management rather than groovy #639

Open
dbresson opened this issue Jul 11, 2017 · 1 comment
Open

Comments

@dbresson
Copy link

I'd like to be able to create jnlp slaves with minimal security privileges on the master, and ideally through http mode instead of remoting.

Matrix-based security supports granting just the rights to manage nodes. The cli has specific commands for all of the node management actions. It should be rather straight forward.

Currently though, all the actions are performed with groovy code, which means the user doing them needs the Overall/RunScripts right. As documented by Matrix-based Security, "RunScripts allows executing arbitrary code in the context of any (Jenkins internal) user, including the internal SYSTEM user."

The current approach also requires the cli be invoked in -remoting mode rather than -http mode. Remoting is deprecated as a major security vulnerability and recommended to be turned off.

Remoting is "inherently vulnerable to remote code execution bugs, even “preauthentication” exploits (by anonymous users able to physically access the Jenkins network)."

@Aketzu
Copy link

Aketzu commented Aug 21, 2017

On initial look getting slave JNLP secret is not possible with native CLI functions so this probably needs changes on Jenkins side as well

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants