On 04/29/2013 06:22 AM, Thomas Delafosse wrote:
> Hi,
> 
>      Thanks for the piece of advice. Since I need access to the context and
> would like to be able to put some warning in the logs if an error occurs
> while checking the password, I think I would put the method in
> com.xpn.xwiki.api.User rather than in XWikiUser. But of course I would
> check for the Programming Rights to avoid Brute force.

This won't solve the failing tests problem, since they fail because we
don't have an Admin account with programming rights.

> Thanks,
> 
> Thomas
> 
> 
> On Thu, Apr 25, 2013 at 5:02 PM, Vincent Massol <[email protected]> wrote:
> 
>> Hi,
>>
>> On Apr 25, 2013, at 12:15 AM, Denis Gervalle <[email protected]> wrote:
>>
>>> On Wed, Apr 24, 2013 at 3:38 PM, Thomas Delafosse <
>>> [email protected]> wrote:
>>>
>>>> Hello all,
>>>>
>>>>    I've been working on some improvements on user changing password (see
>>>> XWiki-6882). In particular, I tried to make mandatory, for an user
>> wanting
>>>> to change his password, to submit also his current password, so that I
>>>> could check it.
>>>> The problem is that there is no way to make this check through
>> velocity. I
>>>> tried to use some groovy instead, but it breaks the functional tests.
>> So I
>>>> need to introduce a new method "checkPassword" accessible from velocity
>>>> scripts. The question is, where should I implement it ?
>>>> There are two possibilities
>>>> 1) Wrote a new component
>>>> 2) Add this method in an existing API.
>>>> I don't really like 1), as I feel it would be strange to introduce a new
>>>> service with only one method.
>>>> In the meanwhile, for 2), I don't really know in which API this method
>>>> could fit. Sergiu told me that I could perhaps put it in
>>>> com.xpn.xwiki.plugin.rightsmanager.RightsManagerPluginApi,
>>>> but that it wasn't really good either. Any ideas ?
>>>>
>>>
>>> IMO, you should use an existing API that will be deprecated as soon as we
>>> have a real security authentication module. However, I not think
>>> com.xpn.xwiki.plugin.rightsmanager.RightsManagerPluginApi to be the right
>>> place, I would see it more in com.xpn.xwiki.user.api.XWikiUser, with
>>> the advantage that reaching it will require PR  (preventing brute force
>>> attack).
>>>
>>> In the new authentication module, the abstraction should be really
>>> improved, allowing to change the password outside of the XWiki as well,
>> if
>>> the authentication backend support such feature. The notion of password
>>> will need to be abstracted as well, since there is more then just
>> password
>>> for authentication. So, this will surely be another story, and it is
>>> not foreseeable now.
>>
>> I agree with Denis here. Regarding the location in the existing code, I
>> don't have any strong opinion.
>>
>> Thanks
>> -Vincent


-- 
Sergiu Dumitriu
http://purl.org/net/sergiu
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to