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