[
https://issues.apache.org/jira/browse/JSPWIKI-464?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Harry Metske updated JSPWIKI-464:
---------------------------------
Attachment: JSPWIKI-464.patch
Well, that is indeed a better approach, thanks :-)
Attached a new patch.
AuthenticationManager has several calls to doJAASLogin(), they don't handle the
WikiSecurityException, so I now only throw this exception if the LoginModule is
not an instance of AbstractLoginModule.
I also included an update to the CoreResources.properties :
login.error=Login failed: {2}
If I understand the Stripes docs well, the {2} should be replaced with the
exception text.
I have tested only on 2.8.2 (required some extra patching on Login.jsp).
I can't test the ActionBean on 3.0, because I'm still stuck with
http://mail-archives.apache.org/mod_mbox/incubator-jspwiki-dev/200812.mbox/%[email protected]%3e
Let me know what you think.
regards,
Harry
> JSPWiki authentication support for TextOutputCallback (display login messages
> on Login.jsp)
> -------------------------------------------------------------------------------------------
>
> Key: JSPWIKI-464
> URL: https://issues.apache.org/jira/browse/JSPWIKI-464
> Project: JSPWiki
> Issue Type: Improvement
> Components: Authentication&Authorization
> Affects Versions: 3.0
> Environment: JSPWiki 3.0
> Reporter: Harry Metske
> Assignee: Harry Metske
> Priority: Minor
> Attachments: JSPWIKI-464.patch, jspwiki-login-3.0.patch
>
>
> The current version of the JSPWiki JAAS implementation does not support
> TextOutputCallback's.
> JAAS offers several types of Callbacks, JSPWiki's CallbackHandler currently
> only uses the NameCallback and PasswordCallback.
> As a result the following scenario:
> Users try to login, the login fails but the user is not told for what reason.
> I have had lots of complaints about this behavior, especially from users who
> do not login very often but use the wiki mostly for reading.
> When they try to login, it fails, but the Login.jsp does not tell anything at
> all, not even that is has failed (C.M.A.).
> In most cases because either the userid has become inactive, is revoked, or
> the password is expired. The net effect is that the wiki is often not usable
> for updates.
> Now I know that giving this information (the failure reason) to the user is
> often considered a security trade off.
> But in an intranet environment this is very acceptable.
> I will attach a patch that solves this in the following way :
> - AuthenticationManager keeps a Hashtable of last loginMessages for each user.
> - The WikiCallbackHandler now also handles TextOutputCallbacks and sets the
> login result
> - If the login fails, the LoginActionBean first reads the loginMessage for
> the user, if it is not null, it is displayed, else you get the old behavior.
> The exploitation of TextOutputCallbacks is optional, the default LoginModule
> (supplied with JSPWiki) does not use them, and therefore it's behavior is
> unchanged.
> The installer has to supply a LoginModule that uses the TextOutputCallback to
> store the loginResult. (And off course we have one that uses it).
> (Andrew), can we take this patch in the trunk ?
> regards,
> Harry
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.