From 41a99a5938c6881a978199fe10b0c392eb27d569 Mon Sep 17 00:00:00 2001 From: Christina Fu Date: Thu, 24 Mar 2016 16:23:05 -0700 Subject: Ticket #1006 Audit logging for TPS REST operations This patch adds audit logging to TPS REST wrote-specific operations. The read-specific operations are already captured by AuditEvent=AUTHZ_* The affected (new or modified) log messages include: LOGGING_SIGNED_AUDIT_CONFIG_TOKEN_GENERAL_5 LOGGING_SIGNED_AUDIT_CONFIG_TOKEN_PROFILE_6 LOGGING_SIGNED_AUDIT_CONFIG_TOKEN_MAPPING_RESOLVER_6 LOGGING_SIGNED_AUDIT_CONFIG_TOKEN_AUTHENTICATOR_6 LOGGING_SIGNED_AUDIT_CONFIG_TOKEN_CONNECTOR_6 LOGGING_SIGNED_AUDIT_CONFIG_TOKEN_RECORD_6 LOGGING_SIGNED_AUDIT_TOKEN_STATE_CHANGE_8 --- .../src/com/netscape/cmscore/logging/Auditor.java | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'base/server/cmscore') diff --git a/base/server/cmscore/src/com/netscape/cmscore/logging/Auditor.java b/base/server/cmscore/src/com/netscape/cmscore/logging/Auditor.java index f0bcb5bee..8c99e676c 100644 --- a/base/server/cmscore/src/com/netscape/cmscore/logging/Auditor.java +++ b/base/server/cmscore/src/com/netscape/cmscore/logging/Auditor.java @@ -95,7 +95,8 @@ public class Auditor implements IAuditor { public String getParamString(String scope, String type, String id, Map params) { // if no signed audit object exists, bail - if (signedAuditLogger == null) return null; + if (signedAuditLogger == null) + return null; StringBuilder parameters = new StringBuilder(); // always identify the scope of the request @@ -124,16 +125,26 @@ public class Auditor implements IAuditor { + SIGNED_AUDIT_NAME_VALUE_DELIMITER + id); } + return getParamString(parameters, params); + } + + @Override + public String getParamString(StringBuilder parameters, Map params) { - if (params == null) return parameters.toString(); + if (parameters == null) { + parameters = new StringBuilder(); + } + if (params == null) + return parameters.toString(); // identify any remaining request parameters - for (Map.Entry entry : params.entrySet() ) { + for (Map.Entry entry : params.entrySet()) { String name = entry.getKey(); // skip "RULENAME" parameter - if (name.equals(SIGNED_AUDIT_RULENAME)) continue; + if (name.equals(SIGNED_AUDIT_RULENAME)) + continue; parameters.append(SIGNED_AUDIT_NAME_VALUE_PAIRS_DELIMITER); -- cgit