[Zope] Acquisition / proxying object

Peter Sabaini peter at sabaini.at
Tue Feb 26 03:19:21 EST 2008


On Monday 25 February 2008 23:52:26 Joerg Baach wrote:
> Hi *,
>
> > But somehow I have the feeling it has more to do with the 'and the
> > container is not wrapped' part of the message. Not that I can make sense
> > of it ;-)
>
> Mmm, after even more searching, and not understanding I found
>
> http://www.mail-archive.com/zope-dev@zope.org/msg11438.html
>
> and changed my code to:
>
>
>     def __of__(self, parent):
>         '''foo'''
>         if not hasattr(parent,'aq_base'):
>             return self
>
>         folder,id = self.remoteid.split(':')
>         acl = parent.unrestrictedTraverse(folder)

You're now doing no security checks on traversal, probably thats why you don't 
get any Unauthorized exceptions :-)

- peter.


>         remote = acl.getUser(id)
>
>         return Acquisition.ImplicitAcquisitionWrapper(aq_base(self),
>
>                                  aq_base(remote).__of__(parent))
>
> Now, this actually seems to work. If only I knew why....
>
>
> Cheers,
>
>   Joerg




More information about the Zope mailing list