You have accidentally deleted system ACLs in AEM and it has broken AEM functionality.
There can be many causes for this, but the most common are:
- Accidental removal of permissions by users
- Installation of ACL package with "Overwrite" value set in AC Handling option of the package
To solve this issue, you can do the following:
- Install a clean AEM author or publish instance locally and set the -r nosamplecontent option during installation (match the instance type with the instance missing the ACLs). For example: java -Xmx2048m -jar cq-author-p4502.jar -r nosamplecontent
- Go to the AEM package manager http://host:port/crx/packmgr/index.jsp and log in as admin
- Download and install ACS Commons
- Use ACL Packager to package up all the out-of-the-box ACLs. When configuring the ACL package, set "/.*" as the only value in Include Patterns. Then set AC Handling option to Merge.
- Go to the package manager and build the ACL package.
- Download the package
- Once you obtain that hotfix then install it to the broken environment by dropping it in the crx-quickstart/install folder
- After the hotfix is fully installed (validate via the error.log) then restart AEM
- Then drop the ACL package in the crx-quickstart/install folder on the broken instance
- After that package is installed then restart AEM one more time
Now the original out of the box ACLs have been restored.