Hi Markus,

Yes, that is a good point.  I was reviewing the open issues and it looks
like we already have an issue
(SLING-1555<https://issues.apache.org/jira/browse/SLING-1555>)
requesting OSGi services for the user management actions.

Of course, patches are welcome to add this functionality.  If no one else
gets to it, I can take a look when I get some free time.

Regards,
Eric

On Sun, May 1, 2011 at 11:56 PM, Markus Joschko <markus.josc...@gmail.com>wrote:

> Hi Eric,
>
> this sounds great but is already quite specific and has to deal with
> quite some configuration.
> (mailserver configuration, mail templates (maybe localized etc))
>
> I think it would be sufficient to extract a password service which is
> available in the osgi environment
> and allows other components to request a pw change.
>
> The applications are then free to build their own PW reset workflow
> while the configuration for the PW reset (digest etc)
> is still kept in one place.
>
> WDYT?
>
> Regards,
>  Markus
>
> On Sat, Apr 30, 2011 at 9:05 PM, Eric Norman <eric.d.nor...@gmail.com>
> wrote:
> > Hi Markus,
> >
> > Yes, you are right, the existing usermgmt bundle doesn't handle that use
> > case.
> >
> > We could probably add that feature to the usermgmt bundle with a patch
> and a
> > new release of the usermgmt bundle.
> >
> > To reset the password in a secure way, I am thinking of something like
> this:
> >
> >   1. A new RequestResetPwd servlet generates some random reset pwd token
> >   (that expires after n days) when invoked.  Then it sends an email to
> the
> >   user with a link containing the token.
> >   2. The target user gets the reset pwd email and clicks the link
> contained
> >   in it.
> >   3. A sling script handles the link request, validates the reset pwd
> token
> >   and, if valid, displays a form where the user can enter a new password.
> >   4. A POST from the form in #3 targets a new ResetPwdWithToken servlet
> >   that validates the reset pwd token again and then assigns the new
> password
> >   and removes the reset pwd token so it can not be used again.
> >
> > Does that look ok?
> >
> > Regards,
> > Eric
> >
> > On Sat, Apr 30, 2011 at 6:46 AM, Markus Joschko <
> markus.josc...@gmail.com>wrote:
> >
> >> Hi,
> >> I am currently developing an UI for the sling usermgmt and found that
> >> I can't realize a common use case:
> >> - PW reset (manually by admin or automatically by user)
> >>
> >> The old PW is always required but in the given use case it is most
> >> likely that the PW is no longer available.
> >> I would implement this on my own but the only two ways I see seem to
> >> be suboptimal:
> >> 1) Create a new overwritePW which accepts only requests from admins.
> >> However as I can not extend AbstractUserPostServlet
> >>   from my code, I have no access to the digestPassword method and
> >> would have to copy code and even worse make sure, that the digest
> >> algorithm
> >>   is then always configured the same on the create user? servlet and
> >> the overwritePW servlet which is suboptimal.
> >> 2) Create a filter to provide the oldPW automatically to the changePW
> >> servlet in case an admin overwrites a PW.
> >>    That won't work with the CryptedSimpleCredentials I guess.
> >>
> >> So I am stuck. How to realize PW reset?
> >>
> >> Thanks,
> >>  Markus
> >>
> >
>

Reply via email to