Hi
I have tried to find something online and searched here without results.
Now we get an exception message if we try to login to the backend.
How this happened:
1. cleared the cache (Configuration)
2. it was confirmed and at the same time i got a message invalid permission
3. tried to relogin and got the exception below:
1 exception(s): Exception #0 (LogicException): Could not create an acl object: Parent Role id '1' does not exist Exception #0 (LogicException): Could not create an acl object: Parent Role id '1' does not exist #0
php magento setup:upgrade -> Something went wrong while compiling a list of allowed resources. You can find out more in the exceptions log.
Log:
[2018-05-17 01:04:40] main.CRITICAL: Could not create an acl object: Parent Role id '1' does not exist {"exception":"[object] (LogicException(code: 0): Could not create an acl object: Parent Role id '1' does not exist at /home/cloudpanel/htdocs/www.test.com/vendor/magento/framework/Acl/Builder.php:70)"} []
Any ideas around how to fix? Right now we cant work without accessing the site..
Thanks
Björn
Solved! Go to Solution.
Hi @Bmacuser
okay i understand - can you please share your authorization_role table 's screenshot or data what is there in it from your database ?
looks like something missing in your role table only !!
Also run below query in authorization_table and check it is working for you or not
UPDATE authorization_role SET tree_level = 2 WHERE role_type = “U”;
Note : Before running anything on database , make sure you take a backup - so if something goes wrong we can revert back it for the same
Hi @Bmacuser
it looks like you have issue of ACL permission issue.
do you have installed any custom theme or custom/third-party extension ? - the problem is something related to your acl.xml file where resource acl permission issue occurs.
Kindly create new admin user using command line from SSH terminal run below command.
php bin/magento admin:user:create --admin-user='new-admin' --admin-password='!admin123!' --admin-email='info@domain.com' --admin-firstname='Jon' --admin-lastname='Doe'
After that logged in via this new user and check you are able to logged in or not !!
If yes - then logged in and check the permission of previous user which you are trying to logged in and get the error.
Hope it helps !
Hi
Thanks for your reply. I created a user exactly like your example and the exception is the result of the new created user. All our admin accounts are ending up in that result. Yes our Theme company did customization on the theme default.xml file and catalog category/product view file. These changes have been made a few days ago and the error arrived just this morning.
Hi @Bmacuser
okay i understand - can you please share your authorization_role table 's screenshot or data what is there in it from your database ?
looks like something missing in your role table only !!
Also run below query in authorization_table and check it is working for you or not
UPDATE authorization_role SET tree_level = 2 WHERE role_type = “U”;
Note : Before running anything on database , make sure you take a backup - so if something goes wrong we can revert back it for the same
Awesome! Thanks. One admin account had "1" as mentioned in the exception file. I have to contact our migration company who created that issue. Thanks for your help!
Hi @Bmacuser
Glad to know that you have resolved your issue , Happy to help and keep helping
Hi i have the same exact problem too but the above solution didn't work for me...
this is my role table:
As it is said above. It seems like the issue may come from the existence of a record in table 'authorization_role' where the 'level_tree' is at 1 instead of 2 for 'role_type'='U'
I solved the issue as follow:
UPDATE authorization_role SET tree_level = 2 WHERE role_type = “U”;
Then flush the cash by running
bin/magento cache:clean && bin/magento cache:flush
Hope this helps
same problem
1 exception(s): Exception #0 (LogicException): Could not create an acl object: Role '125' not found Exception #0 (LogicException): Could not create an acl object: Role '125' not found <pre>#1 Magento\Framework\Acl\Builder\Proxy->getAcl() called at [vendor/magento/module-backend/Model/Auth/Session.php:132] #2 Magento\Backend\Model\Auth\Session->refreshAcl() called at [generated/code/Magento/Backend/Model/Auth/Session/Interceptor.php:23] #3 Magento\Backend\Model\Auth\Session\Interceptor->refreshAcl() called at [vendor/magento/module-backend/App/Action/Plugin/Authentication.php:144] #4 Magento\Backend\App\Action\Plugin\Authentication->aroundDispatch() called at [vendor/magento/framework/Interception/Interceptor.php:135] #5 Magento\Backend\Controller\Adminhtml\Denied\Index\Interceptor->Magento\Framework\Interception\{closure}() called at [vendor/magento/framework/Interception/Interceptor.php:153] #6 Magento\Backend\Controller\Adminhtml\Denied\Index\Interceptor->___callPlugins() called at [generated/code/Magento/Backend/Controller/Adminhtml/Denied/Index/Interceptor.php:32] #7 Magento\Backend\Controller\Adminhtml\Denied\Index\Interceptor->dispatch() called at [vendor/magento/framework/App/FrontController.php:245] #8 Magento\Framework\App\FrontController->getActionResponse() called at [vendor/magento/framework/App/FrontController.php:212] #9 Magento\Framework\App\FrontController->processRequest() called at [vendor/magento/framework/App/FrontController.php:147] #10 Magento\Framework\App\FrontController->dispatch() called at [vendor/magento/framework/Interception/Interceptor.php:58] #11 Magento\Framework\App\FrontController\Interceptor->___callParent() called at [vendor/magento/framework/Interception/Interceptor.php:138] #12 Magento\Framework\App\FrontController\Interceptor->Magento\Framework\Interception\{closure}() called at [vendor/magento/framework/Interception/Interceptor.php:153] #13 Magento\Framework\App\FrontController\Interceptor->___callPlugins() called at [generated/code/Magento/Framework/App/FrontController/Interceptor.php:23] #14 Magento\Framework\App\FrontController\Interceptor->dispatch() called at [vendor/magento/framework/App/Http.php:116] #15 Magento\Framework\App\Http->launch() called at [generated/code/Magento/Framework/App/Http/Interceptor.php:23] #16 Magento\Framework\App\Http\Interceptor->launch() called at [vendor/magento/framework/App/Bootstrap.php:264] #17 Magento\Framework\App\Bootstrap->run() called at [pub/index.php:30] </pre>
in database everythink ok