Uploaded image for project: 'PUBLIC - Liferay Portal Community Edition'
  1. PUBLIC - Liferay Portal Community Edition
  2. LPS-78573

PermissionChecker or PermissionCheckerFactory should be an OSGi service

    Details

    • Priority Level:
      Low

      Description

      For users that have a requirement to call out to an external service as part of their PermissionChecker logic, the portal property permissions.checker provides little use:

      permissions.checker=com.liferay.portal.security.permission.AdvancedPermissionChecker

      This setting is used by PermissionCheckerFactory to construct permission checker objects through reflection in the core portal class loader. This means that one cannot reference any custom APIs that are not available to the global classloader. Ultimately, it is not OSGi-ified which makes replacing it of little actual use.

      A suggestion is to change the PermissionCheckerFactory to an OSGi service that can be deployed as its own OSGi module and completely deprecate the use of the permissions.checker portal property. As a note, the PermissionCheckerFactoryImpl sets its service priority to -1. Ideally, users would want the ability to completely remove it and replace it with their own.
       

        Attachments

          Activity

            People

            Assignee:
            support-lep@liferay.com SE Support
            Reporter:
            robert.tang Robert Tang
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:

                Packages

                Version Package