source: accountmanagerplugin/tags/acct_mgr-0.4.1/README.update

Last change on this file was 12482, checked in by Steffen Hoffmann, 11 years ago

AccountManagerPlugin: Publish maintenance release 0.4.1, closes #5964, #8545, #10134, #10625, #10700 and #10701.

This is an update for current stable acct_mgr-0.4 with a number of fixes for
issues resolved within the last weeks, i.e.:

  • a final fix for Single-Sign-On functionality (refs #9676),
  • a long-standing HttpAuth login issue and
  • one for acct_mgr.LoginModule, that is relevant if used with web-servers, that evaluate the REMOTE_USER environment variable.

Changeset [12468] is included, that may require a Trac db fix-up.
Run python ./contrib/fix-session_attribute-failed_logins.py <env> once on any
Trac environment, that had account locking enabled with time constraints
before.

File size: 6.5 KB
RevLine 
[11054]1This document contains information about upgrading AccountManagerPlugin to the
2last release.  It is provided to help anybody who is upgrading by specifically
3reminding of changes with potentially disruptive effect to existing
4installations.
5
6It goes back as far as release acct_mgr-0.2.  If you are upgrading from an
[12482]7even earlier release, start from a default configuration, please.
8Many valuable hints on AccountManager configuration are compiled into
9http://trac-hacks.org/wiki/CookBook/AccountManagerPluginConfiguration
[11054]10
11
[12482]12Upgrading acct_mgr-0.4 -> 0.4.1
13-------------------------------
14Run `python ./contrib/fix-session_attribute-failed_logins.py <env>` on any
15Trac environment, that had account locking enabled with time constraints
16before.  This is a one-time task, but running it multiple times does no harm.
17
18
[11054]19Upgrading acct_mgr-0.3.2 -> 0.4
20-------------------------------
21'password_file' is depreciated and no longer used by any authentication store
22provided by AccountManagerPlugin itself.
23
24New configuration options to supersed 'password_file' for affected stores:
25{{{
26#!diff
27 [account-manager]
[11826]28 password_store = HtDigestStore
[11054]29-password_file = <abs_path>/.htdigest
30+htdigest_file = <abs_path>/.htdigest
31}}}
32
33{{{
34#!diff
35 [account-manager]
36 password_store = HtPasswdStore
37-password_file = <abs_path>/.htpasswd
38+htpasswd_file = <abs_path>/.htpasswd
39}}}
40
41The password reset procedure has been re-designed from ground to make password
42resets recoverable, at least to prevent possible DoS attempted by malicious
43users on accounts connected to known email addresses.  It utilizes
44ResetPwStore, a SessionStore, as temporary cache for new auto-generated
45random passwords.  A subsequent login can succeed using old or new password.
46Only the password, that succeeds first, will be retained. So if the old
47password succeeds first, any cached new password is discharged.
48while a new password will get overwritten in any subsequent password reset, it
49replaces the old password only after being used for a successful login,
50and before it possibly gets overwritten itself by a newer one of course.
51
[11960]52Component rename:
53{{{
54#!diff
55 [components]
56-acct_mgr.admin.accountmanageradminpages
57+acct_mgr.admin.accountmanageradminpanel
58-acct_mgr.admin.accountchangenotificationadminpage
59+acct_mgr.admin.accountchangenotificationadminpanel
60}}}
[11054]61
[11960]62New user account registration has been restructured, moved to a separate
63place and even partly rewritten from scratch.
64
65Component move:
66{{{
67#!diff
68 [components]
69-acct_mgr.web_ui.emailverificationmodule
70+acct_mgr.register.emailverificationmodule
71-acct_mgr.web_ui.registrationmodule
72+acct_mgr.register.registrationmodule
73}}}
74
75`IAccountRegistrationInspector` is the interface, that allows for flexibility
76in registration form design as well as in registration request checks.
77
78Note: You'll certaily want to enable some/all of the new check classes in
79`acct_mgr.register`, if you want to use RegistrationModule at all.
80Don't forget to add all checks to the registration configuration too
81to actually apply them on subsequent requests (showing default value here):
82{{{
83#!ini
84[account-manager]
85register_check = BasicCheck, EmailCheck, UsernamePermCheck, RegExpCheck
86}}}
87
88Note: Email has been validated against a hard-coded regular expression before.
89Now the expression is configurable and this check moved into the RegExpCheck.
90
91
[11054]92Upgrading acct_mgr-0.3.1 -> 0.3.2
93---------------------------------
94"Account details" has been removed from panel list and made a true sub-page
95to "Users", just as it was meant to be right from the start.
96Internally form action of details page has changed from POST to GET.
97`get_user_attribute`, another method borrowed from/inspired by
98UserManagerPlugin, was added to the API.
99
100
101Upgrading acct_mgr-0.3 -> 0.3.1
102-------------------------------
103The release has been almost entirely dedicated to restore
104backwards-compatibility with Trac down to 0.11, but still watch out.
105
106Component rename:
107{{{
108#!diff
109 [components]
110-acct_mgr.admin.accountchangenotificationadminpanel
111+acct_mgr.admin.accountchangenotificationadminpage
112}}}
113
114
115Upgrading acct_mgr-0.2.1 -> 0.3
116-------------------------------
117That translates to 2 years and well over 100 revisions without a release,
118so by 2011 a lot of existing applications use(d) code from the development
119branch `trunk` alias acct_mgr-0.2.1dev at some stage in-between.
120The transition to `0.11` branch has been done early in the process too.
121
122Component rename:
123{{{
124#!diff
125 [components]
126-acct_mgr.admin.accountmanageradminpage
127+acct_mgr.admin.accountmanageradminpages
128}}}
129
130AccountGuard is an new feature with some related options to protect accounts
131against brute-force attacks on user passwords.
132
133The login page becomes more customizable i.e. with `login_opt_list` option.
134
135Full i18n support has been added, that is utilized starting with Trac 0.12
136to show localized versions of all pages, provided that requested translations
137have been done and included into the source.
138
139Internally some variables `user` have been renamed to `username` in contrast
140to `name` for users pre-/surname and nickname.  This raises various problems
141for other plugins replacing parts of this plugin and/or re-using it's methods.
142
143This is the first release cryptographically signed by the maintainer, and
144contributed scripts allow to check md5 and sha1 checksums of downloaded
145sources against included lists (CLI only).  These lists should be verified
146in turn with an OpenPGP program like GnuPG.
147
148
149Upgrading acct_mgr-0.2 -> 0.2.1
150-------------------------------
151For this plugin it covers development dedicated to the `0.10` branch.
152
153Email notification of account related events added, that require corresponding
154new configuration options to be configured properly.
155
156
157Upgrading from before acct_mgr-0.2
158----------------------------------
159This covers 1 1/2 years of development by 2 different developers within
160several branches, starting from `0.9`.  It has been finalized with the
161ClearSilver-to-Genshi port for Trac 0.11 and acct_mgr-0.2 was pushed out
162without much noise after the initial release and three intermediate
163maintenance releases.
164
165Most notably a SessionStore implementation has been introduced for storing
166user passwords as a Trac session attribute.  This was meant as an alternative
167to file based stores, where they cause data loss on concurrent changes.
168Please note, that the file stores have been changed since that time too to
169minimize such issues.
170
171Coming from a stage that early you'll get a whole-new plugin.  Restarting the
172whole configuration process should be less error prone and painful than
173following a multitude of incremental updates from here.
Note: See TracBrowser for help on using the repository browser.