diff options
author | vakwetu <vakwetu@c9f7a03b-bd48-0410-a16d-cbbf54688b0b> | 2010-09-15 16:42:56 +0000 |
---|---|---|
committer | vakwetu <vakwetu@c9f7a03b-bd48-0410-a16d-cbbf54688b0b> | 2010-09-15 16:42:56 +0000 |
commit | 2daf8672f4b55b2a06bcd89041d4ab48691261e5 (patch) | |
tree | da8852fae16fc81bdecce03f38e6fd17c69cd040 /pki/base/common/src/com/netscape/cms/servlet/admin/KRAAdminServlet.java | |
parent | ae73bc8273fd1bb9f4d10a06545a19947f91e485 (diff) | |
download | pki-2daf8672f4b55b2a06bcd89041d4ab48691261e5.tar.gz pki-2daf8672f4b55b2a06bcd89041d4ab48691261e5.tar.xz pki-2daf8672f4b55b2a06bcd89041d4ab48691261e5.zip |
Bugzilla Bug 607380 - CC: Make sure Java Console can configure all security relevant config items
git-svn-id: svn+ssh://svn.fedorahosted.org/svn/pki/trunk@1295 c9f7a03b-bd48-0410-a16d-cbbf54688b0b
Diffstat (limited to 'pki/base/common/src/com/netscape/cms/servlet/admin/KRAAdminServlet.java')
-rw-r--r-- | pki/base/common/src/com/netscape/cms/servlet/admin/KRAAdminServlet.java | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/pki/base/common/src/com/netscape/cms/servlet/admin/KRAAdminServlet.java b/pki/base/common/src/com/netscape/cms/servlet/admin/KRAAdminServlet.java index e51ef1aeb..d1ddf6f4d 100644 --- a/pki/base/common/src/com/netscape/cms/servlet/admin/KRAAdminServlet.java +++ b/pki/base/common/src/com/netscape/cms/servlet/admin/KRAAdminServlet.java @@ -124,6 +124,9 @@ public class KRAAdminServlet extends AdminServlet { } else if (scope.equals(ScopeDef.SC_NOTIFICATION_RIQ)) { getNotificationRIQConfig(req, resp); return; + } else if (scope.equals(ScopeDef.SC_GENERAL)) { + getGeneralConfig(req, resp); + return; } } else if (op.equals(OpDef.OP_MODIFY)) { mOp = "modify"; @@ -145,6 +148,8 @@ public class KRAAdminServlet extends AdminServlet { } else if (scope.equals(ScopeDef.SC_NOTIFICATION_RIQ)) { setNotificationRIQConfig(req, resp); return; + } else if (scope.equals(ScopeDef.SC_GENERAL)) { + setGeneralConfig(req,resp); } } } catch (EBaseException e) { @@ -160,6 +165,65 @@ public class KRAAdminServlet extends AdminServlet { null, resp); } + private void getGeneralConfig(HttpServletRequest req, + HttpServletResponse resp) throws ServletException, + IOException, EBaseException { + + NameValuePairs params = new NameValuePairs(); + int value = 1; + + value = mKRA.getNoOfRequiredAgents(); + params.add(Constants.PR_NO_OF_REQUIRED_RECOVERY_AGENTS, Integer.toString(value)); + + sendResponse(SUCCESS, null, params, resp); + } + + private void setGeneralConfig(HttpServletRequest req, + HttpServletResponse resp) throws ServletException, + IOException, EBaseException { + Enumeration enum1 = req.getParameterNames(); + boolean restart = false; + + String auditMessage = null; + String auditSubjectID = auditSubjectID(); + + while (enum1.hasMoreElements()) { + String key = (String) enum1.nextElement(); + String value = req.getParameter(key); + + if (key.equals(Constants.PR_NO_OF_REQUIRED_RECOVERY_AGENTS)) { + try { + int number = Integer.parseInt(value); + mKRA.setNoOfRequiredAgents(number); + } catch (NumberFormatException e) { + auditMessage = CMS.getLogMessage( + LOGGING_SIGNED_AUDIT_CONFIG_DRM, + auditSubjectID, + ILogger.FAILURE, + auditParams(req)); + + audit(auditMessage); + throw new EBaseException("Number of agents must be an integer"); + } + } + } + + commit(true); + + auditMessage = CMS.getLogMessage( + LOGGING_SIGNED_AUDIT_CONFIG_DRM, + auditSubjectID, + ILogger.SUCCESS, + auditParams(req)); + + audit(auditMessage); + + if (restart) + sendResponse(RESTART, null, null, resp); + else + sendResponse(SUCCESS, null, null, resp); + } + /** * Changes M-N scheme. * <P> |