Jesse Glick
e89da8d52d
Also removing BYPASS_CALLABLES, which should have been superseded by richer admin UI.
2014-10-17 10:21:00 -04:00
Jesse Glick
f327fc284a
Removing BYPASS_LOG here as well.
2014-10-17 10:18:46 -04:00
Jesse Glick
ba9525336b
Presumably <JENKIN_HOME> was a typo.
2014-10-17 10:15:28 -04:00
Kohsuke Kawaguchi
19f9b63d74
[FIXED JENKINS-24046]
...
Warn users if the pinning is preventing Jenkins from overwriting older versions with bundled versions.
2014-10-16 18:18:25 -07:00
Kohsuke Kawaguchi
65e2a757f9
ConcurrentList cannot be sorted because iterator doesn't support set()
2014-10-16 17:09:30 -07:00
Kohsuke Kawaguchi
bb3b68079c
Should be only active when there's non-whitelisted Callable
2014-10-16 17:00:02 -07:00
Kohsuke Kawaguchi
6f622df761
Tweak the order of the extensions to make sure the bypass switch works
2014-10-16 16:55:18 -07:00
Kohsuke Kawaguchi
e5a1e82e11
Higer priority one should come first
2014-10-16 16:55:18 -07:00
Kohsuke Kawaguchi
8d1f9d56c0
Removed code that's marked as "delete before release"
2014-10-16 16:55:18 -07:00
Kohsuke Kawaguchi
5794c5d337
provide faster version that doesn't touch I/O
2014-10-16 16:55:18 -07:00
Kohsuke Kawaguchi
d4efe71219
Adding default callable whitelist
2014-10-16 16:55:18 -07:00
Kohsuke Kawaguchi
50a7ba09a1
End of iteration handling was buggy
2014-10-16 16:55:18 -07:00
Kohsuke Kawaguchi
6d6e19ebf2
if it's already whitelisted, don't bother listing it
2014-10-16 16:55:18 -07:00
Kohsuke Kawaguchi
d495f144bd
redirect access to this monitor to the rule setting UI
2014-10-16 16:55:18 -07:00
Kohsuke Kawaguchi
e1a0935919
report a better error
2014-10-16 16:55:18 -07:00
Kohsuke Kawaguchi
b077d9e7b5
This isn't created via injection
2014-10-16 16:55:18 -07:00
Kohsuke Kawaguchi
fbf3b2658a
Now loading upon the first use
2014-10-16 16:55:18 -07:00
Kohsuke Kawaguchi
5c4a3bbdde
Added default rules
2014-10-16 16:55:18 -07:00
Kohsuke Kawaguchi
9300e7eb15
Support for conf.d pattern to help people deploy rules via configuration management tools
2014-10-16 16:55:18 -07:00
Kohsuke Kawaguchi
5a9b3b4ea5
Hooked up the rule configuration in the UI
2014-10-16 16:55:18 -07:00
Kohsuke Kawaguchi
187e246ab9
Added persistence logic for FilePathRules
2014-10-16 16:55:17 -07:00
Kohsuke Kawaguchi
f3283ca4cc
Refactoring: code that handles I/O to a file is moved to a separate class
2014-10-16 16:55:17 -07:00
Kohsuke Kawaguchi
07809fc12f
Added a convenience method
2014-10-16 16:55:17 -07:00
Kohsuke Kawaguchi
356764dced
Moved the rules into a separate class
2014-10-16 16:55:17 -07:00
Kohsuke Kawaguchi
cb65dd65f3
Moving related code into a separate package and adding a scaffolding to do FilePathFilter
2014-10-16 16:55:17 -07:00
Kohsuke Kawaguchi
7d5b098bf2
Promoting this common pattern into a convenience class
2014-10-16 16:55:17 -07:00
Kohsuke Kawaguchi
21ead8532a
Most ordinals will be zero, and it is undesirable for the order to be affected by the order of insertion, which is not necessarily predictable.
2014-10-16 16:55:17 -07:00
Kohsuke Kawaguchi
bbf0162610
doc improvement
2014-10-16 16:55:17 -07:00
Kohsuke Kawaguchi
ef848c67e1
Expose the ordinal control to FilePathFilter
2014-10-16 16:55:17 -07:00
Kohsuke Kawaguchi
b2deccb771
Now the order of FilePathFilter is significant, so we need to let the caller control that
2014-10-16 16:55:17 -07:00
Kohsuke Kawaguchi
c062e7b426
Final rejection is no longer a job of FilePathFilter
2014-10-16 16:55:17 -07:00
Kohsuke Kawaguchi
c20308c3fa
Making FilePathFilter itself more composable
2014-10-16 16:55:17 -07:00
Jesse Glick
11b240c361
Merge branch 'security' into SECURITY-144
...
Conflicts:
core/src/main/java/hudson/slaves/Channels.java
pom.xml
2014-10-16 12:27:45 -04:00
Kohsuke Kawaguchi
547cc241c0
untar() has the same problem as unzip() about the directionality of the read.
...
This code duplication in two sides of the if statement is undesirable.
Post-release, I need to come back here to introduce a variant of FileCallable that runs on the given FilePath but with InputStream to another FilePath.
2014-10-15 22:15:30 -07:00
Kohsuke Kawaguchi
db5f184981
Preserve fidelity of the whitelist
2014-10-15 22:05:42 -07:00
Kohsuke Kawaguchi
1aebd6fd49
Implemented the basics of Callable whitelisting
...
Still has to extend this to cover FilePaths
2014-10-15 19:51:49 -07:00
Kohsuke Kawaguchi
36f32a7fb3
Navigate the user to the website where we can explain the details, mitigations, etc.
2014-10-15 19:51:49 -07:00
Kohsuke Kawaguchi
225935af5a
Added the extension point to whitelist Callables
2014-10-15 19:51:49 -07:00
Kohsuke Kawaguchi
e37597a81d
Unzipping a local zip into a remote directory results in the file getting read from remote.
...
This change flips the order so that the read happens locally, and pipe gets forwarded to the other side.
2014-10-15 19:51:49 -07:00
Jesse Glick
adc218825d
FilePath.read should rethrow any FileNotFoundException, SecurityException, etc.
2014-10-15 16:36:12 -04:00
Jesse Glick
698858fd92
Changes in remoting make wrapping IOException less necessary.
...
Still do it so we capture FilePath.remote (which many JRE methods suppress),
but fix the wrapper Throwable.message to include cause.toString() according to convention.
2014-10-15 16:12:10 -04:00
Kohsuke Kawaguchi
be195b0e19
[FIXED SECURITY-150]
...
Integrated the change
2014-10-01 08:21:06 -07:00
Kohsuke Kawaguchi
28d997704f
[FIXED SECURITY-159]
...
Bumping up dependencies to 1.3.1, with extra precaution to make
DiskFileItem non-serializable
2014-09-27 15:51:47 -07:00
Jesse Glick
695a66f196
1af88e8b7f incorrectly disabled all logging.
...
When we are allowing all callables through, we want to enable remote class loading
(just in case someone is using it legitimately), but continue logging callable issues.
Currently there is no remoting flag to allow remote class loading while logging it.
2014-09-25 09:25:15 -04:00
Kohsuke Kawaguchi
40c4a2f356
Got rid of the unused constants
2014-09-24 19:04:24 -07:00
Kohsuke Kawaguchi
4f733244e6
Moving MasterToSlaveFileCallable/SlaveToMasterFileCallable to the top level classes.
...
If we ever decide to develop a compatibility thunk library for these changes to help promote deployment in plugins,
then these classes being a nested type is problematic as they'll fail to load under onld Jenkins
2014-09-24 19:04:24 -07:00
Kohsuke Kawaguchi
1af88e8b7f
Disable classloading from slaves and other VMs connected to the master
2014-09-24 19:04:24 -07:00
Kohsuke Kawaguchi
c3a2069603
Added a 'ChannelConfigurator' extension point
...
... to intercept new Channel creation, which provides the opportunity to set up the new channel.
2014-09-24 19:04:24 -07:00
Jesse Glick
c5bda70bee
Reverting e47dc1d555.
...
The result of a misunderstanding.
BYPASS_LOG can be deleted by the time we release, and for its temporary purpose, runtime modification is not necessary.
2014-09-24 15:51:49 -04:00
Kohsuke Kawaguchi
e47dc1d555
I'm begging Jesse to keep those properties modifiable at runtime!
...
It would just provide so much flexibility that would come in handy for operators.
- One can control this feature from $JENKINS_HOME/groovy.init.d/*.groovy. When these are managed by Chef/puppet,
this make it very clean to apply this as a patch.
- The log file is getting too big and wants to rotate? No problem with quick groovy script from the console
(or from CLI if you need to do the same with 12 masters)
- Shipping the log over to network instead of local file? No problem!
I thought your primary concern of field being unreachable from outside is already addressed via @Restricted(NoExternalUse).
2014-09-24 10:51:21 -07:00