| ``curl -X POST 'http://vid.api.simpledemo.onap.org:8080/vid/change-management/vnf_workflow_relation' -H 'Accept-Encoding: gzip, deflate' -H 'Content-Type:application/json' -d '{"workflowsDetails":[{"workflowName":"VNF In Place Software Update","vnfDetails":{"UUID":"X-X-X-X","invariantUUID":"Y-Y-Y-Y"}}, {"workflowName":"VNF Scale Out","vnfDetails":{"UUID":"X-X-X-X","invariantUUID":"Y-Y-Y-Y"}}]}'``
- | **VoLTE E2E services deployment support**
- | VID supports VoLTE E2E services deployment. In order to trigger the E2E flow, the service category in the model (as SDC generates it) has to be set to "E2E Service".
\ No newline at end of file
+ | VID supports VoLTE E2E services deployment. In order to trigger the E2E flow, the service category in the model (as SDC generates it) has to be set to "E2E Service".
+
+- | **Role management support**
+ | VID supports role management for its users with AAF integration. This feature is turned off by default. In order to activate it, update "role_management_activated" value in system.properties to "true".
\ No newline at end of file
``db.password``
The password for the VID database
+``role_management_activated``
+ Role management activation flag, "false" by defauly. Change to "true" in order to activate this feature.
+
``aai.server.url.base``
Base URL for the A&AI server
element_map_file_path = app/fusionapp/files/\r
element_map_icon_path = app/fusionapp/icons/\r
\r
+role_management_activated = false\r
+\r
#aai related properties\r
#aai.server.url.base=https://aai.api.openecomp.org:8443/aai/\r
#aai.server.url=https://aai.api.openecomp.org:8443/aai/v8/\r
element_map_file_path = /tmp\r
element_map_icon_path = app/vid/icons/\r
\r
+role_management_activated = false\r
+\r
#aai related properties\r
aai.server.url.base=https://${VID_AAI_HOST}:${VID_AAI_PORT}/aai/\r
aai.server.url=https://${VID_AAI_HOST}:${VID_AAI_PORT}/aai/v13/\r
package org.onap.vid.roles;
+import org.onap.portalsdk.core.util.SystemProperties;
import org.onap.vid.mso.rest.RequestDetails;
import java.util.List;
*/
public class RoleValidator {
+ private boolean disableRoles = SystemProperties.getProperty("role_management_activated") == "false";
private List<Role> userRoles;
public RoleValidator(List<Role> roles) {
}
public boolean isSubscriberPermitted(String subscriberName) {
+ if(this.disableRoles) return true;
+
for (Role role : userRoles) {
if (role.getSubscribeName().equals(subscriberName))
return true;
}
public boolean isServicePermitted(String subscriberName, String serviceType) {
+ if(this.disableRoles) return true;
+
for (Role role : userRoles) {
if (role.getSubscribeName().equals(subscriberName) && role.getServiceType().equals(serviceType))
return true;
}
public boolean isMsoRequestValid(RequestDetails mso_request) {
+ 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");
}
public boolean isTenantPermitted(String globalCustomerId, String serviceType, String tenantName) {
+ if(this.disableRoles) return true;
+
for (Role role : userRoles) {
if (role.getSubscribeName().equals(globalCustomerId)
&& role.getServiceType().equals(serviceType)
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