diff --git a/core/src/main/java/hudson/model/AbstractProject.java b/core/src/main/java/hudson/model/AbstractProject.java index b5bfed309e20172d9351a0763a810bcde1884b1e..dc6d774a3062e88685b9a1f296f009bbd2fcd583 100644 --- a/core/src/main/java/hudson/model/AbstractProject.java +++ b/core/src/main/java/hudson/model/AbstractProject.java @@ -922,6 +922,7 @@ public abstract class AbstractProject

,R extends A * Serves the workspace files. */ public void doWs( StaplerRequest req, StaplerResponse rsp ) throws IOException, ServletException, InterruptedException { + checkPermission(AbstractProject.WORKSPACE); FilePath ws = getWorkspace(); if(!ws.exists()) { // if there's no workspace, report a nice error message @@ -1009,6 +1010,7 @@ public abstract class AbstractProject

,R extends A private static final Logger LOGGER = Logger.getLogger(AbstractProject.class.getName()); public static final Permission BUILD = new Permission(PERMISSIONS, "Build", Permission.UPDATE); + public static final Permission WORKSPACE = new Permission(PERMISSIONS, "Workspace", Permission.READ); /** * Permission to abort a build. For now, let's make it the same as {@link #BUILD} */ diff --git a/core/src/main/resources/hudson/maven/MavenModuleSet/index.jelly b/core/src/main/resources/hudson/maven/MavenModuleSet/index.jelly index 84fba8cbef958b08582b806936346e0cbfb91141..e0ae6b45e823fefc4f7ad1510aa33b3fba07392a 100644 --- a/core/src/main/resources/hudson/maven/MavenModuleSet/index.jelly +++ b/core/src/main/resources/hudson/maven/MavenModuleSet/index.jelly @@ -14,7 +14,7 @@ ${act.displayName} - + ${%Workspace} diff --git a/core/src/main/resources/hudson/model/AbstractProject/main.jelly b/core/src/main/resources/hudson/model/AbstractProject/main.jelly index def74dd4da084163f0f691bc2633177f13ad3b6e..0ef916a14f3dbdf1439de9f8099447b5c6f45af5 100644 --- a/core/src/main/resources/hudson/model/AbstractProject/main.jelly +++ b/core/src/main/resources/hudson/model/AbstractProject/main.jelly @@ -8,7 +8,7 @@ ${act.displayName} - + ${%Workspace} diff --git a/core/src/main/resources/hudson/model/AbstractProject/sidepanel.jelly b/core/src/main/resources/hudson/model/AbstractProject/sidepanel.jelly index 99548671f42ad6c13d103170e6756697236cb199..3797dcee96fa4e43e6bcbfe6efb7d05912bfa028 100644 --- a/core/src/main/resources/hudson/model/AbstractProject/sidepanel.jelly +++ b/core/src/main/resources/hudson/model/AbstractProject/sidepanel.jelly @@ -13,7 +13,7 @@ - + diff --git a/core/src/main/resources/lib/hudson/summary.jelly b/core/src/main/resources/lib/hudson/summary.jelly index 7d2cd2dee393b3060c2e0146b27db77a22acef53..193c67a3e53b653ff7f690668c06fad7edd5c5fe 100644 --- a/core/src/main/resources/lib/hudson/summary.jelly +++ b/core/src/main/resources/lib/hudson/summary.jelly @@ -9,21 +9,25 @@ Attributes: where the summary icon links to. iconOnly (optional) if true, hyperlink will only cover the icon, not the body. + permission (optional) + permission object. If specified, the link will be displayed only if you have a permission --> - - - - - - - - - - - - - + + + + + + + + + + + + + + + \ No newline at end of file