Turn role management off by default 01/82901/2
authorSonsino, Ofir (os0695) <os0695@intl.att.com>
Fri, 16 Nov 2018 13:01:29 +0000 (15:01 +0200)
committerIttay Stern <ittay.stern@att.com>
Wed, 3 Apr 2019 08:23:16 +0000 (11:23 +0300)
(cherrypicked from casablanca)

Change-Id: Id8611389b80c3a693c989ce3421f08435ad05d2f
Issue-ID: VID-448
Signed-off-by: Wojciech Sliwka <wojciech.sliwka@nokia.com>
Signed-off-by: Ittay Stern <ittay.stern@att.com>
epsdk-app-onap/src/main/webapp/WEB-INF/conf/system.properties
epsdk-app-onap/src/main/webapp/WEB-INF/conf/system_template.properties
vid-app-common/src/main/java/org/onap/vid/roles/RoleValidator.java
vid-app-common/src/test/resources/WEB-INF/conf/system.properties

index 1d0a455..eaaf019 100755 (executable)
@@ -107,6 +107,8 @@ decryption_key                                = AGLDdG4D04BKm2IxIWEr8o==
 element_map_file_path = app/fusionapp/files/
 element_map_icon_path = app/fusionapp/icons/
 
+role_management_activated = false
+
 #aai related properties
 #aai.server.url.base=https://aai.api.openecomp.org:8443/aai/
 #aai.server.url=https://aai.api.openecomp.org:8443/aai/v8/
@@ -206,4 +208,4 @@ scheduler.get.time.slots=/v1/ChangeManagement/schedules/
 scheduler.server.url=http://BYO.scheduler:8989/scheduler
 
 scheduler.submit.new.vnf.change=/v1/ChangeManagement/schedules/{scheduleId}/approvals
-scheduler.get.schedules=/v1/ChangeManagement/schedules/scheduleDetails/
\ No newline at end of file
+scheduler.get.schedules=/v1/ChangeManagement/schedules/scheduleDetails/
index 5668b78..9ab9d77 100755 (executable)
@@ -64,6 +64,8 @@ decryption_key = ${VID_DECRYPTION_KEY}
 element_map_file_path = /tmp
 element_map_icon_path = app/vid/icons/
 
+role_management_activated = false
+
 #aai related properties
 aai.server.url.base=${VID_AAI_URL}/aai/
 aai.server.url=${VID_AAI_URL}/aai/v13/
index 315e22d..4b92b64 100644 (file)
@@ -7,9 +7,9 @@
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
- * 
+ *
  *      http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
 package org.onap.vid.roles;
 
-import org.onap.vid.mso.rest.RequestDetails;
-
 import java.util.List;
 import java.util.Map;
+import org.onap.portalsdk.core.util.SystemProperties;
+import org.onap.vid.mso.rest.RequestDetails;
 
 /**
  * Created by Oren on 7/12/17.
  */
 public class RoleValidator {
 
-    private boolean disableRoles = true;
-    private List<Role> userRoles;
+    private boolean disableRoles;
+    private final List<Role> userRoles;
 
     public RoleValidator(List<Role> roles) {
         this.userRoles = roles;
+        disableRoles = SystemProperties.getProperty("role_management_activated").equals("false");
     }
 
     public boolean isSubscriberPermitted(String subscriberName) {
-        if (this.disableRoles) return true;
+        if (this.disableRoles) {
+            return true;
+        }
 
         for (Role role : userRoles) {
-            if (role.getSubscribeName().equals(subscriberName))
+            if (role.getSubscribeName().equals(subscriberName)) {
                 return true;
+            }
         }
         return false;
     }
 
     public boolean isServicePermitted(String subscriberName, String serviceType) {
-        if (this.disableRoles) return true;
+        if (this.disableRoles) {
+            return true;
+        }
 
         for (Role role : userRoles) {
-            if (role.getSubscribeName().equals(subscriberName) && role.getServiceType().equals(serviceType))
+            if (role.getSubscribeName().equals(subscriberName) && role.getServiceType().equals(serviceType)) {
                 return true;
+            }
         }
         return false;
     }
 
-    public boolean isMsoRequestValid(RequestDetails mso_request) {
-        if (this.disableRoles) return true;
+    boolean isMsoRequestValid(RequestDetails msoRequest) {
+        if (this.disableRoles) {
+            return true;
+        }
 
         try {
-            String globalSubscriberIdRequested = (String) ((Map) ((Map) mso_request.getAdditionalProperties().get("requestDetails")).get("subscriberInfo")).get("globalSubscriberId");
-            String serviceType = (String) ((Map) ((Map) mso_request.getAdditionalProperties().get("requestDetails")).get("requestParameters")).get("subscriptionServiceType");
+            String globalSubscriberIdRequested = (String) ((Map) ((Map) msoRequest.getAdditionalProperties()
+                .get("requestDetails")).get("subscriberInfo")).get("globalSubscriberId");
+            String serviceType = (String) ((Map) ((Map) msoRequest.getAdditionalProperties().get("requestDetails"))
+                .get("requestParameters")).get("subscriptionServiceType");
             return isServicePermitted(globalSubscriberIdRequested, serviceType);
         } catch (Exception e) {
             //Until we'll get the exact information regarding the tenants and the global customer id, we'll return true on unknown requests to mso
@@ -71,12 +82,14 @@ public class RoleValidator {
     }
 
     public boolean isTenantPermitted(String globalCustomerId, String serviceType, String tenantName) {
-        if (this.disableRoles) return true;
+        if (this.disableRoles) {
+            return true;
+        }
 
         for (Role role : userRoles) {
             if (role.getSubscribeName().equals(globalCustomerId)
-                    && role.getServiceType().equals(serviceType)
-                    && (role.getTenant() == null || role.getTenant().equalsIgnoreCase(tenantName))) {
+                && role.getServiceType().equals(serviceType)
+                && (role.getTenant() == null || role.getTenant().equalsIgnoreCase(tenantName))) {
                 return true;
             }
         }
index 6f19eb3..208155b 100644 (file)
@@ -71,6 +71,8 @@ application_name              = Virtual Infrastructure Deployment
 element_map_file_path = app/fusionapp/files/
 element_map_icon_path = app/fusionapp/icons/
 
+role_management_activated = false
+
 #aai related properties
 #dev server
 #ist servers