Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 39 Next »

Introduction

Administrator in 4.5 have access to menu items (Admincentral pages) defined via ACLs. Now we have apps instead of pages in Magnolia 5. We have to provide update task to convert these permissions.

Mapping of Pages

Old URLNew app

Module

Ticket
/modules/adminInterface/config/menu/dms           /modules/dam/apps/assetsdam MGNLDAM-318 - Getting issue details... STATUS
/modules/adminInterface/config/menu/data/Contact   /modules/contacts/apps/contactscontacts-app CNTCTSAPP-57 - Getting issue details... STATUS
/modules/adminInterface/config/menu/data/category   /modules/categorization/apps/categoriescategorization

MGNLCAT-100 - Getting issue details... STATUS

/modules/adminInterface/config/menu/templating-kit   /modules/ui-admincentral/config/appLauncherLayoutapps/group/stkSTK

MGNLSTK-1249 - Getting issue details... STATUS

 

/modules/adminInterface/config/menu/templating-kit/etkSites

/modules/ui-admincentral/apps/stkSiteAppSTK
/modules/adminInterface/config/menu/templating-kit/stkThemes/modules/ui-admincentral/apps/stkThemesAppSTK
/modules/adminInterface/config/menu/templating-kit/stkDialogs/modules/ui-admincentral/apps/dialogsSTK
/modules/adminInterface/config/menu/templating-kit/stkChannels/modules/ui-admincentral/apps/channelsSTK
/modules/adminInterface/config/menu/templating-kit/stkTemplateDefs/modules/ui-admincentral/apps/stkTemplateDefsAppSTK
/modules/adminInterface/config/menu/templating-kit/templates   /modules/ui-admincentral/apps/templatesAppSTK
/modules/adminInterface/config/menu/templating-kit/resources   /modules/ui-admincentral/apps/resourcesAppSTK
/modules/adminInterface/config/menu/website        /modules/pages/apps/pagespages-app

















MGNLUI-2268 - Getting issue details... STATUS
/modules/adminInterface/config/menu/data/company/modules/ui-admincentral/apps/CompanyAppui-admincentral
/modules/adminInterface/config/menu/data      /modules/ui-admincentral/config/appLauncherLayoutapps/group/dataui-admincentral -> data
/modules/adminInterface/config/menu/security/modules/apps/security-app/security-app
/.magnolia/pages/logViewer*           /modules/ui-admincentral/apps/logViewerui-admincentral
/.magnolia/trees/website-jcr /modules/ui-admincentral/apps/websiteJcrBrowserui-admincentral
/.magnolia/pages/configuration* /modules/ui-admincentral/apps/configInfoui-admincentral
/.magnolia/pages/export*/modules/ui-admincentral/apps/exportui-admincentral
/.magnolia/pages/import*/modules/ui-admincentral/apps/importui-admincentral
/.magnolia/pages/jcrUtils*/modules/ui-admincentral/apps/jcrQueryUtilsui-admincentral
/.magnolia/pages/developmentUtils*/modules/ui-admincentral/apps/devToolsui-admincentral
/.magnolia/pages/permission*/modules/ui-admincentral/apps/permissionsui-admincentral
/.magnolia/pages/configuration                    /modules/ui-admincentral/apps/configurationui-admincentral
/modules/adminInterface/config/menu/tools           

/modules/ui-admincentral/config/appLauncherLayoutapps/group/tools

/modules/ui-admincentral/config/appLauncherLayoutapps/group/dev

This menu is now splitted into these two -> we need Task with multiple newApp paths

ui-admincentral
/.magnolia/pages/messages* /modules/messages-app/apps/messages messages-app
/modules/adminInterface/config/menu/inbox  
   

Modules in process of migration

/.magnolia/pages/sendMail*          /modules/mail/apps/mailToolsmail MGNLMAIL-21 - Getting issue details... STATUS
/modules/adminInterface/config/menu/data/RssAggregator/modules/ui-admincentral/apps/RssAggregatorApprssaggregator MGNLRSSAGG-108 - Getting issue details... STATUS
/modules/adminInterface/config/menu/tools/groovyInteractiveShell/modules/ui-admincentral/apps/groovyConsolegroovy MGNLGROOVY-83 - Getting issue details... STATUS
/modules/adminInterface/config/menu/templating-kit/templates   /modules/inplace-templating/apps/inplace-templatinginplace templating MGNLINTEMPL-37 - Getting issue details... STATUS
/modules/adminInterface/config/menu/templating-kit/resources   /modules/ui-admincentral/apps/resourcesAppresources MGNLRES-70 - Getting issue details... STATUS

