What to do if you accidentally delete an administrator user

Issue

  • I accidentally deleted an admin user due to customization.
  • How should I deal with this?

Environment

  • DXP 7.0+

solution

  • How to re-display the setup wizard at first startup and re-register the administrator user.
    For local environment:
    1. Shut down Liferay
    2. Open LIFERAY_HOME/portal-setup-wizard.propertiesand set "setup.wizard.enabled=true
    3. Restart Liferay
    4. The setup wizard will appear and you will need to reset your user name and password.
    5. Shut down Liferay
    6. Open LIFERAY_HOME/portal-setup-wizard.propertiesand set "setup.wizard.enabled=false
    7. Restart Liferay

    For DXPC environment
    1. Service>Liferay>Open Environment Valiables
    2. Keys: register LIFERAY_SETUP_PERIOD_WIZARD_PERIOD_ENABLED Values: true
    3. Restart the Liferay service
    4. The setup wizard will appear and you will need to reset your user name and password.
    5. Delete the environment variables registered in step 2
    6. Restart the Liferay service
  • If a general user exists, the method of granting Administrator privileges directly to the user on the database.
    *Liferay does not recommend direct editing of the database.
    Also, problems caused by direct editing are not covered bysupport.

    The following information is provided as a troubleshooting guide, but is not originally recommended.
    Please consider carefully and implement at your discretion.

    Obtains the CompanyId of the instance in question.
    CompanyId can be found on the Company table.

    From the User_ table, check the users that exist on the instance.
    select * from user_ where companyId=XXXXXXX;

    Get the ID of the Administrator authority on the instance from the Role_ table.
    Replace companyIdwith the ID obtained.
    select * from role_ where companyId=XXXXX and name ='Administrator';

    Insert a record in the Users_Roles table.
    CompanyId,RoleId,UserIdare replaced with the actual values obtained, respectively.
    insert into Users_Roles values (CompanyId, RoleId, UserId, 0, NULL);
¿Fue útil este artículo?
Usuarios a los que les pareció útil: 0 de 1