bug4769 moved SERVER from SecuredDomainType to SecuredSecurityTypes, as

it is an SSE concern
This commit is contained in:
Kai Börnert committed 2018-10-05 09:41:44 +02:00
1 parent 3ef4fad919
commit 5102fc8a94
4 files changed
+25 -19

No files matched your search

@@ -105,12 +105,4 @@ public class SecuredDomainType extends HasPermissionsImpl {
* type-relative identifier is the device configuration name
*/
public static final HasPermissions RACE_MANAGER_APP_DEVICE_CONFIGURATION = new SecuredDomainType("RACE_MANAGER_APP_DEVICE_CONFIGURATION");
public static enum ServerActions implements Action { CONFIGURE_FILE_STORAGE, CONFIGURE_LOCAL_SERVER, CONFIGURE_REMOTE_INSTANCES, IMPORT_MASTER_DATA }
/**
* represents the logical server which may consist of a master and multiple replicas and has a unique server name;
* type-relative identifier is the server name
*/
public static final HasPermissions SERVER = new SecuredDomainType("SERVER", ServerActions.values());
}
@@ -294,18 +294,20 @@ public class AdminConsoleEntryPoint extends AbstractSailingEntryPoint implements
this, eventManagementPanel, this, this, mediaPanel);
masterDataImportPanel.ensureDebugId("MasterDataImport");
panel.addToTabPanel(advancedTabPanel, new DefaultRefreshableAdminConsolePanel<MasterDataImportPanel>(masterDataImportPanel),
getStringMessages().masterDataImportPanel(), SecuredDomainType.SERVER.getPermissionForObjects(
SecuredDomainType.ServerActions.IMPORT_MASTER_DATA, serverInfo.getServerName()));
getStringMessages().masterDataImportPanel(), SecuredSecurityTypes.SERVER.getPermissionForObjects(
SecuredSecurityTypes.ServerActions.IMPORT_MASTER_DATA, serverInfo.getServerName()));
RemoteServerInstancesManagementPanel remoteServerInstancesManagementPanel = new RemoteServerInstancesManagementPanel(getSailingService(), this, getStringMessages());
panel.addToTabPanel(advancedTabPanel, new DefaultRefreshableAdminConsolePanel<RemoteServerInstancesManagementPanel>(remoteServerInstancesManagementPanel),
getStringMessages().remoteServerInstances(),
SecuredDomainType.SERVER.getPermissionForObjects(SecuredDomainType.ServerActions.CONFIGURE_LOCAL_SERVER, serverInfo.getServerName()));
SecuredSecurityTypes.SERVER.getPermissionForObjects(
SecuredSecurityTypes.ServerActions.CONFIGURE_LOCAL_SERVER, serverInfo.getServerName()));
LocalServerManagementPanel localServerInstancesManagementPanel = new LocalServerManagementPanel(getSailingService(), this, getStringMessages());
panel.addToTabPanel(advancedTabPanel, new DefaultRefreshableAdminConsolePanel<LocalServerManagementPanel>(localServerInstancesManagementPanel),
getStringMessages().localServer(),
SecuredDomainType.SERVER.getPermissionForObjects(SecuredDomainType.ServerActions.CONFIGURE_LOCAL_SERVER, serverInfo.getServerName()));
SecuredSecurityTypes.SERVER.getPermissionForObjects(
SecuredSecurityTypes.ServerActions.CONFIGURE_LOCAL_SERVER, serverInfo.getServerName()));
final Set<HasPermissions> allSecuredTypes = new HashSet<>();
Util.addAll(SecuredDomainType.getAllInstances(), allSecuredTypes);
@@ -341,8 +343,8 @@ public class AdminConsoleEntryPoint extends AbstractSailingEntryPoint implements
final FileStoragePanel fileStoragePanel = new FileStoragePanel(getSailingService(), this);
panel.addToTabPanel(advancedTabPanel, new DefaultRefreshableAdminConsolePanel<FileStoragePanel>(fileStoragePanel),
getStringMessages().fileStorage(), SecuredDomainType.SERVER.getPermissionForObjects(
SecuredDomainType.ServerActions.CONFIGURE_FILE_STORAGE, serverInfo.getServerName()));
getStringMessages().fileStorage(), SecuredSecurityTypes.SERVER.getPermissionForObjects(
SecuredSecurityTypes.ServerActions.CONFIGURE_FILE_STORAGE, serverInfo.getServerName()));
panel.initUI();
fillRegattas();
fillLeaderboardGroups();
@@ -47,4 +47,17 @@ public class SecuredSecurityTypes extends HasPermissionsImpl {
* type-relative identifier is the {@link UserGroup#getId() group ID's} string representation
*/
public static final HasPermissions USER_GROUP = new SecuredSecurityTypes("USER_GROUP");
public static enum ServerActions implements Action {
CONFIGURE_FILE_STORAGE,
CONFIGURE_LOCAL_SERVER,
CONFIGURE_REMOTE_INSTANCES,
IMPORT_MASTER_DATA
}
/**
* represents the logical server which may consist of a master and multiple replicas and has a unique server name;
* type-relative identifier is the server name
*/
public static final HasPermissions SERVER = new SecuredSecurityTypes("SERVER", ServerActions.values());
}
@@ -14,7 +14,7 @@ import com.sap.sse.security.shared.SecurityUser;
import com.sap.sse.security.shared.UserGroup;
import com.sap.sse.security.shared.impl.AccessControlListImpl;
import com.sap.sse.security.shared.impl.OwnershipImpl;
import com.sap.sse.security.shared.impl.QualifiedObjectIdentifierImpl;
import com.sap.sse.security.shared.impl.SecuredSecurityTypes;
public class AccessControlStoreImpl implements AccessControlStore {
private static final long serialVersionUID = 2165649781000936074L;
@@ -61,14 +61,13 @@ public class AccessControlStoreImpl implements AccessControlStore {
// check if we already have an ownership for the server, create if it is missing
boolean serverOwnershipIsMissing = true;
QualifiedObjectIdentifier expectedServerOwner = new QualifiedObjectIdentifierImpl("SERVER",
userStore.getDefaultTenant().getName());
QualifiedObjectIdentifier expectedServerOwner = SecuredSecurityTypes.SERVER
.getQualifiedObjectIdentifier(defaultTenant.getName());
for (OwnershipAnnotation ownerShip : ownerships.values()) {
if (ownerShip.getIdOfAnnotatedObject().equals(expectedServerOwner)) {
serverOwnershipIsMissing = false;
}
System.out.println("Ownership loaded from db: " + ownerShip.getIdOfAnnotatedObject() + " "
+ ownerShip.getDisplayNameOfAnnotatedObject());
}
if (serverOwnershipIsMissing) {
setOwnership(expectedServerOwner, null, defaultTenant, defaultTenant.getName());