[Zope-dev] Security Gurus Wanted
vio
vmilitaru@sympatico.ca
Sat, 19 Jan 2002 09:36:41 -0500
Just a word to thank you for your reply.
But incidently, wouldn't it be a good idea for Globals.InitializeClass()
to throw an error
or a warning of some kind for hanging 'security.stuff()' declarations,
declarations which do not have a related ClassSecurityInfo object AT THE
CLASS LEVEL? To the unaware beginner (like myself) this creates
a very obscure bug: the declaration at the module level 'hiding' the missing
ClassSecurityInfo object (at the class level). I see some other discussions
on this list on this topic, so maybe this problem is already being addressed.
Anyway, I would never have found this alone by a long shot. Thanks.
Sorry for the cross-post.
* Steve Alexander <steve@cat-box.net> [020118 15:43]:
> vio wrote:
> > Could someone have a look at the following 'Boring' class with the
> > security functionality added (as described in ZopeBook/6.Security
> > and some other products). Could 'security' machinery be broken in
> > Zope-2.4.1 ? It surely doesn't seem to work as adverised, on my
> > machine at least (Debian Linux 2.2, Zope 2.4.1 (source release)
> > python 2.1.0, linux2). Tell me if it works on your installation.
>
> >
> > Boring.py -------------------------------- __doc__ = "" __version__
> > = '0.1' import Globals from Globals import HTMLFile # fakes a
> > method from a DTML file from Globals import MessageDialog # provid from
> > Globals import Persistent # makes an object stick in the ZODB import
> > OFS.SimpleItem import Acquisition import AccessControl.Role from
> > AccessControl import ClassSecurityInfo
> >
> > READ_PERM = 'View Stuff' WRITE_PERM = 'Change Stuff' security =
> > ClassSecurityInfo()
>
>
> You have declared your ClassSecurityInfo object at the module level,
> rather than as an attribute of the class you wish to make security
> statements about.
>
> Please do not cross-post to both zope@zope.org and zope-dev@zope.org.
> Post to one or the other.
>
> --
> Steve Alexander