In-Portal Issue Tracker

Welcome to the In-Portal Open Source CMS Issue Tracker! This is a central management / tracking tool for all types of tasks / issues / bugs for the In-Portal Project. Before reporting any issues, please make sure to read the Guide into Issue Tracker and How to Properly Test and Report Bugs!

Dependency Graph View Issue ] Relation Graph ] Vertical ]
related to child of duplicate of

Viewing Issue Simple Details
ID Category Type Reproducibility Date Submitted Last Update
0000657 [In-Portal CMS] Admin Interfaces feature request N/A 2010-03-27 17:14 2012-07-25 05:32
Reporter Dmitry View Status public  
Assigned To alex
Priority normal Resolution fixed  
Status closed      
Summary 0000657: Ability to Reset ROOT password to access Admin Console
Description I think it's time to think and implement the ability to reset ROOT
password by email or something else.

We are coming across this issue from time to time. I know can change
it by hand directly in DB, but it's not the easiest way for users so
we should come up with easy and save way of doing it.

My proposal is:

When DBG_RESET_ROOT option is enabled (new - needs to be added) we can
show additional Link right below Login form which will email the
password to website administrator (email specified as main email
address for the website).

Since password for ROOT user is not lost on a daily basis this should
do the work.
Additional Information Plan:
1. create new ROOT.RESET.PASSWORD email event (Type = Admin); see other email events with this type to determine what values should be placed in other fields
2. export newly created record from Events table into install/upgrades.sql and install/install_data.sql (make sure, that there are no translatable columns present in insert statement, see other events in install_data.sql to get idea)
3. Event text could be: "Your new password is: <inp2:m_Get name="root_password"/>"
1. create u:OnResetRootPassword event, that would use
- kUtil::generatePassword method to generate new password
- kPasswordFormatter::EncryptPassword with proper salt (see user event handler) to encrypt password
- kApplication::SetConfigValue to change RootPass configuration variable value
- send newly create e-mail event to admin via kApplication::EmailEventAdmin method
- do $event->SetRedirectParam('reset', 1)
4. in UsersEventHandler::CheckPermission method allow that event execution only, when DBG_RESET_ROOT constant is defined & set (e.g. defined('DBG_RESET_ROOT') && DBG_RESET_ROOT)
5. add a "Reset "root" password" link (will be a phrase) under admin login form, when DBG_RESET_ROOT constant is defined & set
6. once link from above is clicked, then call u:OnResetRootPassword event
7. add a check for "reset" url parameter via m_if tag to login template and display nice alert message, like "Your "root" password has been reset. Please remove DBG_RESET_ROOT constant and check your e-mail address."
8. do language pack export & merge to install/english.lang
9. do install/upgrade to verify that database content after upgrade/install will match the on you've create right now

------------
Hours:
1. new e-mail event - 1 h
2. new event - 0.5 h
3. template modifications - 0.5 h
4. install/upgrade/export stuff - 1 h

----

total: 3 h




Web Development by Intechnic
In-Portal Open Source CMS
In-Portal Open Source CMS
Copyright © 2000 - 2009 MantisBT Group

Powered by Mantis Bugtracker