Windows JDK installer should not install a public JRE.
(issue 8957)
+
+ Split matrix authorization strategies into an independent plugin.
SCM polling sometimes broken since 1.527 due to a change in how environment variables are calculated.
(issue 19307)
diff --git a/core/src/main/java/hudson/ClassicPluginStrategy.java b/core/src/main/java/hudson/ClassicPluginStrategy.java
index e4d158128cf731d42d0bfd220e0fafdeb6e4ed0c..578fe58ef22dcd46f41281ec57a0c8624dc39800 100644
--- a/core/src/main/java/hudson/ClassicPluginStrategy.java
+++ b/core/src/main/java/hudson/ClassicPluginStrategy.java
@@ -272,7 +272,8 @@ public class ClassicPluginStrategy implements PluginStrategy {
new DetachedPlugin("external-monitor-job","1.467.*","1.0"),
new DetachedPlugin("ldap","1.467.*","1.0"),
new DetachedPlugin("pam-auth","1.467.*","1.0"),
- new DetachedPlugin("mailer","1.493.*","1.2")
+ new DetachedPlugin("mailer","1.493.*","1.2"),
+ new DetachedPlugin("matrix-auth","1.535.*","1.0")
);
/**
diff --git a/core/src/main/java/hudson/security/AuthorizationMatrixProperty.java b/core/src/main/java/hudson/security/AuthorizationMatrixProperty.java
deleted file mode 100644
index 88c6cee95055ea73c71bc28174ee7dd62873452e..0000000000000000000000000000000000000000
--- a/core/src/main/java/hudson/security/AuthorizationMatrixProperty.java
+++ /dev/null
@@ -1,285 +0,0 @@
-/*
- * The MIT License
- *
- * Copyright (c) 2004-2010, Sun Microsystems, Inc., Kohsuke Kawaguchi, Yahoo! Inc., Peter Hayes, Tom Huybrechts
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-package hudson.security;
-
-import hudson.diagnosis.OldDataMonitor;
-import hudson.model.Item;
-import hudson.model.Job;
-import hudson.model.JobProperty;
-import hudson.model.JobPropertyDescriptor;
-import jenkins.model.Jenkins;
-import hudson.Extension;
-import hudson.util.FormValidation;
-import hudson.util.RobustReflectionConverter;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.Collections;
-import java.util.Map.Entry;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-import java.io.IOException;
-
-import net.sf.json.JSONObject;
-
-import org.acegisecurity.acls.sid.Sid;
-import org.kohsuke.stapler.StaplerRequest;
-import org.kohsuke.stapler.QueryParameter;
-import org.kohsuke.stapler.AncestorInPath;
-
-import com.thoughtworks.xstream.converters.Converter;
-import com.thoughtworks.xstream.converters.MarshallingContext;
-import com.thoughtworks.xstream.converters.UnmarshallingContext;
-import com.thoughtworks.xstream.io.HierarchicalStreamReader;
-import com.thoughtworks.xstream.io.HierarchicalStreamWriter;
-
-import javax.servlet.ServletException;
-
-/**
- * {@link JobProperty} to associate ACL for each project.
- *
- *
- * Once created (and initialized), this object becomes immutable.
- */
-public class AuthorizationMatrixProperty extends JobProperty> {
-
- private transient SidACL acl = new AclImpl();
-
- /**
- * List up all permissions that are granted.
- *
- * Strings are either the granted authority or the principal, which is not
- * distinguished.
- */
- private final Map> grantedPermissions = new HashMap>();
-
- private Set sids = new HashSet();
-
- private AuthorizationMatrixProperty() {
- }
-
- public AuthorizationMatrixProperty(Map> grantedPermissions) {
- // do a deep copy to be safe
- for (Entry> e : grantedPermissions.entrySet())
- this.grantedPermissions.put(e.getKey(),new HashSet(e.getValue()));
- }
-
- public Set getGroups() {
- return sids;
- }
-
- /**
- * Returns all SIDs configured in this matrix, minus "anonymous"
- *
- * @return Always non-null.
- */
- public List getAllSIDs() {
- Set r = new HashSet();
- for (Set set : grantedPermissions.values())
- r.addAll(set);
- r.remove("anonymous");
-
- String[] data = r.toArray(new String[r.size()]);
- Arrays.sort(data);
- return Arrays.asList(data);
- }
-
- /**
- * Returns all the (Permission,sid) pairs that are granted, in the multi-map form.
- *
- * @return
- * read-only. never null.
- */
- public Map> getGrantedPermissions() {
- return Collections.unmodifiableMap(grantedPermissions);
- }
-
- /**
- * Adds to {@link #grantedPermissions}. Use of this method should be limited
- * during construction, as this object itself is considered immutable once
- * populated.
- */
- protected void add(Permission p, String sid) {
- Set set = grantedPermissions.get(p);
- if (set == null)
- grantedPermissions.put(p, set = new HashSet());
- set.add(sid);
- sids.add(sid);
- }
-
- @Extension
- public static class DescriptorImpl extends JobPropertyDescriptor {
- @Override
- public JobProperty> newInstance(StaplerRequest req, JSONObject formData) throws FormException {
- formData = formData.getJSONObject("useProjectSecurity");
- if (formData.isNullObject())
- return null;
-
- AuthorizationMatrixProperty amp = new AuthorizationMatrixProperty();
- for (Map.Entry r : (Set>) formData.getJSONObject("data").entrySet()) {
- String sid = r.getKey();
- if (r.getValue() instanceof JSONObject) {
- for (Map.Entry e : (Set>) ((JSONObject) r
- .getValue()).entrySet()) {
- if (e.getValue()) {
- Permission p = Permission.fromId(e.getKey());
- amp.add(p, sid);
- }
- }
- }
- }
- return amp;
- }
-
- @Override
- public boolean isApplicable(Class extends Job> jobType) {
- // only applicable when ProjectMatrixAuthorizationStrategy is in charge
- return Jenkins.getInstance().getAuthorizationStrategy() instanceof ProjectMatrixAuthorizationStrategy;
- }
-
- @Override
- public String getDisplayName() {
- return "Authorization Matrix";
- }
-
- public List getAllGroups() {
- List r = new ArrayList();
- for (PermissionGroup pg : PermissionGroup.getAll()) {
- if (pg.hasPermissionContainedBy(PermissionScope.ITEM))
- r.add(pg);
- }
- return r;
- }
-
- public boolean showPermission(Permission p) {
- return p.getEnabled() && p.isContainedBy(PermissionScope.ITEM);
- }
-
- public FormValidation doCheckName(@AncestorInPath Job project, @QueryParameter String value) throws IOException, ServletException {
- return GlobalMatrixAuthorizationStrategy.DESCRIPTOR.doCheckName_(value, project, Item.CONFIGURE);
- }
- }
-
- private final class AclImpl extends SidACL {
- protected Boolean hasPermission(Sid sid, Permission p) {
- if (AuthorizationMatrixProperty.this.hasPermission(toString(sid),p))
- return true;
- return null;
- }
- }
-
- public SidACL getACL() {
- return acl;
- }
-
- /**
- * Checks if the given SID has the given permission.
- */
- public boolean hasPermission(String sid, Permission p) {
- for (; p != null; p = p.impliedBy) {
- Set set = grantedPermissions.get(p);
- if (set != null && set.contains(sid))
- return true;
- }
- return false;
- }
-
- /**
- * Checks if the permission is explicitly given, instead of implied through {@link Permission#impliedBy}.
- */
- public boolean hasExplicitPermission(String sid, Permission p) {
- Set set = grantedPermissions.get(p);
- return set != null && set.contains(sid);
- }
-
- /**
- * Works like {@link #add(Permission, String)} but takes both parameters
- * from a single string of the form PERMISSIONID:sid
- */
- private void add(String shortForm) {
- int idx = shortForm.indexOf(':');
- Permission p = Permission.fromId(shortForm.substring(0, idx));
- if (p==null)
- throw new IllegalArgumentException("Failed to parse '"+shortForm+"' --- no such permission");
- add(p, shortForm.substring(idx + 1));
- }
-
- /**
- * Persist {@link ProjectMatrixAuthorizationStrategy} as a list of IDs that
- * represent {@link ProjectMatrixAuthorizationStrategy#grantedPermissions}.
- */
- public static final class ConverterImpl implements Converter {
- public boolean canConvert(Class type) {
- return type == AuthorizationMatrixProperty.class;
- }
-
- public void marshal(Object source, HierarchicalStreamWriter writer,
- MarshallingContext context) {
- AuthorizationMatrixProperty amp = (AuthorizationMatrixProperty) source;
-
- for (Entry> e : amp.grantedPermissions
- .entrySet()) {
- String p = e.getKey().getId();
- for (String sid : e.getValue()) {
- writer.startNode("permission");
- writer.setValue(p + ':' + sid);
- writer.endNode();
- }
- }
- }
-
- public Object unmarshal(HierarchicalStreamReader reader,
- final UnmarshallingContext context) {
- AuthorizationMatrixProperty as = new AuthorizationMatrixProperty();
-
- String prop = reader.peekNextChild();
- if (prop!=null && prop.equals("useProjectSecurity")) {
- reader.moveDown();
- reader.getValue(); // we used to use this but not any more.
- reader.moveUp();
- }
- while (reader.hasMoreChildren()) {
- reader.moveDown();
- try {
- as.add(reader.getValue());
- } catch (IllegalArgumentException ex) {
- Logger.getLogger(AuthorizationMatrixProperty.class.getName())
- .log(Level.WARNING,"Skipping a non-existent permission",ex);
- RobustReflectionConverter.addErrorInContext(context, ex);
- }
- reader.moveUp();
- }
-
- if (GlobalMatrixAuthorizationStrategy.migrateHudson2324(as.grantedPermissions))
- OldDataMonitor.report(context, "1.301");
-
- return as;
- }
- }
-}
diff --git a/core/src/main/java/hudson/security/GlobalMatrixAuthorizationStrategy.java b/core/src/main/java/hudson/security/GlobalMatrixAuthorizationStrategy.java
deleted file mode 100644
index 764be2e9ef0edb590ec04ad307e712f20f13cd2c..0000000000000000000000000000000000000000
--- a/core/src/main/java/hudson/security/GlobalMatrixAuthorizationStrategy.java
+++ /dev/null
@@ -1,349 +0,0 @@
-/*
- * The MIT License
- *
- * Copyright (c) 2004-2010, Sun Microsystems, Inc., Kohsuke Kawaguchi, Yahoo! Inc.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-package hudson.security;
-
-import com.thoughtworks.xstream.converters.Converter;
-import com.thoughtworks.xstream.converters.MarshallingContext;
-import com.thoughtworks.xstream.converters.UnmarshallingContext;
-import com.thoughtworks.xstream.io.HierarchicalStreamReader;
-import com.thoughtworks.xstream.io.HierarchicalStreamWriter;
-import hudson.diagnosis.OldDataMonitor;
-import hudson.model.Descriptor;
-import jenkins.model.Jenkins;
-import hudson.model.Item;
-import hudson.util.FormValidation;
-import hudson.util.FormValidation.Kind;
-import hudson.util.VersionNumber;
-import hudson.util.RobustReflectionConverter;
-import hudson.Functions;
-import hudson.Extension;
-import net.sf.json.JSONObject;
-import org.acegisecurity.AuthenticationException;
-import org.acegisecurity.userdetails.UsernameNotFoundException;
-import org.acegisecurity.acls.sid.Sid;
-import org.kohsuke.stapler.Stapler;
-import org.kohsuke.stapler.StaplerRequest;
-import org.kohsuke.stapler.QueryParameter;
-import org.springframework.dao.DataAccessException;
-
-import javax.servlet.ServletException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.Set;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-import java.io.IOException;
-import java.util.Collections;
-import java.util.SortedMap;
-import java.util.TreeMap;
-
-/**
- * Role-based authorization via a matrix.
- *
- * @author Kohsuke Kawaguchi
- */
-// TODO: think about the concurrency commitment of this class
-public class GlobalMatrixAuthorizationStrategy extends AuthorizationStrategy {
- private transient SidACL acl = new AclImpl();
-
- /**
- * List up all permissions that are granted.
- *
- * Strings are either the granted authority or the principal,
- * which is not distinguished.
- */
- private final Map> grantedPermissions = new HashMap>();
-
- private final Set sids = new HashSet();
-
- /**
- * Adds to {@link #grantedPermissions}.
- * Use of this method should be limited during construction,
- * as this object itself is considered immutable once populated.
- */
- public void add(Permission p, String sid) {
- if (p==null)
- throw new IllegalArgumentException();
- Set set = grantedPermissions.get(p);
- if(set==null)
- grantedPermissions.put(p,set = new HashSet());
- set.add(sid);
- sids.add(sid);
- }
-
- /**
- * Works like {@link #add(Permission, String)} but takes both parameters
- * from a single string of the form PERMISSIONID:sid
- */
- private void add(String shortForm) {
- int idx = shortForm.indexOf(':');
- Permission p = Permission.fromId(shortForm.substring(0, idx));
- if (p==null)
- throw new IllegalArgumentException("Failed to parse '"+shortForm+"' --- no such permission");
- add(p,shortForm.substring(idx+1));
- }
-
- @Override
- public SidACL getRootACL() {
- return acl;
- }
-
- public Set getGroups() {
- return sids;
- }
-
- /**
- * Due to HUDSON-2324, we want to inject Item.READ permission to everyone who has Hudson.READ,
- * to remain backward compatible.
- * @param grantedPermissions
- */
- /*package*/ static boolean migrateHudson2324(Map> grantedPermissions) {
- boolean result = false;
- if(Jenkins.getInstance().isUpgradedFromBefore(new VersionNumber("1.300.*"))) {
- Set f = grantedPermissions.get(Jenkins.READ);
- if (f!=null) {
- Set t = grantedPermissions.get(Item.READ);
- if (t!=null)
- result = t.addAll(f);
- else {
- t = new HashSet(f);
- result = true;
- }
- grantedPermissions.put(Item.READ,t);
- }
- }
- return result;
- }
-
- /**
- * Checks if the given SID has the given permission.
- */
- public boolean hasPermission(String sid, Permission p) {
- for(; p!=null; p=p.impliedBy) {
- Set set = grantedPermissions.get(p);
- if(set!=null && set.contains(sid) && p.getEnabled())
- return true;
- }
- return false;
- }
-
- /**
- * Checks if the permission is explicitly given, instead of implied through {@link Permission#impliedBy}.
- */
- public boolean hasExplicitPermission(String sid, Permission p) {
- Set set = grantedPermissions.get(p);
- return set != null && set.contains(sid) && p.getEnabled();
- }
-
- /**
- * Returns all SIDs configured in this matrix, minus "anonymous"
- *
- * @return
- * Always non-null.
- */
- public List getAllSIDs() {
- Set r = new HashSet();
- for (Set set : grantedPermissions.values())
- r.addAll(set);
- r.remove("anonymous");
-
- String[] data = r.toArray(new String[r.size()]);
- Arrays.sort(data);
- return Arrays.asList(data);
- }
-
- private final class AclImpl extends SidACL {
- protected Boolean hasPermission(Sid p, Permission permission) {
- if(GlobalMatrixAuthorizationStrategy.this.hasPermission(toString(p),permission))
- return true;
- return null;
- }
- }
-
- @Extension
- public static final DescriptorImpl DESCRIPTOR = new DescriptorImpl();
-
- /**
- * Persist {@link GlobalMatrixAuthorizationStrategy} as a list of IDs that
- * represent {@link GlobalMatrixAuthorizationStrategy#grantedPermissions}.
- */
- public static class ConverterImpl implements Converter {
- public boolean canConvert(Class type) {
- return type==GlobalMatrixAuthorizationStrategy.class;
- }
-
- public void marshal(Object source, HierarchicalStreamWriter writer, MarshallingContext context) {
- GlobalMatrixAuthorizationStrategy strategy = (GlobalMatrixAuthorizationStrategy)source;
-
- // Output in alphabetical order for readability.
- SortedMap> sortedPermissions = new TreeMap>(Permission.ID_COMPARATOR);
- sortedPermissions.putAll(strategy.grantedPermissions);
- for (Entry> e : sortedPermissions.entrySet()) {
- String p = e.getKey().getId();
- List sids = new ArrayList(e.getValue());
- Collections.sort(sids);
- for (String sid : sids) {
- writer.startNode("permission");
- writer.setValue(p+':'+sid);
- writer.endNode();
- }
- }
-
- }
-
- public Object unmarshal(HierarchicalStreamReader reader, final UnmarshallingContext context) {
- GlobalMatrixAuthorizationStrategy as = create();
-
- while (reader.hasMoreChildren()) {
- reader.moveDown();
- try {
- as.add(reader.getValue());
- } catch (IllegalArgumentException ex) {
- Logger.getLogger(GlobalMatrixAuthorizationStrategy.class.getName())
- .log(Level.WARNING,"Skipping a non-existent permission",ex);
- RobustReflectionConverter.addErrorInContext(context, ex);
- }
- reader.moveUp();
- }
-
- if (migrateHudson2324(as.grantedPermissions))
- OldDataMonitor.report(context, "1.301");
-
- return as;
- }
-
- protected GlobalMatrixAuthorizationStrategy create() {
- return new GlobalMatrixAuthorizationStrategy();
- }
- }
-
- public static class DescriptorImpl extends Descriptor {
- protected DescriptorImpl(Class extends GlobalMatrixAuthorizationStrategy> clazz) {
- super(clazz);
- }
-
- public DescriptorImpl() {
- }
-
- public String getDisplayName() {
- return Messages.GlobalMatrixAuthorizationStrategy_DisplayName();
- }
-
- @Override
- public AuthorizationStrategy newInstance(StaplerRequest req, JSONObject formData) throws FormException {
- GlobalMatrixAuthorizationStrategy gmas = create();
- for(Map.Entry r : (Set>)formData.getJSONObject("data").entrySet()) {
- String sid = r.getKey();
- for(Map.Entry e : (Set>)r.getValue().entrySet()) {
- if(e.getValue()) {
- Permission p = Permission.fromId(e.getKey());
- gmas.add(p,sid);
- }
- }
- }
- return gmas;
- }
-
- protected GlobalMatrixAuthorizationStrategy create() {
- return new GlobalMatrixAuthorizationStrategy();
- }
-
- public List getAllGroups() {
- List groups = new ArrayList(PermissionGroup.getAll());
- groups.remove(PermissionGroup.get(Permission.class));
- return groups;
- }
-
- public boolean showPermission(Permission p) {
- return p.getEnabled();
- }
-
- public FormValidation doCheckName(@QueryParameter String value ) throws IOException, ServletException {
- return doCheckName_(value, Jenkins.getInstance(), Jenkins.ADMINISTER);
- }
-
- public FormValidation doCheckName_(String value, AccessControlled subject, Permission permission) throws IOException, ServletException {
- if(!subject.hasPermission(permission)) return FormValidation.ok(); // can't check
-
- final String v = value.substring(1,value.length()-1);
- SecurityRealm sr = Jenkins.getInstance().getSecurityRealm();
- String ev = Functions.escape(v);
-
- if(v.equals("authenticated"))
- // system reserved group
- return FormValidation.respond(Kind.OK, makeImg("user.png") +ev);
-
- try {
- try {
- sr.loadUserByUsername(v);
- return FormValidation.respond(Kind.OK, makeImg("person.png")+ev);
- } catch (UserMayOrMayNotExistException e) {
- // undecidable, meaning the user may exist
- return FormValidation.respond(Kind.OK, ev);
- } catch (UsernameNotFoundException e) {
- // fall through next
- } catch (DataAccessException e) {
- // fall through next
- } catch (AuthenticationException e) {
- // other seemingly unexpected error.
- return FormValidation.error(e,"Failed to test the validity of the user name "+v);
- }
-
- try {
- sr.loadGroupByGroupname(v);
- return FormValidation.respond(Kind.OK, makeImg("user.png") +ev);
- } catch (UserMayOrMayNotExistException e) {
- // undecidable, meaning the group may exist
- return FormValidation.respond(Kind.OK, ev);
- } catch (UsernameNotFoundException e) {
- // fall through next
- } catch (DataAccessException e) {
- // fall through next
- } catch (AuthenticationException e) {
- // other seemingly unexpected error.
- return FormValidation.error(e,"Failed to test the validity of the group name "+v);
- }
-
- // couldn't find it. it doesn't exist
- return FormValidation.respond(Kind.ERROR, makeImg("error.png") +ev);
- } catch (Exception e) {
- // if the check fails miserably, we still want the user to be able to see the name of the user,
- // so use 'ev' as the message
- return FormValidation.error(e,ev);
- }
- }
-
- private String makeImg(String gif) {
- return String.format("", Stapler.getCurrentRequest().getContextPath(), Jenkins.RESOURCE_PATH, gif);
- }
- }
-
- private static final Logger LOGGER = Logger.getLogger(GlobalMatrixAuthorizationStrategy.class.getName());
-}
-
diff --git a/core/src/main/java/hudson/security/HudsonPrivateSecurityRealm.java b/core/src/main/java/hudson/security/HudsonPrivateSecurityRealm.java
index d7531637a2d3ba9776715e7e81c6aef936073ac3..40d4b43dbf399e4f3a24b4c760676eefea6281fa 100644
--- a/core/src/main/java/hudson/security/HudsonPrivateSecurityRealm.java
+++ b/core/src/main/java/hudson/security/HudsonPrivateSecurityRealm.java
@@ -51,7 +51,6 @@ import org.acegisecurity.providers.encoding.PasswordEncoder;
import org.acegisecurity.providers.encoding.ShaPasswordEncoder;
import org.acegisecurity.userdetails.UserDetails;
import org.acegisecurity.userdetails.UsernameNotFoundException;
-import org.apache.tools.ant.taskdefs.email.Mailer;
import org.kohsuke.stapler.DataBoundConstructor;
import org.kohsuke.stapler.ForwardToView;
import org.kohsuke.stapler.HttpResponse;
@@ -73,7 +72,6 @@ import javax.servlet.http.HttpServletResponse;
import static javax.servlet.http.HttpServletResponse.SC_UNAUTHORIZED;
import java.io.IOException;
import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
import java.security.SecureRandom;
import java.util.ArrayList;
import java.util.Collections;
@@ -280,9 +278,10 @@ public class HudsonPrivateSecurityRealm extends AbstractPasswordBasedSecurityRea
*/
private void tryToMakeAdmin(User u) {
AuthorizationStrategy as = Jenkins.getInstance().getAuthorizationStrategy();
- if (as instanceof GlobalMatrixAuthorizationStrategy) {
- GlobalMatrixAuthorizationStrategy ma = (GlobalMatrixAuthorizationStrategy) as;
- ma.add(Jenkins.ADMINISTER,u.getId());
+ for (PermissionAdder adder : Jenkins.getInstance().getExtensionList(PermissionAdder.class)) {
+ if (adder.add(as, u, Jenkins.ADMINISTER)) {
+ return;
+ }
}
}
diff --git a/core/src/main/java/hudson/security/PermissionAdder.java b/core/src/main/java/hudson/security/PermissionAdder.java
new file mode 100644
index 0000000000000000000000000000000000000000..b2948356eba4aa8232a6b335f9b3eec62f99b63b
--- /dev/null
+++ b/core/src/main/java/hudson/security/PermissionAdder.java
@@ -0,0 +1,72 @@
+/*
+ * The MIT License
+ *
+ * Copyright 2013 Jesse Glick.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
+package hudson.security;
+
+import hudson.Extension;
+import hudson.ExtensionPoint;
+import hudson.model.User;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import jenkins.model.Jenkins;
+import org.kohsuke.accmod.Restricted;
+import org.kohsuke.accmod.restrictions.NoExternalUse;
+
+/**
+ * Service which can add permissions for a given user to the configured authorization strategy.
+ * Useful e.g. to make the first user created in the system be automatically granted administer privilege.
+ * @since 1.535
+ */
+public abstract class PermissionAdder implements ExtensionPoint {
+
+ private static final Logger LOGGER = Logger.getLogger(PermissionAdder.class.getName());
+
+ /**
+ * Called to try to give a user global permission.
+ * @param strategy the configured authorization strategy
+ * @param user a user
+ * @param perm a permission to grant, such as {@link Jenkins#ADMINISTER}
+ * @return true if the permission was added, false if this service is incapable of handling it
+ */
+ public abstract boolean add(AuthorizationStrategy strategy, User user, Permission perm);
+
+ // TODO delete when 1.535 released and matrix-auth can depend on it
+ @Restricted(NoExternalUse.class)
+ @Extension public static final class Legacy extends PermissionAdder {
+
+ @Override public boolean add(AuthorizationStrategy strategy, User user, Permission perm) {
+ try {
+ strategy.getClass().getMethod("add", Permission.class, String.class).invoke(strategy, Jenkins.ADMINISTER, user.getId());
+ return true;
+ } catch (NoSuchMethodException x) {
+ // fine, not GlobalMatrixAuthorizationStrategy or a subclass
+ } catch (Exception x) {
+ LOGGER.log(Level.WARNING, null, x);
+ }
+ return false;
+ }
+
+ }
+
+}
diff --git a/core/src/main/java/hudson/security/ProjectMatrixAuthorizationStrategy.java b/core/src/main/java/hudson/security/ProjectMatrixAuthorizationStrategy.java
deleted file mode 100644
index aeaf578f71216f909a4b8e7aa0e69b593fbf82c8..0000000000000000000000000000000000000000
--- a/core/src/main/java/hudson/security/ProjectMatrixAuthorizationStrategy.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * The MIT License
- *
- * Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Yahoo! Inc., Seiji Sogabe, Tom Huybrechts
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-package hudson.security;
-
-import hudson.model.AbstractItem;
-import hudson.model.Descriptor;
-import jenkins.model.Jenkins;
-import hudson.model.Item;
-import hudson.model.ItemGroup;
-import hudson.model.Job;
-import hudson.util.RobustReflectionConverter;
-import hudson.Extension;
-import com.thoughtworks.xstream.io.HierarchicalStreamReader;
-import com.thoughtworks.xstream.converters.UnmarshallingContext;
-import com.thoughtworks.xstream.mapper.Mapper;
-import com.thoughtworks.xstream.core.JVM;
-
-import java.util.HashSet;
-import java.util.Set;
-
-/**
- * {@link GlobalMatrixAuthorizationStrategy} plus per-project ACL.
- *
- *
- * Per-project ACL is stored in {@link AuthorizationMatrixProperty}.
- *
- * @author Kohsuke Kawaguchi
- */
-public class ProjectMatrixAuthorizationStrategy extends GlobalMatrixAuthorizationStrategy {
- @Override
- public ACL getACL(Job,?> project) {
- AuthorizationMatrixProperty amp = project.getProperty(AuthorizationMatrixProperty.class);
- if (amp != null) {
- return amp.getACL().newInheritingACL(getACL(project.getParent()));
- } else {
- return getACL(project.getParent());
- }
- }
-
- public SidACL getACL(ItemGroup g) {
- if (g instanceof Item) {
- Item item = (Item) g;
- return (SidACL)item.getACL();
- }
- return getRootACL();
- }
-
- @Override
- public SidACL getACL(AbstractItem item) {
- return getACL(item.getParent());
- }
-
- @Override
- public Set getGroups() {
- Set r = new HashSet();
- r.addAll(super.getGroups());
- for (Job,?> j : Jenkins.getInstance().getItems(Job.class)) {
- AuthorizationMatrixProperty amp = j.getProperty(AuthorizationMatrixProperty.class);
- if (amp != null)
- r.addAll(amp.getGroups());
- }
- return r;
- }
-
- @Extension
- public static final Descriptor DESCRIPTOR = new DescriptorImpl() {
- @Override
- protected GlobalMatrixAuthorizationStrategy create() {
- return new ProjectMatrixAuthorizationStrategy();
- }
-
- @Override
- public String getDisplayName() {
- return Messages.ProjectMatrixAuthorizationStrategy_DisplayName();
- }
- };
-
- public static class ConverterImpl extends GlobalMatrixAuthorizationStrategy.ConverterImpl {
- private RobustReflectionConverter ref;
-
- public ConverterImpl(Mapper m) {
- ref = new RobustReflectionConverter(m,new JVM().bestReflectionProvider());
- }
-
- @Override
- protected GlobalMatrixAuthorizationStrategy create() {
- return new ProjectMatrixAuthorizationStrategy();
- }
-
- @Override
- public Object unmarshal(HierarchicalStreamReader reader, UnmarshallingContext context) {
- String name = reader.peekNextChild();
- if(name!=null && (name.equals("permission") || name.equals("useProjectSecurity")))
- // the proper serialization form
- return super.unmarshal(reader, context);
- else
- // remain compatible with earlier problem where we used reflection converter
- return ref.unmarshal(reader,context);
- }
-
- @Override
- public boolean canConvert(Class type) {
- return type==ProjectMatrixAuthorizationStrategy.class;
- }
- }
-}
-
diff --git a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config.jelly b/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config.jelly
deleted file mode 100644
index b3a219bc7a181b93a202c7cd1eaa2a8a1821a8c0..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config.jelly
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_da.properties b/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_da.properties
deleted file mode 100644
index b51d973595bb613e8827e51b2913df341d06c9a7..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_da.properties
+++ /dev/null
@@ -1,23 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2010, Sun Microsystems, Inc. Kohsuke Kawaguchi. Knud Poulsen.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Enable\ project-based\ security=Sl\u00e5 projektbaseret adgangskontrol til
diff --git a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_de.properties b/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_de.properties
deleted file mode 100644
index 09962dfad54435fc639717a5fef932712c769b4b..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_de.properties
+++ /dev/null
@@ -1 +0,0 @@
-Enable\ project-based\ security=Projektbasierte Sicherheit aktivieren
diff --git a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_es.properties b/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_es.properties
deleted file mode 100644
index ff2d46965a95bd50bcbfe992bff18ce2c011ab2e..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_es.properties
+++ /dev/null
@@ -1,23 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2010, Sun Microsystems, Inc.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Enable\ project-based\ security=Habilitar seguridad en el projecto
diff --git a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_fr.properties b/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_fr.properties
deleted file mode 100644
index eaa01eb9fd320757961922aa220c8f6940d8bbca..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_fr.properties
+++ /dev/null
@@ -1,23 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Eric Lefevre-Ardant
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Enable\ project-based\ security=Activer la scurit base projet
diff --git a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_ja.properties b/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_ja.properties
deleted file mode 100644
index 3adb7b68701c83ccb2e3112efb90bdee4b04c69b..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_ja.properties
+++ /dev/null
@@ -1,23 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2010, Sun Microsystems, Inc., Kohsuke Kawaguchi, Seiji Sogabe
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Enable\ project-based\ security=\u6A29\u9650\u8A2D\u5B9A(\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u5358\u4F4D)\u306E\u6709\u52B9\u5316
diff --git a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_pt_BR.properties b/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_pt_BR.properties
deleted file mode 100644
index 55c8f8103ee643bce2ba734428e79d48433c27b9..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_pt_BR.properties
+++ /dev/null
@@ -1,23 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Reginaldo L. Russinholi, Cleiber Silva
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Enable\ project-based\ security=Habilitar seguran\u00e7a baseada em projeto
diff --git a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_tr.properties b/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_tr.properties
deleted file mode 100644
index bcc98aa2a1b2d0884d12c8441dbc97fc51e965d1..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_tr.properties
+++ /dev/null
@@ -1,23 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Oguz Dag
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Enable\ project-based\ security=Proje tabanl\u0131 g\u00fcvenlik ayarlar\u0131n\u0131 devreye al
diff --git a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_zh_CN.properties b/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_zh_CN.properties
deleted file mode 100644
index d7d400a6186adab291d735a7b6b2e2a261c4d213..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_zh_CN.properties
+++ /dev/null
@@ -1 +0,0 @@
-Enable\ project-based\ security=\u542f\u7528\u9879\u76ee\u5b89\u5168
diff --git a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_zh_TW.properties b/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_zh_TW.properties
deleted file mode 100644
index cac3d883ea960a79d0e7939538c0b6fe03cdfdc8..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/AuthorizationMatrixProperty/config_zh_TW.properties
+++ /dev/null
@@ -1,23 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2013, Chunghwa Telecom Co., Ltd., Pei-Tang Huang
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Enable\ project-based\ security=\u555f\u7528\u5c08\u6848\u578b\u5b89\u5168\u6027\u8a2d\u5b9a
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config.jelly b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config.jelly
deleted file mode 100644
index 51a70d8ea055891594a2bb83fb3a12d930e6ac21..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config.jelly
+++ /dev/null
@@ -1,175 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_da.properties b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_da.properties
deleted file mode 100644
index 78c79a33cbbde90bab213c52c602fa9091785f55..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_da.properties
+++ /dev/null
@@ -1,27 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2010, Sun Microsystems, Inc. Kohsuke Kawaguchi. Knud Poulsen.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Anonymous=Anonym
-User/group\ to\ add=Brugergruppe der skal tilf\u00f8jes
-Add=Tilf\u00f8j
-Remove\ user/group=Fjern user/gruppe
-User/group=Bruger/gruppe
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_de.properties b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_de.properties
deleted file mode 100644
index 09e5858300364d433ee9a613d5174a09ed28a69a..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_de.properties
+++ /dev/null
@@ -1,28 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Simon Wiest
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Remove\ user/group=Nutzer/Gruppe entfernen
-Toggle\ all=Alles ausw\u00E4hlen
-User/group=Benutzer/Gruppe
-Anonymous=Anonym
-User/group\ to\ add=Weitere Benutzer/Gruppe
-Add=Hinzufgen
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_es.properties b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_es.properties
deleted file mode 100644
index 3ef3712be83a49a6150611c06f38b333ebed0703..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_es.properties
+++ /dev/null
@@ -1,28 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2010, Sun Microsystems, Inc.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-User/group=Usuario/Grupo
-Anonymous=Annimo
-User/group\ to\ add=Usuario/Grupo para aadir
-Add=Aadir
-Remove\ user/group=Borrar usuario/grupo
-Toggle\ all=Cambiar todo
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_fi.properties b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_fi.properties
deleted file mode 100644
index f293ef2a6e1e9f5e3fb8a94c65c9c3df92f82f35..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_fi.properties
+++ /dev/null
@@ -1,23 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2010, Sun Microsystems, Inc.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Remove\ user/group=Poista k\u00E4ytt\u00E4j\u00E4/ryhm\u00E4
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_fr.properties b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_fr.properties
deleted file mode 100644
index fbb1cc44e24807ab419e107151ca46de1cbd2ae5..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_fr.properties
+++ /dev/null
@@ -1,27 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Eric Lefevre-Ardant
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Remove\ user/group=Supprimer utilisateur/groupe
-User/group=Utilisateur/groupe
-Anonymous=Anonyme
-User/group\ to\ add=Utilisateur/groupe ajouter
-Add=Ajouter
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_ja.properties b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_ja.properties
deleted file mode 100644
index e5c4ae21424a460e0f96a88b5b93e64965a16089..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_ja.properties
+++ /dev/null
@@ -1,29 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2012, Sun Microsystems, Inc., Kohsuke Kawaguchi, Seiji Sogabe
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Add=\u8ffd\u52a0
-Anonymous=\u533f\u540d\u30e6\u30fc\u30b6\u30fc
-User/group=\u30e6\u30fc\u30b6\u30fc/\u30b0\u30eb\u30fc\u30d7
-User/group\ to\ add=\u8ffd\u52a0\u3059\u308b\u30e6\u30fc\u30b6\u30fc/\u30b0\u30eb\u30fc\u30d7
-
-Toggle\ all=\u3059\u3079\u3066\u53cd\u8ee2
-Remove\ user/group=\u30e6\u30fc\u30b6/\u30b0\u30eb\u30fc\u30d7\u3092\u524a\u9664
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_nb_NO.properties b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_nb_NO.properties
deleted file mode 100644
index 06f66ca6f9a765c076b02b789622f646c4addaef..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_nb_NO.properties
+++ /dev/null
@@ -1,26 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2010, Sun Microsystems, Inc.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Add=Legg til
-Anonymous=Anonym
-User/group=Bruker/gruppe
-User/group\ to\ add=Bruker/gruppe \u00E5 legge til
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_nl.properties b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_nl.properties
deleted file mode 100644
index c9769d698a24a85ddb1740d3363b126813d5c166..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_nl.properties
+++ /dev/null
@@ -1,27 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, id:sorokh
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Remove\ user/group=Verwijder gebruiker/groep
-User/group=Gebruiker/groep
-Anonymous=Anoniem
-User/group\ to\ add=Toe te voegen gebruiker/groep
-Add=Voeg toe
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_pt_BR.properties b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_pt_BR.properties
deleted file mode 100644
index d68585ad00d74d5f00b8bbaa1cbc014a7bc26ea0..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_pt_BR.properties
+++ /dev/null
@@ -1,26 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Reginaldo L. Russinholi, Cleiber Silva
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-User/group=Usu\u00E1rios/Grupo
-Anonymous=An\u00f4nimo
-User/group\ to\ add=Usu\u00e1rio/grupo para adicionar
-Add=Adicionar
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_ru.properties b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_ru.properties
deleted file mode 100644
index acd0573b2d96f97997ca68e599d359331384c760..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_ru.properties
+++ /dev/null
@@ -1,28 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Mike Salnikov
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Remove\ user/group=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F/\u0433\u0440\u0443\u043F\u043F\u0443
-Toggle\ all=\u041F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0432\u0441\u0451
-User/group=\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c/\u0433\u0440\u0443\u043f\u043f\u0430
-Anonymous=\u0410\u043d\u043e\u043d\u0438\u043c
-User/group\ to\ add=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f/\u0433\u0440\u0443\u043f\u043f\u0443
-Add=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_sv_SE.properties b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_sv_SE.properties
deleted file mode 100644
index 80304b1fa3a3cdf9200a31e50695b67baa3d0ce3..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_sv_SE.properties
+++ /dev/null
@@ -1,28 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2010, Sun Microsystems, Inc.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Add=L\u00E4gg till
-Anonymous=Anonym
-Remove\ user/group=Ta bort anv\u00E4ndare/grupp
-Toggle\ all=V\u00E4xla alla
-User/group=Anv\u00E4ndare/grupp
-User/group\ to\ add=Anv\u00E4ndare/grupp att l\u00E4gga till
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_tr.properties b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_tr.properties
deleted file mode 100644
index 233913016901d73861dc2a7f77223470b6ac29a2..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_tr.properties
+++ /dev/null
@@ -1,26 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Oguz Dag
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-User/group=Kullan\u0131c\u0131/grup
-Anonymous=Bilinmeyen
-User/group\ to\ add=Eklenecek grup
-Add=Ekle
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_zh_CN.properties b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_zh_CN.properties
deleted file mode 100644
index 76b6f20d5499b168fee612b895cd15d80d5bc97e..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_zh_CN.properties
+++ /dev/null
@@ -1,28 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2010, Sun Microsystems, Inc.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Remove\ user/group=\u79FB\u9664\u7528\u6237/\u7EC4
-Toggle\ all=\u5C55\u5F00\u5168\u90E8
-User/group=\u7528\u6237/\u7ec4
-Anonymous=\u533f\u540d\u7528\u6237
-User/group\ to\ add=\u6dfb\u52a0\u7528\u6237/\u7ec4
-Add=\u6dfb\u52a0
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_zh_TW.properties b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_zh_TW.properties
deleted file mode 100644
index a39c6fc98f8990e75bfb93cdadd78c53e575da10..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/config_zh_TW.properties
+++ /dev/null
@@ -1,30 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2013, Sun Microsystems, Inc., Chunghwa Telecom Co., Ltd.,
-# and Pei-Tang Huang
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-Toggle\ all=\u53cd\u5411\u9078\u53d6
-Remove\ user/group=\u79fb\u9664\u4f7f\u7528\u8005\u6216\u7fa4\u7d44
-
-User/group=\u4f7f\u7528\u8005\u6216\u7fa4\u7d44
-Anonymous=\u533f\u540d\u4f7f\u7528\u8005
-User/group\ to\ add=\u8981\u65b0\u589e\u7684\u4f7f\u7528\u8005\u6216\u7fa4\u7d44
-Add=\u65b0\u589e
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/help-user-group.jelly b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/help-user-group.jelly
deleted file mode 100644
index 194301ba461e45733bf65555ab333fffb87193ed..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/help-user-group.jelly
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- Different security realm has different conventions about group names.
- The best way to go about it is to login and see what group names you belong to,
- by going to this diagnostics page.
-
-
- A special group "authenticated" is also available, which represents all
- authenticated (logged in) users.
-
- In this scheme, you can configure who can do what by using a big table.
-
-
- Each column represents a permission. Hover the mouse over the permission names to get
- more information about what they represent.
-
-
- Each row represents a user or a group (often called 'role', depending on the security realm.)
- This includes a special user 'anonymous', which represents unauthenticated users, as well
- as 'authenticated', which represents all authenticated users (IOW, everyone except anonymous users.)
- Use the text box below the table to add new users/groups/roles to the table, and click the
- [x] icon to remove it from the table.
-
-
- Permissions are additive. That is, if an user X is in group A, B, and C, then
- the permissions that this user actually has are the union of all permissions given to
- X, A, B, C, and anonymous.
-
- In dieser Tabelle können Sie angeben, wer zu welchen Aktionen berechtigt ist.
-
- Jede Spalte entspricht einer Berechtigung. Fahren Sie mit der Maus über die
- Namen der Berechtigungen, um mehr Informationen darüber zu erhalten, was sie
- bedeuten.
-
- Jede Zeile entspricht einem Benutzer oder einer Benutzergruppe (je nach
- Benutzerverzeichnis oft auch als "Rolle" bezeichnet). Die Zeilen beinhalten
- auch die besonderen Benutzer 'anonymous' bzw. 'authenticated', welche
- nichtangemeldete bzw. angemeldete Benutzer repräsentieren,
-
- Verwenden Sie das untenstehende Textfeld, um neue Benutzer/Gruppen/Rollen zur Tabelle
- hinzuzufügen und klicken Sie auf das [x]-Symbol, um sie wieder von der
- Tabelle zu entfernen.
-
- Berechtigungen sind additiv. Dies bedeutet, dass ein Benutzer X, der Mitglied
- in den Gruppen A, B und C ist, die Vereinigungsmenge aller Berechtigungen
- besitzt, die X, A, B, C und dem Benutzer 'anonymous' erteilt wurden.
-
\ No newline at end of file
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/help_fr.html b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/help_fr.html
deleted file mode 100644
index 246799765742960e0627e7c815f3a4f6e94cb876..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/help_fr.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
- Cette option vous permet de configurer qui fait quoi dans un grand tableau.
-
-
- Chaque colonne représente une autorisation. Faites glisser la souris au
- dessus du nom d'une autorisation pour obtenir plus d'information sur
- ce qu'elle représente.
-
-
- Chaque ligne représente un utilisateur ou un groupe (souvent appelé
- 'rôle', selon les royaumes -realms- de sécurité).
- On y trouve un utilisateur spécial 'anonymous' qui représente
- les utilisateurs non authentifiés, ainsi qu'un utilisateur 'authenticated',
- qui représente les utilisateurs authentifiés (c-à-d, tout le monde, à
- l'exception des utilisateurs anonymes).
- Utilisez le texte sous la table pour ajouter des nouveaux
- utilisateurs/groupes/rôles à la table et cliquez sur l'icône
- [x] pour les supprimer.
-
-
- Les autorisations s'ajoutent les unes aux autres. En clair, si un
- utilisateur X est présent dans les groupes A, B et C, alors les
- autorisations associées à cet utilisateur sont l'union de toutes les
- autorisations accordées à X, A, B, C et anonymous.
-
\ No newline at end of file
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/help_ja.html b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/help_ja.html
deleted file mode 100644
index 2d3401bbefbe5f0e9acfb834b1adf0b8782bc108..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/help_ja.html
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
- Neste esquema, você pode configurar quem pode fazer o quê usando uma grande tabela.
-
-
- Cada coluna representa uma permissão. Passe o mouse sobre os nomes das permissões para
- obter mais informação sobre o que elas representam.
-
-
- Cada linha representa um usuário ou grupo (frequentemente chamado de 'papel',
- dependendo do domínio de segurança.)
- Isto inclui um usuário especial chamado 'anonymous', que representa os usuários não autenticados.
- Use a caixa de texto abaixo da tabela para adicionar novos usuários/grupos/papéis na tabela, e clique
- no ícone [x] para remover da tabela.
-
-
- Permissões são cumulativas. Ou seja, se um usuário X está nos grupos A, B, e C, então
- as permissões que este usuário na verdade tem é a únião de todas as permissões dadas para
- X, A, B, C, e anônimos.
-
-
- В этом режиме вы можете явно указать допустимые операции, используя матрицу привилегий.
-
-
- Каждая колонка представляет собой привилегию. Наведите курсор мыши на имя привелегии
- для получения большей информации о её предназначении.
-
-
- Каждая строка представляет собой пользователя или группу (обычно называемая "ролью", в
- зависимости от используемого модуля безопасности). Список включает также специального
- пользователя Аноним, который представляет собой неаутентифицированного пользователя.
- Чтобы добавить нового пользователя/группу/роль в таблицу, используйте поле ввода под таблицей.
- Чтобы удалить пользователя/группу/роль нажмите кнопку [x] в правой колонке.
-
-
- Привилегии аддитивны, то есть если пользователь X состоит в группах A, B и C, тогда
- реальные привилегии пользователя - объединение всех привилегий данных конкретно пользователю,
- группам A, B и C и анонимному пользователю.
-
\ No newline at end of file
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/help_tr.html b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/help_tr.html
deleted file mode 100644
index 44d38936aa01f9268880a23c0b64eddfaed597e8..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/help_tr.html
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
- Bu şemada, tabloyu kullanarak kimin ne yapabileceğini belirleyebilirsiniz.
-
-
- Her kolon bir yetkiyi temsil eder. Mouse ile yetki isimlerinin üzerine
- gelerek, daha fazla bilgi alabilirsiniz.
-
-
- Her satır bir kullanıcı veya grubu temsil eder (Güvenlik alanına bağlı olarak, "rol" olarak da
- adlandırılabilir). Bu satırların içerisinde yetkisiz kullanıcıları temsilen bilinmeyen (anonymous)
- kullanıcı da yer almaktadır. Aşağıdaki metin kutusunu kullanarak, tabloya kullanıcı/grup/rol ekleyebilir,
- [x] ikonuna tıklayarak bunları silebilirsiniz.
-
-
- Yetkilendirme, kullanıcı ve ait olduğu grupların yetkilerinin birleşim kümesi ile hesaplanır.
- Yani X kullanıcısı, A, B ve C gruplarına dahilse, yetkileri X, A, B, C ve bilinmeyen kullanıcıya
- verilen yetkilerinin birleşim kümesidir.
-
\ No newline at end of file
diff --git a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/help_zh_CN.html b/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/help_zh_CN.html
deleted file mode 100644
index 72cdd3584773774b5742dfe8666c95d4d85e1711..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/GlobalMatrixAuthorizationStrategy/help_zh_CN.html
+++ /dev/null
@@ -1,13 +0,0 @@
-
- 權限會累加。也就是說,如果 X 使用者在 A, B, C 三個群組中,則該使用者實際的權限會是 X, A, B, C 及匿名使用者權限的聯集。
-
diff --git a/core/src/main/resources/hudson/security/Messages.properties b/core/src/main/resources/hudson/security/Messages.properties
index 2214960963986e942eeb480bcf10342618bcfc95..d88982fe9a965112593692e18f4e716ecab9f2da 100644
--- a/core/src/main/resources/hudson/security/Messages.properties
+++ b/core/src/main/resources/hudson/security/Messages.properties
@@ -22,8 +22,6 @@
GlobalSecurityConfiguration.DisplayName=Configure Global Security
GlobalSecurityConfiguration.Description=Secure Jenkins; define who is allowed to access/use the system.
-GlobalMatrixAuthorizationStrategy.DisplayName=Matrix-based security
-
HudsonPrivateSecurityRealm.WouldYouLikeToSignUp=This {0} {1} is new to Jenkins. Would you like to sign up?
LegacyAuthorizationStrategy.DisplayName=Legacy mode
@@ -56,8 +54,6 @@ LegacySecurityRealm.Displayname=Delegate to servlet container
UserDetailsServiceProxy.UnableToQuery=Unable to query user information: {0}
-ProjectMatrixAuthorizationStrategy.DisplayName=Project-based Matrix Authorization Strategy
-
PAMSecurityRealm.DisplayName=Unix user/group database
PAMSecurityRealm.ReadPermission=Jenkins needs to be able to read /etc/shadow
PAMSecurityRealm.BelongToGroup={0} needs to belong to group {1} to read /etc/shadow
diff --git a/core/src/main/resources/hudson/security/Messages_da.properties b/core/src/main/resources/hudson/security/Messages_da.properties
index 912d05e897e2eb515e46950b708c65217aaaf536..7e84f2ae641827757b24181616c37220cc9a3b22 100644
--- a/core/src/main/resources/hudson/security/Messages_da.properties
+++ b/core/src/main/resources/hudson/security/Messages_da.properties
@@ -36,9 +36,7 @@ HudsonPrivateSecurityRealm.ManageUserLinks.DisplayName=Brugeradministration
HudsonPrivateSecurityRealm.DisplayName=Jenkins''s egen brugerdatabase
PAMSecurityRealm.DisplayName=Unix bruger/gruppe database
AuthorizationStrategy.DisplayName=Alle kan g\u00f8re alt
-ProjectMatrixAuthorizationStrategy.DisplayName=Projektbaseret matriceauthentificering
AccessDeniedException2.MissingPermission={0} mangler {1} rettigheden
-GlobalMatrixAuthorizationStrategy.DisplayName=Matricebaseret sikkerhed
Permission.Permissions.Title=N/A
LDAPSecurityRealm.UnableToConnect=Kan ikke oprette forbindelse til {0} : {1}
FullControlOnceLoggedInAuthorizationStrategy.DisplayName=Indloggede brugere kan g\u00f8re alt
diff --git a/core/src/main/resources/hudson/security/Messages_de.properties b/core/src/main/resources/hudson/security/Messages_de.properties
index 52dc616e38fe9a0afaac3ab7f2de95a7680ff860..93803b408960a28f248bb5c4294e2d564a8ffacd 100644
--- a/core/src/main/resources/hudson/security/Messages_de.properties
+++ b/core/src/main/resources/hudson/security/Messages_de.properties
@@ -22,53 +22,48 @@
GlobalSecurityConfiguration.DisplayName=Globale Sicherheit konfigurieren
GlobalSecurityConfiguration.Description=Jenkins absichern und festlegen, wer Zugriff auf das System hat und es benutzen darf.
-GlobalMatrixAuthorizationStrategy.DisplayName=Matrix-basierte Sicherheit
-
LegacyAuthorizationStrategy.DisplayName=Legacy-Autorisierung
HudsonPrivateSecurityRealm.DisplayName=Jenkins' eingebautes Benutzerverzeichnis
HudsonPrivateSecurityRealm.Details.DisplayName=Passwort
HudsonPrivateSecurityRealm.Details.PasswordError=\
- Das angegebene Passwort und seine Wiederholung stimmen nicht berein. \
- Bitte berprfen Sie Ihre Eingabe.
+ Das angegebene Passwort und seine Wiederholung stimmen nicht \u00fcberein. \
+ Bitte \u00fcberpr\u00fcfen Sie Ihre Eingabe.
HudsonPrivateSecurityRealm.ManageUserLinks.DisplayName=Benutzer verwalten
-HudsonPrivateSecurityRealm.ManageUserLinks.Description=Anlegen, Aktualisieren und Lschen von Benutzern, die sich an dieser Jenkins-Installation anmelden drfen.
+HudsonPrivateSecurityRealm.ManageUserLinks.Description=Anlegen, Aktualisieren und L\u00f6schen von Benutzern, die sich an dieser Jenkins-Installation anmelden d\u00fcrfen.
-HudsonPrivateSecurityRealm.CreateAccount.TextNotMatchWordInImage=Text stimmt nicht mit dem Wort im Bild berein
-HudsonPrivateSecurityRealm.CreateAccount.PasswordNotMatch=Das angegebene Passwort und seine Wiederholung stimmen nicht berein
-HudsonPrivateSecurityRealm.CreateAccount.PasswordRequired=Passwort wird bentigt
-HudsonPrivateSecurityRealm.CreateAccount.UserNameRequired=Benutzername wird bentigt
-HudsonPrivateSecurityRealm.CreateAccount.InvalidEmailAddress=Ungltige E-Mail Adresse
+HudsonPrivateSecurityRealm.CreateAccount.TextNotMatchWordInImage=Text stimmt nicht mit dem Wort im Bild \u00fcberein
+HudsonPrivateSecurityRealm.CreateAccount.PasswordNotMatch=Das angegebene Passwort und seine Wiederholung stimmen nicht \u00fcberein
+HudsonPrivateSecurityRealm.CreateAccount.PasswordRequired=Passwort wird ben\u00f6tigt
+HudsonPrivateSecurityRealm.CreateAccount.UserNameRequired=Benutzername wird ben\u00f6tigt
+HudsonPrivateSecurityRealm.CreateAccount.InvalidEmailAddress=Ung\u00fcltige E-Mail Adresse
HudsonPrivateSecurityRealm.CreateAccount.UserNameAlreadyTaken=Benutzername ist bereits vergeben
-FullControlOnceLoggedInAuthorizationStrategy.DisplayName=Angemeldete Benutzer drfen alle Aktionen ausfhren
+FullControlOnceLoggedInAuthorizationStrategy.DisplayName=Angemeldete Benutzer d\u00fcrfen alle Aktionen ausf\u00fchren
-AuthorizationStrategy.DisplayName=Jeder darf alle Aktionen ausfhren
+AuthorizationStrategy.DisplayName=Jeder darf alle Aktionen ausf\u00fchren
LDAPSecurityRealm.DisplayName=LDAP
LDAPSecurityRealm.SyntaxOfServerField=\
Syntax der Server-Angabe ist SERVER, SERVER:PORT oder ldaps://SERVER[:PORT]
LDAPSecurityRealm.UnknownHost=Unbekannter Host: {0}
LDAPSecurityRealm.UnableToConnect=Keine Verbindung zu {0} : {1}
-LDAPSecurityRealm.InvalidPortNumber=Ungltige Port-Nummer
+LDAPSecurityRealm.InvalidPortNumber=Ung\u00fcltige Port-Nummer
LegacySecurityRealm.Displayname=An Servlet-Container delegieren
UserDetailsServiceProxy.UnableToQuery=Benutzerinformationen konnten nicht abgefragt werden: {0}
PAMSecurityRealm.DisplayName=Unix Benutzer-/Gruppenverzeichnis
-PAMSecurityRealm.ReadPermission=Jenkins bentigt Leserechte fr /etc/shadow
-PAMSecurityRealm.BelongToGroup={0} mu zu Gruppe {1} gehren, um /etc/shadow lesen zu knnen.
+PAMSecurityRealm.ReadPermission=Jenkins ben\u00f6tigt Leserechte f\u00fcr /etc/shadow
+PAMSecurityRealm.BelongToGroup={0} mu\u00df zu Gruppe {1} geh\u00f6ren, um /etc/shadow lesen zu k\u00f6nnen.
PAMSecurityRealm.RunAsUserOrBelongToGroupAndChmod=\
- Entweder mu Jenkins als {0} ausgefhrt werden, oder {1} mu zu Gruppe {2} gehren und \
- ''chmod g+r /etc/shadow'' mu ausgefhrt werden, damit Jenkins /etc/shadow lesen kann.
+ Entweder mu\u00df Jenkins als {0} ausgef\u00fchrt werden, oder {1} mu\u00df zu Gruppe {2} geh\u00f6ren und \
+ ''chmod g+r /etc/shadow'' mu\u00df ausgef\u00fchrt werden, damit Jenkins /etc/shadow lesen kann.
PAMSecurityRealm.Success=Erfolgreich
PAMSecurityRealm.User=Benutzer ''{0}''
PAMSecurityRealm.CurrentUser=Aktueller Benutzer
PAMSecurityRealm.Uid=uid: {0}
-
-ProjectMatrixAuthorizationStrategy.DisplayName=Projektbasierte Matrix-Zugriffssteuerung
-
# not in use
Permission.Permissions.Title=N/A
AccessDeniedException2.MissingPermission={0} fehlt das Recht ''{1}''
diff --git a/core/src/main/resources/hudson/security/Messages_es.properties b/core/src/main/resources/hudson/security/Messages_es.properties
index 4b56eb65913a6cd4709507abcf3085f713a9bf1f..45b42f15430192f3dbbd7f7cb2567d9653e32554 100644
--- a/core/src/main/resources/hudson/security/Messages_es.properties
+++ b/core/src/main/resources/hudson/security/Messages_es.properties
@@ -20,37 +20,34 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
# THE SOFTWARE.
-GlobalSecurityConfiguration.DisplayName=Configuraci\u00F3n global de la seguridad
+GlobalSecurityConfiguration.DisplayName=Configuraci\u00f3n global de la seguridad
GlobalSecurityConfiguration.Description=Seguridad en Jenkins. \
- Define qui\u00E9n tiene acceso al sistema (autenticaci\u00F3n) y qu\u00E9 puede hacer (autorizaci\u00F3n)
-GlobalMatrixAuthorizationStrategy.DisplayName=Configuracin de seguridad
+ Define qui\u00e9n tiene acceso al sistema (autenticaci\u00f3n) y qu\u00e9 puede hacer (autorizaci\u00f3n)
LegacyAuthorizationStrategy.DisplayName=Modo ''legacy''
HudsonPrivateSecurityRealm.DisplayName=Usar base de datos de Jenkins
-HudsonPrivateSecurityRealm.Details.DisplayName=Contrasea
+HudsonPrivateSecurityRealm.Details.DisplayName=Contrase\u00f1a
HudsonPrivateSecurityRealm.Details.PasswordError=\
- Las contraseas no coinciden.
-HudsonPrivateSecurityRealm.ManageUserLinks.DisplayName=Gestin de usuarios
+ Las contrase\u00f1as no coinciden.
+HudsonPrivateSecurityRealm.ManageUserLinks.DisplayName=Gesti\u00f3n de usuarios
HudsonPrivateSecurityRealm.ManageUserLinks.Description=Crear/borrar/editar usuarios que puedan utilizar Jenkins
FullControlOnceLoggedInAuthorizationStrategy.DisplayName=Usuarios autenticados tienen privilegios para todo
-AuthorizationStrategy.DisplayName=Cualquiera puede hacer cualquier accin
+AuthorizationStrategy.DisplayName=Cualquiera puede hacer cualquier acci\u00f3n
LegacySecurityRealm.Displayname=Delegar seguridad al contenedor de servlets
-UserDetailsServiceProxy.UnableToQuery=Imposible obtener la informacin del usuario: {0}
-
-ProjectMatrixAuthorizationStrategy.DisplayName=Estrategia de seguridad para el proyecto
+UserDetailsServiceProxy.UnableToQuery=Imposible obtener la informaci\u00f3n del usuario: {0}
# not in use
Permission.Permissions.Title=N/D
AccessDeniedException2.MissingPermission={0} no tiene el permiso {1}
-PAMSecurityRealm.DisplayName=Autenticacin basada en usuarios y grupos Unix
-PAMSecurityRealm.ReadPermission=Jenkins necesita permisos de lectura del fichero /etc/shadowPAMSecurityRealm.DisplayName=Usar autenticacin Unix: usuario/grupo
+PAMSecurityRealm.DisplayName=Autenticaci\u00f3n basada en usuarios y grupos Unix
+PAMSecurityRealm.ReadPermission=Jenkins necesita permisos de lectura del fichero /etc/shadowPAMSecurityRealm.DisplayName=Usar autenticaci\u00f3n Unix: usuario/grupo
PAMSecurityRealm.BelongToGroup={0} tiene que pertenecer al grupo {1} para tener acceso de lectura a /etc/shadow
PAMSecurityRealm.RunAsUserOrBelongToGroupAndChmod=\
Es necesario que Jenkins se ejecute como "{0}", o bien "{1}" ha de pertenecer al grupo "{2}" y ejecutar "chmod g+r /etc/shadow" para que Jenkins tenga acceso de lectura a /etc/shadow.
@@ -63,6 +60,6 @@ LDAPSecurityRealm.DisplayName=LDAP
LDAPSecurityRealm.SyntaxOfServerField=La sintaxis para especificar el servidor es: SERVER o SERVER:PORT o ldaps://SERVER[:PORT]
LDAPSecurityRealm.UnknownHost=Nombre de host desconocido: {0}
LDAPSecurityRealm.UnableToConnect=Incapaz de conectar con {0} : {1}
-LDAPSecurityRealm.InvalidPortNumber=El puerto no es vlido
+LDAPSecurityRealm.InvalidPortNumber=El puerto no es v\u00e1lido
-HudsonPrivateSecurityRealm.WouldYouLikeToSignUp=Este {0} {1} es nuevo en Jenkins. Te gustara crear una nueva cuenta?
+HudsonPrivateSecurityRealm.WouldYouLikeToSignUp=Este {0} {1} es nuevo en Jenkins. \u00bfTe gustar\u00eda crear una nueva cuenta?
diff --git a/core/src/main/resources/hudson/security/Messages_fr.properties b/core/src/main/resources/hudson/security/Messages_fr.properties
index cb358c7ca8ae3d91794c146788fa6df567f86154..9258c0680afd143b071e40c5f7bcd9d03fa5d53e 100644
--- a/core/src/main/resources/hudson/security/Messages_fr.properties
+++ b/core/src/main/resources/hudson/security/Messages_fr.properties
@@ -20,33 +20,30 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
# THE SOFTWARE.
-GlobalSecurityConfiguration.DisplayName=Configurer la s\u00E9curit\u00E9 globale
-GlobalSecurityConfiguration.Description=S\u00E9curiser Jenkins; d\u00E9finir qui est autoris\u00E9 \u00E0 acc\u00E9der au syst\u00E8me.
-GlobalMatrixAuthorizationStrategy.DisplayName=Scurit base sur une matrice
+GlobalSecurityConfiguration.DisplayName=Configurer la s\u00e9curit\u00e9 globale
+GlobalSecurityConfiguration.Description=S\u00e9curiser Jenkins; d\u00e9finir qui est autoris\u00e9 \u00e0 acc\u00e9der au syst\u00e8me.
LegacyAuthorizationStrategy.DisplayName=Mode legacy
-HudsonPrivateSecurityRealm.DisplayName=Base de donnes des utilisateurs de Jenkins
+HudsonPrivateSecurityRealm.DisplayName=Base de donn\u00e9es des utilisateurs de Jenkins
HudsonPrivateSecurityRealm.Details.DisplayName=Mot de passe
HudsonPrivateSecurityRealm.Details.PasswordError=\
- Le mot de passe de confirmation n''est pas le mme que le premier mot de passe. \
- Merci de vous assurer que les mots de passe sont les mmes dans les deux cases.
-HudsonPrivateSecurityRealm.ManageUserLinks.DisplayName=Grer les utilisateurs
-HudsonPrivateSecurityRealm.ManageUserLinks.Description=Crer/supprimer/modifier les utilisateurs qui peuvent se logger sur ce serveur Jenkins
+ Le mot de passe de confirmation n''est pas le m\u00eame que le premier mot de passe. \
+ Merci de vous assurer que les mots de passe sont les m\u00eames dans les deux cases.
+HudsonPrivateSecurityRealm.ManageUserLinks.DisplayName=G\u00e9rer les utilisateurs
+HudsonPrivateSecurityRealm.ManageUserLinks.Description=Cr\u00e9er/supprimer/modifier les utilisateurs qui peuvent se logger sur ce serveur Jenkins
-FullControlOnceLoggedInAuthorizationStrategy.DisplayName=Les utilisateurs connects peuvent tout faire
+FullControlOnceLoggedInAuthorizationStrategy.DisplayName=Les utilisateurs connect\u00e9s peuvent tout faire
-AuthorizationStrategy.DisplayName=Tout le monde a accs toutes les fonctionnalits
+AuthorizationStrategy.DisplayName=Tout le monde a acc\u00e8s \u00e0 toutes les fonctionnalit\u00e9s
LDAPSecurityRealm.DisplayName=LDAP
-LegacySecurityRealm.Displayname=Dlguer au conteneur de servlets
+LegacySecurityRealm.Displayname=D\u00e9l\u00e9guer au conteneur de servlets
-UserDetailsServiceProxy.UnableToQuery=Impossible de rcuprer les informations utilisateur: {0}
+UserDetailsServiceProxy.UnableToQuery=Impossible de r\u00e9cup\u00e9rer les informations utilisateur: {0}
-ProjectMatrixAuthorizationStrategy.DisplayName=Stratgie d''authorisation matricielle base sur les projets
-
-PAMSecurityRealm.DisplayName=Base de donnes des utilisateurs & des groupes Unix
+PAMSecurityRealm.DisplayName=Base de donn\u00e9es des utilisateurs & des groupes Unix
# not in use
Permission.Permissions.Title=N/A
diff --git a/core/src/main/resources/hudson/security/Messages_ja.properties b/core/src/main/resources/hudson/security/Messages_ja.properties
index abe483a0c1f8dd0c999bd24623c0211dbaa8540f..8107aa2dac15f15f43072cbc7ddafec43a3a4f82 100644
--- a/core/src/main/resources/hudson/security/Messages_ja.properties
+++ b/core/src/main/resources/hudson/security/Messages_ja.properties
@@ -21,7 +21,6 @@
# THE SOFTWARE.
GlobalSecurityConfiguration.DisplayName=\u30b0\u30ed\u30fc\u30d0\u30eb\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u306e\u8a2d\u5b9a
GlobalSecurityConfiguration.Description=Jenkins\u306e\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002\u8ab0\u304c\u30b7\u30b9\u30c6\u30e0\u306b\u30a2\u30af\u30bb\u30b9\u3001\u4f7f\u7528\u3067\u304d\u308b\u304b\u306a\u3069\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002
-GlobalMatrixAuthorizationStrategy.DisplayName=\u884c\u5217\u306b\u3088\u308b\u6a29\u9650\u8a2d\u5b9a
HudsonPrivateSecurityRealm.WouldYouLikeToSignUp=\u3053\u306e{0}\u306e{1}\u306f\u3001Jenkins\u306b\u306f\u767b\u9332\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002\u30b5\u30a4\u30f3\u30a2\u30c3\u30d7\u3057\u307e\u3059\u304b?
LegacyAuthorizationStrategy.DisplayName=\u4e92\u63db\u6027\u30e2\u30fc\u30c9
@@ -53,8 +52,6 @@ LegacySecurityRealm.Displayname=\u30b5\u30fc\u30d6\u30ec\u30c3\u30c8\u30b3\u30f3
UserDetailsServiceProxy.UnableToQuery={0}\u306e\u30e6\u30fc\u30b6\u30fc\u60c5\u5831\u3092\u691c\u7d22\u3067\u304d\u307e\u305b\u3093\u3002
-ProjectMatrixAuthorizationStrategy.DisplayName=\u884c\u5217\u306b\u3088\u308b\u6a29\u9650\u8a2d\u5b9a(\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u5358\u4f4d)
-
PAMSecurityRealm.DisplayName=Unix \u30e6\u30fc\u30b6\u30fc/\u30b0\u30eb\u30fc\u30d7 \u30c7\u30fc\u30bf\u30d9\u30fc\u30b9
PAMSecurityRealm.ReadPermission=Jenkins\u304c/etc/shadow\u3092\u8aad\u307f\u8fbc\u307f\u53ef\u80fd\u3067\u306a\u3051\u308c\u3070\u306a\u308a\u307e\u305b\u3093\u3002
PAMSecurityRealm.BelongToGroup=/etc/shadow\u3092\u8aad\u3081\u308b\u3088\u3046\u306b\u3001{0} \u304c\u30b0\u30eb\u30fc\u30d7 {1} \u306b\u5c5e\u3057\u3066\u3044\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002
diff --git a/core/src/main/resources/hudson/security/Messages_nl.properties b/core/src/main/resources/hudson/security/Messages_nl.properties
index aa1c62b8d033c63adcacf7c59856db06df757de6..14a9af3ec4642d095d93c278424e83561c7be41e 100644
--- a/core/src/main/resources/hudson/security/Messages_nl.properties
+++ b/core/src/main/resources/hudson/security/Messages_nl.properties
@@ -20,8 +20,6 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
# THE SOFTWARE.
-GlobalMatrixAuthorizationStrategy.DisplayName=Matrix-gebaseerde beveiliging
-
LegacyAuthorizationStrategy.DisplayName=Legacy-mode
HudsonPrivateSecurityRealm.Details.DisplayName=Paswoord
diff --git a/core/src/main/resources/hudson/security/Messages_pt_BR.properties b/core/src/main/resources/hudson/security/Messages_pt_BR.properties
index 1bda8e932b3edc66de3883490fdddd24ecceba23..272fcb75294b4d8fcafc747554c7940847a9a713 100644
--- a/core/src/main/resources/hudson/security/Messages_pt_BR.properties
+++ b/core/src/main/resources/hudson/security/Messages_pt_BR.properties
@@ -20,14 +20,12 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
# THE SOFTWARE.
-GlobalMatrixAuthorizationStrategy.DisplayName=Seguran\u00E7a baseada em matriz
-
LegacyAuthorizationStrategy.DisplayName=Modo legado
HudsonPrivateSecurityRealm.Details.DisplayName=Senha
-HudsonPrivateSecurityRealm.Details.PasswordError=A senha confirmada n\u00E3o \u00E9 igual a senha informada. Por favor assegure-se de digitar a mesma senha duas vezes.
+HudsonPrivateSecurityRealm.Details.PasswordError=A senha confirmada n\u00e3o \u00e9 igual a senha informada. Por favor assegure-se de digitar a mesma senha duas vezes.
-UserDetailsServiceProxy.UnableToQuery=N\u00E3o foi poss\u00EDvel buscar informa\u00E7\u00F5es do usu\u00E1rio\: {0}
+UserDetailsServiceProxy.UnableToQuery=N\u00e3o foi poss\u00edvel buscar informa\u00e7\u00f5es do usu\u00e1rio\: {0}
# not in use
Permission.Permissions.Title=N/A
@@ -36,32 +34,30 @@ PAMSecurityRealm.Success=Sucesso
# Unable to connect to {0} : {1}
LDAPSecurityRealm.UnableToConnect=Incapaz de conectar {0} : {1}
# Logged-in users can do anything
-FullControlOnceLoggedInAuthorizationStrategy.DisplayName=Usu\u00E1rios logados n\u00E3o conseguem fazer nada
+FullControlOnceLoggedInAuthorizationStrategy.DisplayName=Usu\u00e1rios logados n\u00e3o conseguem fazer nada
# Unix user/group database
-PAMSecurityRealm.DisplayName=Usu\u00E1rio Uniz / grupo banco da dados
+PAMSecurityRealm.DisplayName=Usu\u00e1rio Uniz / grupo banco da dados
# User ''{0}''
-PAMSecurityRealm.User=Usu\u00E1rio ''{0}''
+PAMSecurityRealm.User=Usu\u00e1rio ''{0}''
# {0} needs to belong to group {1} to read /etc/shadow
PAMSecurityRealm.BelongToGroup= {0} precisa pertencer ao grupo {1} para ler /etc/shadow
# Anyone can do anything
AuthorizationStrategy.DisplayName=Ninguem consegue fazer nada
-# Project-based Matrix Authorization Strategy
-#ProjectMatrixAuthorizationStrategy.DisplayName=
# Invalid port number
-LDAPSecurityRealm.InvalidPortNumber=N\u00FAmero de porta inv\u00E1lido
+LDAPSecurityRealm.InvalidPortNumber=N\u00famero de porta inv\u00e1lido
# Unknown host: {0}
-LDAPSecurityRealm.UnknownHost=Host n\u00E3o localizado {0}
+LDAPSecurityRealm.UnknownHost=Host n\u00e3o localizado {0}
# uid: {0}
PAMSecurityRealm.Uid=uid: {0}
# \
# Either Jenkins needs to run as {0} or {1} needs to belong to group {2} and ''chmod g+r /etc/shadow'' needs to be done to enable Jenkins to read /etc/shadow
PAMSecurityRealm.RunAsUserOrBelongToGroupAndChmod=Jenkins precisa pertencer ao grupo {2} e ter acesso ''chmod g+r /etc/shadow'' para ler a pasta.
# Current User
-PAMSecurityRealm.CurrentUser=Usu\u00E1rio atual
+PAMSecurityRealm.CurrentUser=Usu\u00e1rio atual
# {0} is missing the {1} permission
-AccessDeniedException2.MissingPermission= {0} est\u00E1 faltando a permiss\u00E3o {1}
+AccessDeniedException2.MissingPermission= {0} est\u00e1 faltando a permiss\u00e3o {1}
# Manage Users
-HudsonPrivateSecurityRealm.ManageUserLinks.DisplayName=Gerenciar usu\u00E1rios
+HudsonPrivateSecurityRealm.ManageUserLinks.DisplayName=Gerenciar usu\u00e1rios
# Delegate to servlet container
LegacySecurityRealm.Displayname=Delegar para o container servlet
# LDAP
@@ -71,6 +67,6 @@ HudsonPrivateSecurityRealm.DisplayName=Base de dados interna do Jenkins
# Jenkins needs to be able to read /etc/shadow
PAMSecurityRealm.ReadPermission=Jenkins precisa de acesso de leitura em /etc/shadow
# Create/delete/modify users that can log in to this Jenkins
-HudsonPrivateSecurityRealm.ManageUserLinks.Description=Criar/deletar/modificar usu\u00E1rios que logan no Jenkins
+HudsonPrivateSecurityRealm.ManageUserLinks.Description=Criar/deletar/modificar usu\u00e1rios que logan no Jenkins
# Syntax of server field is SERVER or SERVER:PORT or ldaps://SERVER[:PORT]
LDAPSecurityRealm.SyntaxOfServerField=Sintaxe SERVER or SERVER:PORT or ldaps://SERVER[:PORT]
diff --git a/core/src/main/resources/hudson/security/Messages_ru.properties b/core/src/main/resources/hudson/security/Messages_ru.properties
index 10e9d57b245388f710a1c40ff6c20294debe08e9..2f9b4ecc14056ac91010be466da7cdf9b96787c0 100644
--- a/core/src/main/resources/hudson/security/Messages_ru.properties
+++ b/core/src/main/resources/hudson/security/Messages_ru.properties
@@ -20,8 +20,6 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
# THE SOFTWARE.
-GlobalMatrixAuthorizationStrategy.DisplayName=\u041c\u0430\u0442\u0440\u0438\u0447\u043d\u043e\u0435 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u0430\u0432
-
LegacyAuthorizationStrategy.DisplayName="\u0422\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u044b\u0439" \u0440\u0435\u0436\u0438\u043c
HudsonPrivateSecurityRealm.Details.DisplayName=\u041f\u0430\u0440\u043e\u043b\u044c
diff --git a/core/src/main/resources/hudson/security/Messages_tr.properties b/core/src/main/resources/hudson/security/Messages_tr.properties
index f212942b835cdb56c17f3413fe6e772110b5215b..062ca3e822910a19931549f68bf76d5937ee59f9 100644
--- a/core/src/main/resources/hudson/security/Messages_tr.properties
+++ b/core/src/main/resources/hudson/security/Messages_tr.properties
@@ -20,8 +20,6 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
# THE SOFTWARE.
-GlobalMatrixAuthorizationStrategy.DisplayName=Matris-temelli G\u00fcvenlik
-
LegacyAuthorizationStrategy.DisplayName=Miras modu
HudsonPrivateSecurityRealm.Details.DisplayName=\u015fifre
diff --git a/core/src/main/resources/hudson/security/Messages_zh_CN.properties b/core/src/main/resources/hudson/security/Messages_zh_CN.properties
index b18472c110241cc95c2b0b13908aa1734e317571..a69de52c6a64dbe61012e10ba4dbe025d128172e 100644
--- a/core/src/main/resources/hudson/security/Messages_zh_CN.properties
+++ b/core/src/main/resources/hudson/security/Messages_zh_CN.properties
@@ -20,8 +20,6 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
# THE SOFTWARE.
-GlobalMatrixAuthorizationStrategy.DisplayName=\u5b89\u5168\u77e9\u9635
-
LegacyAuthorizationStrategy.DisplayName=\u9057\u7559\u6a21\u5f0f
HudsonPrivateSecurityRealm.DisplayName=Jenkins\u4e13\u6709\u7528\u6237\u6570\u636e\u5e93
@@ -46,8 +44,6 @@ LegacySecurityRealm.Displayname=Servlet\u5bb9\u5668\u4ee3\u7406
UserDetailsServiceProxy.UnableToQuery=\u6ca1\u6709\u68c0\u7d22\u5230\u8fd9\u4e2a\u7528\u6237\u4fe1\u606f: {0}
-ProjectMatrixAuthorizationStrategy.DisplayName=\u9879\u76ee\u77e9\u9635\u6388\u6743\u7b56\u7565
-
PAMSecurityRealm.DisplayName=Unix\u7528\u6237/\u7ec4\u6570\u636e\u5e93
PAMSecurityRealm.ReadPermission=Jenkins\u9700\u8981\u6709/etc/shadow\u8bfb\u7684\u6743\u9650
PAMSecurityRealm.BelongToGroup={0}\u5fc5\u987b\u5c5e\u4e8e{1}\u7ec4\u6765\u8bfb\u53d6/etc/shadow
diff --git a/core/src/main/resources/hudson/security/Messages_zh_TW.properties b/core/src/main/resources/hudson/security/Messages_zh_TW.properties
index de69665baaa65cd0cba203186d271e31efdf1e1f..70e98762476074557ae6712fd0f827e83088e16f 100644
--- a/core/src/main/resources/hudson/security/Messages_zh_TW.properties
+++ b/core/src/main/resources/hudson/security/Messages_zh_TW.properties
@@ -23,8 +23,6 @@
GlobalSecurityConfiguration.DisplayName=\u8a2d\u5b9a\u5168\u57df\u5b89\u5168\u6027
GlobalSecurityConfiguration.Description=\u4fdd\u8b77 Jenkins\uff0c\u5b9a\u7fa9\u8ab0\u53ef\u4ee5\u5b58\u53d6\u6216\u662f\u4f7f\u7528\u7cfb\u7d71\u3002
-GlobalMatrixAuthorizationStrategy.DisplayName=\u77e9\u9663\u578b\u5b89\u5168\u6027
-
HudsonPrivateSecurityRealm.WouldYouLikeToSignUp=Jenkins \u4e0d\u8a8d\u5f97 {0} {1}\u3002\u60a8\u8981\u8a3b\u518a\u55ce?
LegacyAuthorizationStrategy.DisplayName=\u820a\u7248\u6a21\u5f0f
@@ -57,8 +55,6 @@ LegacySecurityRealm.Displayname=\u59d4\u6d3e\u7d66 Servlet Container
UserDetailsServiceProxy.UnableToQuery=\u7121\u6cd5\u67e5\u8a62\u4f7f\u7528\u8005\u8cc7\u8a0a: {0}
-ProjectMatrixAuthorizationStrategy.DisplayName=\u5c08\u6848\u578b\u77e9\u9663\u6388\u6b0a\u7b56\u7565
-
PAMSecurityRealm.DisplayName=Unix \u4f7f\u7528\u8005\u3001\u7fa4\u7d44\u8cc7\u6599\u5eab
PAMSecurityRealm.ReadPermission=Jenkins \u8981\u80fd\u8b80\u53d6 /etc/shadow
PAMSecurityRealm.BelongToGroup={0} \u8981\u5728 {1} \u7fa4\u7d44\u88e1\uff0c\u4ee5\u4fbf\u8b80\u53d6 /etc/shadow
diff --git a/core/src/main/resources/hudson/security/ProjectMatrixAuthorizationStrategy/help.html b/core/src/main/resources/hudson/security/ProjectMatrixAuthorizationStrategy/help.html
deleted file mode 100644
index 0d2bdeb80da0ec5de9db6097baa5df709a33526e..0000000000000000000000000000000000000000
--- a/core/src/main/resources/hudson/security/ProjectMatrixAuthorizationStrategy/help.html
+++ /dev/null
@@ -1,11 +0,0 @@
-
- This mode is an extension to "Matrix-based security" that allows additional ACL matrix to be defined
- for each project separately (which is done on the job configuration screen.)
-
-
- This allows you to say things like "Joe can access project A, B, and C but he can't see D."
- See the help of "Matrix-based security" for the concept of matrix-based security in general.
-
-
- ACLs are additive, so the access rights granted below will be effective for all the projects.
-
- Dieser Modus erweitert die "Matrix-basierte Sicherheit" um eine zusätzliche ACL-Rechtematrix,
- die für jedes Projekt individuell festgelegt werden kann (in der Konfigurationsmaske des jeweiligen Jobs).
-
-
- Dies erlaubt Ihnen eine Rechtevergabe wie z.B. "Joe darf auf Projekt A, B und C zugreifen - er
- soll aber Projekt D nicht sehen dürfen". Lesen Sie den Hilfetext bei "Matrix-basierte Sicherheit",
- um mehr über das Konzept der matrix-basierten Sicherheit im Allgemeinen zu erfahren.
-
-
- ACL-Rechte sind additiv. Dies bedeutet, dass die untenstehend erteilten Rechte für alle
- Projekte als erteilt gelten.
-