Modules not yet migrated

/.magnolia/pages/cacheTools*/modules/ui-admincentral/apps/cacheToolscache MGNLCACHE-23 - Getting issue details... STATUS
    
    
    
    
    
    
    

Pages not in 5.x yet

/.magnolia/pages/migrationReport*


         

 

  
/.magnolia/pages/activationTools*   
/.magnolia/pages/users*   
/modules/adminInterface/config/menu/forum   
/.magnolia/pages/backup*   
/.magnolia/pages/activationMonitor*   
/.magnolia/pages/allModulesList*   
/.magnolia/pages/flows*   
/.magnolia/pages/dependencies*   
/.magnolia/pages/password-reminder*   
/.magnolia/pages/user-validation*   
/.magnolia/pages/register*   
/.magnolia/pages/installedModulesList*   

/modules/adminInterface/config/menu/data/types

   
/modules/adminInterface/config/menu/data/navigate   
/modules/adminInterface/config/menu/data/config   

 

Tasks

Convert 4.5 Admincentral ACLs to apps permissions

GOAL: Proper permission to apps, old ACLs removed.

REQUIREMENTS:

  • none

STEPS:

  1. Run query in userroles workspace for finding all ACL nodes with certain pattern.
  2. Convert these ACLs to apps permission.
  3. Remove these ACLs from userrolesworkspace.
    • the permissions are in pairs for page and subpage, so we need to remove both permissions (path, path/*)!

EXAMPLE 1 - ACCESS GRANTED:

  • the URL ACL for role_admin is set to:  
    • path: /.magnolia/configuration
    • permission GET/POST

  • the new app permissions will be:
    • permissions
      • roles
        • role_admin

  • how to create task: 

new ConvertACLtoAppsPermissionTask("name", "description", "/.magnolia/configuration", /modules/ui-admincentral/apps/configuration);

 

EXAMPLE 2 - ACCESS DENIED:

  • the URL ACL for role_editor is set to:  
    • path: /.magnolia/configuration
    • permission DENY

  • the new app permissions should be set to:
    • permissions
      • roles
        • superuser

 

Class: ConvertACLtoAppsPermissionTask


Constructor attributes
:

PropertyDescriptionValid values
taskNameTask name used by the reporting tool, and to log/display informations related to this task.String 
taskDescriptionTask Description used to display informations in the admin. central update view.

String

oldUrlurl to an old pageString
newApppath to configuration of new appString

Questions (ehe)

How to map the 4.5 path to M5 application or sub app?:

  1. /modules/adminInterface/config/menu/inbox
  2. /modules/inplace-templating/
  3. /modules/resources/*
  4. /modules/adminInterface/config/menu/templating-kit

Answers

      I think any automatically mapping wouldn't be possible. But we know the default old 45 paths for Magnolia pages and corresponding paths to new apps. If someone have a page under different location or   if someone have any custom pages, he would need only to add ConvertACLtoAppsPermissionTask to his ModuleVersionHandler. He need to create new app anyway in case of a custom page and the name of his app can by anything so we can't rely only on app names.

  1. If someone have access to /modules/adminInterface/config/menu/inbox then we know he need access to Messages: ConvertACLtoAppsPermissionTask("", "", "/.magnolia/pages/inbox", /modules/messages-app/apps/messages )
  2. /modules/inplace-templating: ConvertACLtoAppsPermissionTask("", "", "/.magnolia/pages/configuration*", /modules/ui-admincentral/apps/templatesApp)
  3. /modules/resources/*: ConvertACLtoAppsPermissionTask("", "", "/.magnolia/pages/configuration*", /modules/ui-admincentral/apps/resourcesApp)
  4. /modules/adminInterface/config/menu/templating-kit: ConvertACLtoAppsPermissionTask("", "", "/modules/adminInterface/config/menu/templating-kit", /modules/ui-admincentral/config/appLauncherLayoutapps/group/stk)

    The tasks should be added in version handlers which bootstrap certain app. Most of them would be in AdmincentralModuleVersionHandler. Others..like tools should be in corresponding modules (for example access to groovy console should be set from groovy version handler).
    We can have parent task which takes map<oldURL, newApp> so we add only one task in case of a lot of URLs to convert.

 


 





 

  • No labels