[jboss-cvs] JBossAS SVN: r62980 - projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/audit.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri May 11 10:28:01 EDT 2007
Author: anil.saldhana at jboss.com
Date: 2007-05-11 10:28:01 -0400 (Fri, 11 May 2007)
New Revision: 62980
Added:
projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/audit/JBossAuditManager.java
Removed:
projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/audit/AuditManager.java
Modified:
projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/audit/AuditContext.java
Log:
SECURITY-47: audit configuration changes
Modified: projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/audit/AuditContext.java
===================================================================
--- projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/audit/AuditContext.java 2007-05-11 14:23:21 UTC (rev 62979)
+++ projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/audit/AuditContext.java 2007-05-11 14:28:01 UTC (rev 62980)
@@ -7,11 +7,8 @@
package org.jboss.security.audit;
import java.util.ArrayList;
-import java.util.List;
+import java.util.List;
-import org.jboss.security.audit.providers.LogAuditProvider;
-
-
/**
* Context for Audit Purposes that manages a set of providers
* @see AuditProvider
@@ -19,16 +16,15 @@
* @version $Revision$
* @since Aug 21, 2006
*/
-public class AuditContext implements SecurityAuditManager
+public class AuditContext
{
private String securityDomain = null;
- private List providerList = new ArrayList();
+ private List<AuditProvider> providerList = new ArrayList<AuditProvider>();
public AuditContext(String securityDomainName)
{
- this.securityDomain = securityDomainName;
- providerList.add(new LogAuditProvider());
+ this.securityDomain = securityDomainName;
}
public void audit(AuditEvent ae)
Deleted: projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/audit/AuditManager.java
===================================================================
--- projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/audit/AuditManager.java 2007-05-11 14:23:21 UTC (rev 62979)
+++ projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/audit/AuditManager.java 2007-05-11 14:28:01 UTC (rev 62980)
@@ -1,43 +0,0 @@
-/*
- * JBoss, the OpenSource J2EE webOS
- *
- * Distributable under LGPL license.
- * See terms of license at gnu.org.
- */
-package org.jboss.security.audit;
-
-import org.jboss.security.audit.providers.LogAuditProvider;
-
-import EDU.oswego.cs.dl.util.concurrent.ConcurrentHashMap;
-
-/**
- * Manages a set of AuditContext
- * @author <a href="mailto:Anil.Saldhana at jboss.org">Anil Saldhana</a>
- * @version $Revision$
- * @since Aug 22, 2006
- */
-public class AuditManager
-{
- private static ConcurrentHashMap contexts = new ConcurrentHashMap();
-
- private static AuditContext defaultContext = null;
-
- static
- {
- defaultContext = new AuditContext("Default_Context");
- defaultContext.addProvider(new LogAuditProvider());
- }
-
- public static AuditContext getAuditContext(String securityDomain)
- {
- AuditContext ac = (AuditContext)contexts.get(securityDomain);
- if(ac == null)
- ac = defaultContext;
- return ac;
- }
-
- public static void addAuditContext(String securityDomain, AuditContext ac)
- {
- contexts.put(securityDomain, ac);
- }
-}
Added: projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/audit/JBossAuditManager.java
===================================================================
--- projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/audit/JBossAuditManager.java (rev 0)
+++ projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/audit/JBossAuditManager.java 2007-05-11 14:28:01 UTC (rev 62980)
@@ -0,0 +1,100 @@
+/*
+ * JBoss, the OpenSource J2EE webOS
+ *
+ * Distributable under LGPL license.
+ * See terms of license at gnu.org.
+ */
+package org.jboss.security.audit;
+
+import java.security.PrivilegedActionException;
+import java.util.List;
+
+import org.jboss.security.audit.config.AuditProviderEntry;
+import org.jboss.security.audit.providers.LogAuditProvider;
+import org.jboss.security.config.ApplicationPolicy;
+import org.jboss.security.config.AuditInfo;
+import org.jboss.security.config.SecurityConfiguration;
+
+import EDU.oswego.cs.dl.util.concurrent.ConcurrentHashMap;
+
+/**
+ * Manages a set of AuditContext
+ * @author <a href="mailto:Anil.Saldhana at jboss.org">Anil Saldhana</a>
+ * @version $Revision$
+ * @since Aug 22, 2006
+ */
+public class JBossAuditManager implements AuditManager
+{
+ private static ConcurrentHashMap contexts = new ConcurrentHashMap();
+
+ private static AuditContext defaultContext = null;
+
+ static
+ {
+ defaultContext = new AuditContext("Default_Context");
+ defaultContext.addProvider(new LogAuditProvider());
+ }
+
+ private String securityDomain;
+
+ public JBossAuditManager(String secDomain)
+ {
+ this.securityDomain = secDomain;
+ }
+
+ public AuditContext getAuditContext() throws PrivilegedActionException
+ {
+ AuditContext ac = (AuditContext)contexts.get(securityDomain);
+ if(ac == null)
+ {
+ ac = new AuditContext(securityDomain);
+ ApplicationPolicy ap = SecurityConfiguration.getApplicationPolicy(securityDomain);
+ if(ap != null)
+ {
+ AuditInfo ai = ap.getAuditInfo();
+ ClassLoader cl = SecurityActions.getContextClassLoader();
+ List<AuditProviderEntry> list = ai.get();
+ for(AuditProviderEntry ape:list)
+ {
+ String pname = ape.getName();
+ try
+ {
+ ac.addProvider((AuditProvider) SecurityActions.loadClass(pname).newInstance());
+ }
+ catch (Exception e)
+ {
+ throw new RuntimeException(e);
+ }
+ }
+ }
+ }
+ return ac;
+ }
+
+ public static AuditContext getAuditContext(String securityDomain)
+ {
+ AuditContext ac = (AuditContext)contexts.get(securityDomain);
+ if(ac == null)
+ ac = defaultContext;
+ return ac;
+ }
+
+ public static void addAuditContext(String securityDomain, AuditContext ac)
+ {
+ contexts.put(securityDomain, ac);
+ }
+
+ public void audit(AuditEvent ae)
+ {
+ AuditContext ac = null;
+ try
+ {
+ ac = getAuditContext();
+ }
+ catch (PrivilegedActionException e)
+ {
+ throw new RuntimeException(e);
+ }
+ ac.audit(ae);
+ }
+}
More information about the jboss-cvs-commits
mailing list