This is an area of Zope that deserves a lot of attention.
Hmmm... I have an idea I know it changes the interface, which is bad, but I think it's needed and provides a pretty generic solution to a lot of problems: How about making user objects implement the mapping interface just like Session Tracking objects do? This could be implemented persistently in the standard acl_users folder, but things like LoginManager could store stuff however they wanted. I know this doesn't solve the problem of users changing their own names (which is what I think you were talking about) but it would make a lot of applications simpler and mean a lot more people could go without the pain of having to learn how to use LoginManager. What have I missed? cheers, Chris