/** * Gets the directory where the user information is stored. */ private static File getRootDir() { return new File(HudsonSecurityEntitiesHolder.getHudsonSecurityManager().getHudsonHome(), "users"); }
private TeamAwareSecurityRealm getTeamAwareSecurityRealm() { HudsonSecurityManager hudsonSecurityManager = HudsonSecurityEntitiesHolder.getHudsonSecurityManager(); if (hudsonSecurityManager != null) { SecurityRealm securityRealm = hudsonSecurityManager.getSecurityRealm(); if ((securityRealm != null) && securityRealm instanceof TeamAwareSecurityRealm) { return (TeamAwareSecurityRealm) securityRealm; } } return null; }
@Override public void checkPermission(Permission permission) { HudsonSecurityEntitiesHolder.getHudsonSecurityManager().checkPermission(permission); }
private TeamManager getTeamManager() { return HudsonSecurityEntitiesHolder.getHudsonSecurityManager().getTeamManager(); } }
/** * If the security is not enabled, there's no point in having this type * of views. */ @Override public boolean isInstantiable() { return HudsonSecurityEntitiesHolder.getHudsonSecurityManager().isUseSecurity(); }
@Override public boolean isApplicable(Class<? extends Job> jobType) { // only applicable when ProjectMatrixAuthorizationStrategy is in charge return HudsonSecurityEntitiesHolder.getHudsonSecurityManager().getAuthorizationStrategy() instanceof ProjectMatrixAuthorizationStrategy; }
public TeamManager getTeamManager() { if (teamManager == null) { return HudsonSecurityEntitiesHolder.getHudsonSecurityManager().getTeamManager(); } else { return teamManager; } }
private boolean isTeamAwareSecurityRealm() { HudsonSecurityManager hudsonSecurityManager = HudsonSecurityEntitiesHolder.getHudsonSecurityManager(); SecurityRealm securityRealm = null; if (hudsonSecurityManager != null) { securityRealm = hudsonSecurityManager.getSecurityRealm(); } if ((securityRealm != null) && securityRealm instanceof TeamAwareSecurityRealm) { return true; } return false; } }
public boolean isTeamManagementEnabled() { HudsonSecurityManager hudsonSecurityManager = HudsonSecurityEntitiesHolder.getHudsonSecurityManager(); if (hudsonSecurityManager != null) { AuthorizationStrategy authorizationStrategy = hudsonSecurityManager.getAuthorizationStrategy(); if (authorizationStrategy instanceof TeamBasedAuthorizationStrategy) { return true; } } return false; }
@Override public String getIconFileName() { if (HudsonSecurityEntitiesHolder.getHudsonSecurityManager().getSecurityRealm() instanceof HudsonPrivateSecurityRealm) { return "user.png"; } else { return null; // not applicable now } }
public PluginCenter(File homeDir) throws MalformedURLException, IOException { hudsonHomeDir = homeDir; pluginsDir = new File(hudsonHomeDir, "plugins"); if (!pluginsDir.exists()) { pluginsDir.mkdirs(); } hudsonSecurityManager = HudsonSecurityEntitiesHolder.getHudsonSecurityManager(); proxyConfig = new ProxyConfiguration(homeDir); updateSiteManager = new UpdateSiteManager("default", hudsonHomeDir, proxyConfig); installedPluginManager = new InstalledPluginManager(pluginsDir); }
/** * Returns the {@link ACL} for this object. */ public ACL getACL() { return HudsonSecurityEntitiesHolder.getHudsonSecurityManager().getAuthorizationStrategy().getACL(this); }
public ACL getACL() { final ACL base = HudsonSecurityEntitiesHolder.getHudsonSecurityManager().getAuthorizationStrategy().getACL(this); // always allow a non-anonymous user full control of himself. return new ACL() { public boolean hasPermission(Authentication a, Permission permission) { return (a.getName().equals(id) && !(a instanceof AnonymousAuthenticationToken)) || base.hasPermission(a, permission); } }; }
/** * Returns the {@link ACL} for this object. We need to override the * identical method in AbstractItem because we won't call getACL(Job) * otherwise (single dispatch) */ @Override public ACL getACL() { return HudsonSecurityEntitiesHolder.getHudsonSecurityManager().getAuthorizationStrategy().getACL(this); }
/** * Returns the {@link ACL} for this object. */ public ACL getACL() { return HudsonSecurityEntitiesHolder.getHudsonSecurityManager().getAuthorizationStrategy().getACL(this); }
public HttpResponse doAddSysAdmin(@QueryParameter String sysAdminSid) throws IOException { if (!HudsonSecurityEntitiesHolder.getHudsonSecurityManager().hasPermission(Permission.HUDSON_ADMINISTER)) { return HttpResponses.forbidden(); } if ((sysAdminSid == null) || "".equals(sysAdminSid.trim())) { return new TeamUtils.ErrorHttpResponse("Sys admin name required"); } TeamManager teamManager = HudsonSecurityEntitiesHolder.getHudsonSecurityManager().getTeamManager(); if (teamManager.getSysAdmins().contains(sysAdminSid)) { return new TeamUtils.ErrorHttpResponse(sysAdminSid + " is already a System Administrator."); } teamManager.addSysAdmin(sysAdminSid); return FormValidation.respond(FormValidation.Kind.OK, TeamUtils.getIcon(sysAdminSid)); }
/** * Try to make this user a super-user */ private void tryToMakeAdmin(User u) { AuthorizationStrategy as = HudsonSecurityEntitiesHolder.getHudsonSecurityManager().getAuthorizationStrategy(); if (as instanceof GlobalMatrixAuthorizationStrategy) { GlobalMatrixAuthorizationStrategy ma = (GlobalMatrixAuthorizationStrategy) as; ma.add(Hudson.ADMINISTER, u.getId()); } }
private static RememberMeServices createRememberMeService(UserDetailsService uds) { // create our default TokenBasedRememberMeServices, which depends on the availability of the secret key TokenBasedRememberMeServices2 rms = new TokenBasedRememberMeServices2(); rms.setUserDetailsService(uds); rms.setKey(HudsonSecurityEntitiesHolder.getHudsonSecurityManager().getSecretKey()); rms.setParameter("remember_me"); // this is the form field name in login.jelly return rms; } }
@Override public void onRenamed(Item item, String oldJobName, String newJobName) { if (item instanceof Job<?, ?>) { removeJob(oldJobName); if (!HudsonSecurityEntitiesHolder.getHudsonSecurityManager().getTeamManager().isTeamManagementEnabled()) { addToPublicTeam(newJobName); } else if (getTeamManager().findJobOwnerTeam(newJobName) == null) { // Job going to other than default user team must already be added, else... addToCurrentUserTeam(newJobName); } } }
@Override public void onCreated(Item item) { if (item instanceof Job<?, ?>) { if (!HudsonSecurityEntitiesHolder.getHudsonSecurityManager().getTeamManager().isTeamManagementEnabled()) { addToPublicTeam(item.getName()); } else if (getTeamManager().findJobOwnerTeam(item.getName()) == null) { // Job going to other than default user team must already be added, else... addToCurrentUserTeam(item.getName()); } } }