[
https://issues.apache.org/jira/browse/JSPWIKI-464?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12660224#action_12660224
]
Harry Metske commented on JSPWIKI-464:
--------------------------------------
The following code snippet from the JasperLoader
(http://www.docjar.com/html/api/org/apache/jasper/servlet/JasperLoader.java.html)
explains this.
The JSP_PACKAGE_NAME does not contain a trailing dot, so org.apache.jsp is the
same as org.apache.jspwiki. The parent classloader off course canot find the
class :-(
if( !name.startsWith(Constants.JSP_PACKAGE_NAME) ) {
// Class is not in org.apache.jsp, therefore, have our
// parent load it
clazz = parent.loadClass(name);
if( resolve )
resolveClass(clazz);
return clazz;
}
return findClass(name);
}
We could ask the tomcat developers to change this, but still then it would take
a long time before this is out in the field, what do we do ?
> 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.