diff options
author | Einat Vinouze <einat.vinouze@intl.att.com> | 2020-01-27 15:49:13 +0200 |
---|---|---|
committer | Ittay Stern <ittay.stern@att.com> | 2020-01-28 07:27:01 +0200 |
commit | e95a7b89aaac965e89d96eba59968a351cb77f40 (patch) | |
tree | 85206d342637697a3611195bf6135d123c0a3cee /vid-app-common/src/main/java/org/onap/vid/roles | |
parent | 79a8f61035752620b50a0fb42d98361f21962cd9 (diff) |
Introduce WithPermissionProperties as validation-points for RoleValidator
Issue-ID: VID-758
Change-Id: Id8f1f6faeb10a92cf20ca9a17879bc7e745526b0
Signed-off-by: Einat Vinouze <einat.vinouze@intl.att.com>
Signed-off-by: Ittay Stern <ittay.stern@att.com>
Diffstat (limited to 'vid-app-common/src/main/java/org/onap/vid/roles')
5 files changed, 22 insertions, 20 deletions
diff --git a/vid-app-common/src/main/java/org/onap/vid/roles/AlwaysValidRoleValidator.java b/vid-app-common/src/main/java/org/onap/vid/roles/AlwaysValidRoleValidator.java index 4e5340fc2..e12f5403f 100644 --- a/vid-app-common/src/main/java/org/onap/vid/roles/AlwaysValidRoleValidator.java +++ b/vid-app-common/src/main/java/org/onap/vid/roles/AlwaysValidRoleValidator.java @@ -32,7 +32,7 @@ public class AlwaysValidRoleValidator implements RoleValidator { } @Override - public boolean isServicePermitted(String subscriberName, String serviceType) { + public boolean isServicePermitted(WithPermissionProperties permissionProperties) { return true; } diff --git a/vid-app-common/src/main/java/org/onap/vid/roles/PermissionProperties.kt b/vid-app-common/src/main/java/org/onap/vid/roles/PermissionProperties.kt new file mode 100644 index 000000000..f62b98aef --- /dev/null +++ b/vid-app-common/src/main/java/org/onap/vid/roles/PermissionProperties.kt @@ -0,0 +1,17 @@ +package org.onap.vid.roles + +import org.onap.vid.aai.ServiceSubscription + + +interface WithPermissionProperties { + val subscriberId: String? + val serviceType: String? +} + +data class PermissionProperties( + override val subscriberId: String, + override val serviceType: String +) : WithPermissionProperties { + constructor(serviceSubscription: ServiceSubscription, subscriberId: String) : this(subscriberId, serviceSubscription.serviceType) +} + diff --git a/vid-app-common/src/main/java/org/onap/vid/roles/RoleValidator.java b/vid-app-common/src/main/java/org/onap/vid/roles/RoleValidator.java index f0ee26b0b..4ad168c4f 100644 --- a/vid-app-common/src/main/java/org/onap/vid/roles/RoleValidator.java +++ b/vid-app-common/src/main/java/org/onap/vid/roles/RoleValidator.java @@ -40,7 +40,7 @@ public interface RoleValidator { boolean isSubscriberPermitted(String subscriberName); - boolean isServicePermitted(String subscriberName, String serviceType); + boolean isServicePermitted(WithPermissionProperties serviceInstanceSearchResult); boolean isTenantPermitted(String globalCustomerId, String serviceType, String tenantName); } diff --git a/vid-app-common/src/main/java/org/onap/vid/roles/RoleValidatorByOwningEntity.java b/vid-app-common/src/main/java/org/onap/vid/roles/RoleValidatorByOwningEntity.java index e615c1302..726567cc6 100644 --- a/vid-app-common/src/main/java/org/onap/vid/roles/RoleValidatorByOwningEntity.java +++ b/vid-app-common/src/main/java/org/onap/vid/roles/RoleValidatorByOwningEntity.java @@ -33,7 +33,7 @@ public class RoleValidatorByOwningEntity implements RoleValidator{ } @Override - public boolean isServicePermitted(String subscriberName, String serviceType) { + public boolean isServicePermitted(WithPermissionProperties permissionProperties) { return false; } diff --git a/vid-app-common/src/main/java/org/onap/vid/roles/RoleValidatorBySubscriberAndServiceType.java b/vid-app-common/src/main/java/org/onap/vid/roles/RoleValidatorBySubscriberAndServiceType.java index 244610c89..95d8a1627 100644 --- a/vid-app-common/src/main/java/org/onap/vid/roles/RoleValidatorBySubscriberAndServiceType.java +++ b/vid-app-common/src/main/java/org/onap/vid/roles/RoleValidatorBySubscriberAndServiceType.java @@ -21,8 +21,6 @@ package org.onap.vid.roles; import java.util.List; -import java.util.Map; -import org.onap.vid.mso.rest.RequestDetails; public class RoleValidatorBySubscriberAndServiceType implements RoleValidator { @@ -43,9 +41,9 @@ public class RoleValidatorBySubscriberAndServiceType implements RoleValidator { } @Override - public boolean isServicePermitted(String subscriberName, String serviceType) { + public boolean isServicePermitted(WithPermissionProperties permissionProperties) { for (Role role : userRoles) { - if (role.getSubscribeName().equals(subscriberName) && role.getServiceType().equals(serviceType)) { + if (role.getSubscribeName().equals(permissionProperties.getSubscriberId()) && role.getServiceType().equals(permissionProperties.getServiceType())) { return true; } } @@ -64,17 +62,4 @@ public class RoleValidatorBySubscriberAndServiceType implements RoleValidator { return false; } - boolean isMsoRequestValid(RequestDetails msoRequest) { - try { - 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 - return true; - } - } - } |