Make Guard Configurable 19/16519/1
authordaniel <dc443y@att.com>
Thu, 28 Sep 2017 21:17:04 +0000 (16:17 -0500)
committerdaniel <dc443y@att.com>
Thu, 28 Sep 2017 21:23:15 +0000 (16:23 -0500)
This allows the user to disable or enable guard
through the .properties.environment file. Verified
and tested in a pdp. Properties were added to the
simulators properties file for the simulators to
work out of the box.

Issue-ID: POLICY-259
Change-Id: I0027a5d28f1b30e81bdbe42fa17621b36a61c850
Signed-off-by: Daniel Cruz <dc443y@att.com>
controlloop/common/feature-controlloop-utils/src/main/feature/config/simulators.properties.environment
controlloop/packages/basex/src/files/config/controlloop.properties.environment
controlloop/templates/archetype-cl-amsterdam/src/main/resources/archetype-resources/src/main/resources/__closedLoopControlName__.drl

index ec5023b..cfe957b 100644 (file)
 # Environment file (.environment) for the simulator for control loop applications
 
 aai.url=http://localhost:6666
+aai.username=policy
+aai.password=policy
+
 so.url=http://localhost:6667
+so.username=policy
+so.password=policy
+
 vfc.url=http://localhost:6668
+vfc.username=policy
+vfc.password=policy
+
 guard.url=http://localhost:6669/pdp/api/getDecision
+guard.disabled=true
 
index 70f298c..bc4989b 100644 (file)
@@ -46,3 +46,4 @@ pdpx.client.password={{PDP_CLIENT_PASSWORD}}
 
 guard.url=http://${{PDP_HOST}}:8081/pdp/api/getDecision
 guard.jdbc.url=mariadb://${{SQL_HOST}}:3306/operationshistory10
+guard.disabled=true
index c3bd446..b56d220 100644 (file)
@@ -132,11 +132,12 @@ rule "${policyName}.SETUP"
     String guardUsername = PolicyEngine.manager.getEnvironmentProperty("guard.username");
     String guardPassword = PolicyEngine.manager.getEnvironmentProperty("guard.password");
     String guardJdbcUrl = PolicyEngine.manager.getEnvironmentProperty("guard.jdbc.url");
+    String guardDisabled = PolicyEngine.manager.getEnvironmentProperty("guard.disabled");
     
     logger.info("{}: {} : AAI=[{}:{}]", params.getClosedLoopControlName(), drools.getRule().getName(), aaiUrl, aaiUsername);
     logger.info("{}: {} : SO=[{}:{}]", params.getClosedLoopControlName(), drools.getRule().getName(), soUrl, soUsername);
     logger.info("{}: {} : VFC=[{}:{}]", params.getClosedLoopControlName(), drools.getRule().getName(), vfcUrl, vfcUsername);
-    logger.info("{}: {} : GUARD=[{}:{}:{}]", params.getClosedLoopControlName(), drools.getRule().getName(), guardUrl, guardUsername, guardJdbcUrl);
+    logger.info("{}: {} : GUARD=[{}:{}:{}:{}]", params.getClosedLoopControlName(), drools.getRule().getName(), guardUrl, guardUsername, guardJdbcUrl, guardDisabled);
     logger.info("{}: {} : DB=[{}:{}]", params.getClosedLoopControlName(), drools.getRule().getName(), sqlDbUsername, sqlDbPassword);
 end
 
@@ -615,7 +616,9 @@ rule "${policyName}.EVENT.MANAGER.OPERATION.LOCKED.GUARD_NOT_YET_QUERIED"
     // to the CallGuardTask() and set the first argument to null 
     // (instead of XacmlPdpEngine).
     //
-    boolean guardEnabled = false;
+    
+    // NOTE: The environment properties uses "guard.disabled" but the boolean is guardEnabled
+    boolean guardEnabled = "false".equalsIgnoreCase(PolicyEngine.manager.getEnvironmentProperty("guard.disabled"));
     
     if(guardEnabled){