[Zope] Persistent references to persistent objects ?!?!

Dieter Maurer dieter at handshake.de
Fri Feb 6 15:56:30 EST 2004


Jean-Francois.Doyon at CCRS.NRCan.gc.ca wrote at 2004-2-5 16:38 -0500:
>I was toying with a few ideas, and discovered that I can actually store in a
>persistent manner references to other persistent objects !!
> ...
>This is nice because it allows to point to an object without using paths and
>traversal (So it's quick and dirty), and the reference is maintained through
>a rename.
>
>I can see some problems related to security, such as if traversal is not
>used, then some security can be by-passed ...

Effectively, the same object resides then at different places
in the Zope hierarchy. This can be very confusing:

  We used Shane's "symlink" product that has similar properties.

  A colleague was able to delete the complete ZCatalog content
  by deleting an object containing a symlink. 
  The deletion caused a recursive "manage_beforeDelete" which
  followed the symlink and unindexed all objects referenced from
  the link target.

  Similar things may happen with your "multi-place" objects
  (especially, "catalog"s and "acquisition" may work inconsistently,
  depending how you access your objects).

-- 
Dieter



More information about the Zope mailing list