mirror of
https://repository.entgra.net/community/device-mgt-core.git
synced 2025-10-06 02:01:45 +00:00
Add admin role when adding shared scopes
This commit is contained in:
parent
98954c9374
commit
3a63f948a0
@ -18,6 +18,9 @@
|
|||||||
|
|
||||||
package io.entgra.device.mgt.core.apimgt.extension.rest.api.util;
|
package io.entgra.device.mgt.core.apimgt.extension.rest.api.util;
|
||||||
|
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This class represents the scope data.
|
* This class represents the scope data.
|
||||||
*/
|
*/
|
||||||
@ -53,7 +56,7 @@ public class ScopeUtils {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void setRoles(String roles) {
|
public void setRoles(String roles) {
|
||||||
this.roles = roles;
|
this.roles = removeDuplicatesFromRoleString(roles);
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getDescription() {
|
public String getDescription() {
|
||||||
@ -75,4 +78,13 @@ public class ScopeUtils {
|
|||||||
"}";
|
"}";
|
||||||
return jsonString;
|
return jsonString;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static String removeDuplicatesFromRoleString(String roleString) {
|
||||||
|
String[] roles = roleString.split(",");
|
||||||
|
Set<String> roleSet = new HashSet<>();
|
||||||
|
for(String role : roles) {
|
||||||
|
roleSet.add(role.trim());
|
||||||
|
}
|
||||||
|
return String.join(",", roleSet);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -100,6 +100,7 @@ public class APIPublisherServiceImpl implements APIPublisherService {
|
|||||||
public static final String SUBSCRIPTION_TO_CURRENT_TENANT = "CURRENT_TENANT";
|
public static final String SUBSCRIPTION_TO_CURRENT_TENANT = "CURRENT_TENANT";
|
||||||
public static final String API_GLOBAL_VISIBILITY = "PUBLIC";
|
public static final String API_GLOBAL_VISIBILITY = "PUBLIC";
|
||||||
public static final String API_PRIVATE_VISIBILITY = "PRIVATE";
|
public static final String API_PRIVATE_VISIBILITY = "PRIVATE";
|
||||||
|
private static final String ADMIN_ROLE_KEY = ",admin";
|
||||||
|
|
||||||
private static final Log log = LogFactory.getLog(APIPublisherServiceImpl.class);
|
private static final Log log = LogFactory.getLog(APIPublisherServiceImpl.class);
|
||||||
|
|
||||||
@ -186,7 +187,7 @@ public class APIPublisherServiceImpl implements APIPublisherService {
|
|||||||
scope.setName(apiScope.getName());
|
scope.setName(apiScope.getName());
|
||||||
scope.setDescription(apiScope.getDescription());
|
scope.setDescription(apiScope.getDescription());
|
||||||
scope.setKey(apiScope.getKey());
|
scope.setKey(apiScope.getKey());
|
||||||
scope.setRoles(apiScope.getRoles());
|
scope.setRoles(apiScope.getRoles() + ADMIN_ROLE_KEY);
|
||||||
publisherRESTAPIServices.addNewSharedScope(apiApplicationKey, accessTokenInfo, scope);
|
publisherRESTAPIServices.addNewSharedScope(apiApplicationKey, accessTokenInfo, scope);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -259,7 +260,7 @@ public class APIPublisherServiceImpl implements APIPublisherService {
|
|||||||
scope.setName(apiScope.getName());
|
scope.setName(apiScope.getName());
|
||||||
scope.setDescription(apiScope.getDescription());
|
scope.setDescription(apiScope.getDescription());
|
||||||
scope.setKey(apiScope.getKey());
|
scope.setKey(apiScope.getKey());
|
||||||
scope.setRoles(apiScope.getRoles());
|
scope.setRoles(apiScope.getRoles() + ADMIN_ROLE_KEY);
|
||||||
publisherRESTAPIServices.addNewSharedScope(apiApplicationKey, accessTokenInfo, scope);
|
publisherRESTAPIServices.addNewSharedScope(apiApplicationKey, accessTokenInfo, scope);
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -280,7 +281,7 @@ public class APIPublisherServiceImpl implements APIPublisherService {
|
|||||||
scope.setName(apiScope.getName());
|
scope.setName(apiScope.getName());
|
||||||
scope.setDescription(apiScope.getDescription());
|
scope.setDescription(apiScope.getDescription());
|
||||||
scope.setKey(apiScope.getKey());
|
scope.setKey(apiScope.getKey());
|
||||||
scope.setRoles(apiScope.getRoles());
|
scope.setRoles(apiScope.getRoles() + ADMIN_ROLE_KEY);
|
||||||
publisherRESTAPIServices.addNewSharedScope(apiApplicationKey, accessTokenInfo, scope);
|
publisherRESTAPIServices.addNewSharedScope(apiApplicationKey, accessTokenInfo, scope);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -460,7 +461,7 @@ public class APIPublisherServiceImpl implements APIPublisherService {
|
|||||||
scope.setName(scopeMapping.getName());
|
scope.setName(scopeMapping.getName());
|
||||||
scope.setDescription(scopeMapping.getName());
|
scope.setDescription(scopeMapping.getName());
|
||||||
scope.setKey(scopeMapping.getKey());
|
scope.setKey(scopeMapping.getKey());
|
||||||
scope.setRoles(scopeMapping.getDefaultRoles());
|
scope.setRoles(scopeMapping.getDefaultRoles() + ADMIN_ROLE_KEY);
|
||||||
publisherRESTAPIServices.addNewSharedScope(apiApplicationKey, accessTokenInfo, scope);
|
publisherRESTAPIServices.addNewSharedScope(apiApplicationKey, accessTokenInfo, scope);
|
||||||
}
|
}
|
||||||
} catch (BadRequestException | UnexpectedResponseException | APIServicesException e) {
|
} catch (BadRequestException | UnexpectedResponseException | APIServicesException e) {
|
||||||
|
|||||||
@ -594,7 +594,7 @@ CREATE TABLE IF NOT EXISTS DM_METADATA (
|
|||||||
METADATA_ID INT AUTO_INCREMENT NOT NULL,
|
METADATA_ID INT AUTO_INCREMENT NOT NULL,
|
||||||
DATA_TYPE VARCHAR(16) NOT NULL,
|
DATA_TYPE VARCHAR(16) NOT NULL,
|
||||||
METADATA_KEY VARCHAR(128) NOT NULL,
|
METADATA_KEY VARCHAR(128) NOT NULL,
|
||||||
METADATA_VALUE VARCHAR(20000) NOT NULL,
|
METADATA_VALUE VARCHAR(65535) NOT NULL,
|
||||||
TENANT_ID INTEGER NOT NULL,
|
TENANT_ID INTEGER NOT NULL,
|
||||||
PRIMARY KEY (METADATA_ID),
|
PRIMARY KEY (METADATA_ID),
|
||||||
CONSTRAINT METADATA_KEY_TENANT_ID UNIQUE (METADATA_KEY, TENANT_ID)
|
CONSTRAINT METADATA_KEY_TENANT_ID UNIQUE (METADATA_KEY, TENANT_ID)
|
||||||
|
|||||||
@ -656,7 +656,7 @@ CREATE TABLE IF NOT EXISTS DM_METADATA (
|
|||||||
METADATA_ID INTEGER NOT NULL AUTO_INCREMENT,
|
METADATA_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
DATA_TYPE VARCHAR(16) NOT NULL,
|
DATA_TYPE VARCHAR(16) NOT NULL,
|
||||||
METADATA_KEY VARCHAR(128) NOT NULL,
|
METADATA_KEY VARCHAR(128) NOT NULL,
|
||||||
METADATA_VALUE VARCHAR(8000) NOT NULL,
|
METADATA_VALUE VARCHAR(65535) NOT NULL,
|
||||||
TENANT_ID INTEGER NOT NULL,
|
TENANT_ID INTEGER NOT NULL,
|
||||||
PRIMARY KEY (METADATA_ID),
|
PRIMARY KEY (METADATA_ID),
|
||||||
UNIQUE KEY METADATA_KEY_TENANT_ID (METADATA_KEY,TENANT_ID)
|
UNIQUE KEY METADATA_KEY_TENANT_ID (METADATA_KEY,TENANT_ID)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user