From 25bb2076a650d89f569b03952de52279bb5c8a3b Mon Sep 17 00:00:00 2001 From: Manuel Recena Date: Thu, 14 Sep 2017 20:31:10 +0200 Subject: [PATCH 1/6] [JENKINS-43786] Adapted the administrative monitor to the new UI definition --- .../message.jelly | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/resources/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor/message.jelly b/src/main/resources/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor/message.jelly index 31657fab..5f273b6b 100644 --- a/src/main/resources/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor/message.jelly +++ b/src/main/resources/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor/message.jelly @@ -23,7 +23,7 @@ THE SOFTWARE. --> -
-

SSH Host Key Verifiers are not configured for all SSH slaves on this Jenkins instance. This could leave these slaves open to man-in-the-middle attacks. Update your slave configuration to resolve this.

-
+
+ SSH Host Key Verifiers are not configured for all SSH slaves on this Jenkins instance. This could leave these slaves open to man-in-the-middle attacks. Update your slave configuration to resolve this. +
\ No newline at end of file From fc05f375a378b98119882a7421efb0fd243e0c26 Mon Sep 17 00:00:00 2001 From: Manuel Recena Date: Sun, 29 Oct 2017 16:00:45 +0100 Subject: [PATCH 2/6] [JENKINS-43786] More compatible version --- ...gVerificationStrategyAdministrativeMonitor.java | 14 +++++++++++++- .../message.jelly | 12 +++++++++++- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java b/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java index f66537b4..c4ad192f 100644 --- a/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java +++ b/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java @@ -29,6 +29,7 @@ import hudson.plugins.sshslaves.SSHLauncher; import hudson.slaves.ComputerLauncher; import hudson.slaves.SlaveComputer; +import hudson.util.VersionNumber; import jenkins.model.Jenkins; /** @@ -45,7 +46,7 @@ public boolean isActivated() { for (Computer computer : Jenkins.getActiveInstance().getComputers()) { if (computer instanceof SlaveComputer) { ComputerLauncher launcher = ((SlaveComputer) computer).getLauncher(); - + if (launcher instanceof SSHLauncher && null == ((SSHLauncher) launcher).getSshHostKeyVerificationStrategy()) { return true; } @@ -55,4 +56,15 @@ public boolean isActivated() { return false; } + /** + * This method can be removed when the baseline is updated to 2.88 + * + * @return If this version of the plugin is running on a Jenkins version where JENKINS-43786 is included. + */ + public boolean isTheNewDesignAvailable() { + if (Jenkins.getVersion().isNewerThan(new VersionNumber("2.88"))) { + return true; + } + return false; + } } diff --git a/src/main/resources/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor/message.jelly b/src/main/resources/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor/message.jelly index 5f273b6b..eda75c18 100644 --- a/src/main/resources/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor/message.jelly +++ b/src/main/resources/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor/message.jelly @@ -22,8 +22,18 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. --> - + + + +
+

SSH Host Key Verifiers are not configured for all SSH slaves on this Jenkins instance. This could leave these slaves open to man-in-the-middle attacks. Update your slave configuration to resolve this.

+
+
+ +
SSH Host Key Verifiers are not configured for all SSH slaves on this Jenkins instance. This could leave these slaves open to man-in-the-middle attacks. Update your slave configuration to resolve this.
+
+
\ No newline at end of file From faf2ae8253dd8bfb71f46eefe754cf63f8c0e34c Mon Sep 17 00:00:00 2001 From: Manuel Recena Date: Sun, 29 Oct 2017 22:26:55 +0100 Subject: [PATCH 3/6] [JENKINS-43786] Addressed a @daniel-beck's comment --- .../MissingVerificationStrategyAdministrativeMonitor.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java b/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java index c4ad192f..916289e5 100644 --- a/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java +++ b/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java @@ -31,6 +31,8 @@ import hudson.slaves.SlaveComputer; import hudson.util.VersionNumber; import jenkins.model.Jenkins; +import org.kohsuke.accmod.Restricted; +import org.kohsuke.accmod.restrictions.DoNotUse; /** * An administrative warning that checks all SSH slaves have a {@link SshHostKeyVerificationStrategy} @@ -61,6 +63,7 @@ public boolean isActivated() { * * @return If this version of the plugin is running on a Jenkins version where JENKINS-43786 is included. */ + @Restricted(DoNotUse.class) public boolean isTheNewDesignAvailable() { if (Jenkins.getVersion().isNewerThan(new VersionNumber("2.88"))) { return true; From 782cff7aab42f2b3e7381083eddff18186c6bd8d Mon Sep 17 00:00:00 2001 From: Manuel Recena Date: Tue, 23 Jan 2018 11:26:14 +0100 Subject: [PATCH 4/6] [JENKINS-43786] Updated some details before merging --- .../MissingVerificationStrategyAdministrativeMonitor.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java b/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java index 916289e5..7ca1dd82 100644 --- a/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java +++ b/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java @@ -59,13 +59,13 @@ public boolean isActivated() { } /** - * This method can be removed when the baseline is updated to 2.88 + * This method can be removed when the baseline is updated to 2.103 * - * @return If this version of the plugin is running on a Jenkins version where JENKINS-43786 is included. + * @return true if this version of the plugin is running on a Jenkins version where JENKINS-43786 is included. */ @Restricted(DoNotUse.class) public boolean isTheNewDesignAvailable() { - if (Jenkins.getVersion().isNewerThan(new VersionNumber("2.88"))) { + if (Jenkins.getVersion().isNewerThan(new VersionNumber("2.103"))) { return true; } return false; From 8e229244661689ed5a69e1dced77d34fc6f9b830 Mon Sep 17 00:00:00 2001 From: Manuel Recena Date: Sun, 28 Jan 2018 10:43:30 +0100 Subject: [PATCH 5/6] [JENKINS-43786] Checks possible NPE --- .../MissingVerificationStrategyAdministrativeMonitor.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java b/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java index 7ca1dd82..948841f9 100644 --- a/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java +++ b/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java @@ -65,7 +65,8 @@ public boolean isActivated() { */ @Restricted(DoNotUse.class) public boolean isTheNewDesignAvailable() { - if (Jenkins.getVersion().isNewerThan(new VersionNumber("2.103"))) { + final VersionNumber version = Jenkins.getVersion(); + if (version != null && version.isNewerThan(new VersionNumber("2.103"))) { return true; } return false; From 732ff1d1268009b94ff584e9fb531445c4e9d32c Mon Sep 17 00:00:00 2001 From: Oleg Nenashev Date: Fri, 16 Feb 2018 11:05:15 +0100 Subject: [PATCH 6/6] [JENKINS-43786] - Polish Javadoc to kick-off the build --- .../MissingVerificationStrategyAdministrativeMonitor.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java b/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java index 948841f9..08c2c902 100644 --- a/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java +++ b/src/main/java/hudson/plugins/sshslaves/verifiers/MissingVerificationStrategyAdministrativeMonitor.java @@ -58,9 +58,8 @@ public boolean isActivated() { return false; } + //TODO: This method can be removed when the baseline is updated to 2.103. /** - * This method can be removed when the baseline is updated to 2.103 - * * @return true if this version of the plugin is running on a Jenkins version where JENKINS-43786 is included. */ @Restricted(DoNotUse.class)