The PAU mechanisms involving InternalPrincipal and PrincipalInfo are internal to its workings. From what I can see, these shouldn't impact what you're doing. If you want the grimy details, look at the README.txt doctest file in zope/app/authentication. However, these mainly apply to plugin developers.
To store additional information for a principal, use the principal annotation utility. E.g. were you in a browser view: util = zapi.getUtility(IPrincipalAnnotationUtility) annotations = util.getAnnotations(self.request.principal) I would strongly discourage you from subclassing InternalPrincipal -- it's, well, internal :-) If annotations aren't working for you, give me the specifics and I'll see if I can help. -- Garrett > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Alec Munro > Sent: Tuesday, August 23, 2005 10:06 AM > To: [EMAIL PROTECTED] > Cc: zope3-users@zope.org > Subject: Re: [Zope3-Users] Confusion about PAU usage. > > On 8/22/05, Christoph Frick <[EMAIL PROTECTED]> wrote: > > On Mon, Aug 22, 2005 at 11:47:40AM -0300, Alec Munro wrote: > > > > > In my situation, I am trying to create principals with additional > > > properties, and initially I did that by extending > InternalPrincipal. > > > That worked fine, until I realised that when I > authenticated, I was > > > getting back a PrincipalInfo instance, which does not contain the > > > additional properties. Additionally, I wish to have > multiple types of > > > users, so I had extended InternalPrincipal a couple of times, to > > > create a few different classes, the distinction of which > is obviousy > > > lost when authenticating ATM. > > > > i guess what you really want here are annotations of > principals. have a > > look in the zope3 book you can download from zc's site. > there is AFAIR a > > section adressing this problem with lots of examples and i think the > > section also sheds some light on the whole principal and > annotation in > > general. > > > > -- > > cu > > > > > > > I've given this a try, and right now I am having a problem figuring > out what I am supposed to attach the annotation information to. My > specific principals are extensions of IInternalPrincipal, which > doesn't have an ID, and as such, doesn't work for principalannotations > as I have experienced them so far. > This is one of the reasons why I would like a guide on the differences > between InternalPrincipals, PrincipalInfo's, and Principal's. The > standard Principal Folder contains InterrnalPrincipals, so I assumed > that was the type I should be extending. I imagine that if I were to > log in as one of these principals, I might then have access to the > annotations. However, at least for testing purposes, I would prefer to > have access to them when doing site management. > > Anyone have any advice on how to proceed with this? > > Thanks, > > Alec > _______________________________________________ > Zope3-users mailing list > Zope3-users@zope.org > http://mail.zope.org/mailman/listinfo/zope3-users > _______________________________________________ Zope3-users mailing list Zope3-users@zope.org http://mail.zope.org/mailman/listinfo/zope3-users