Dave wrote:

What I meant by "beyond Acegi" is that Roller identifies users by using our
User pojo.  Acegi doesn't know about our User pojo, it uses it's own classes
and objects.  Somewhere in between there is a translation that happens,
which is the RollerSession.  We basically take request.getUserPrincipal()
and translate that into a Roller User pojo so the rest of the Roller code
can know about the user.

This is an extremely important part of the authentication process.  And
truth be told I think we need to make some improvements here because we are
not entirely consistent in how this works.

I'm curious. Where is the inconsistency?

The inconsistency I am talking about is that we don't use the RollerSession as "the" way to lookup the authentic client in all situations. I went through this when I implemented comment authentication and the main place we need to fix this is in the ParsedRequest object, which goes directly to the UserManager instead of using the RollerSession.

It's a really simple and easy change, but important.

I'm basically done with my comment authentication work, so I'll find a little time this week and write up how I did it, what changes were necessary, and make it into a proposal to see if folks are interested in it for 4.1.

It actually should fit into 4.1 even better than the 4.0 code which I worked from.

-- Allen



- Dave

Reply via email to