On Wed, 2002-01-09 at 01:40, Wolfram Kerber wrote: > > From: "Chris McDonough": > > > > > meta_type is an attribute, so you can't just do > > > > > > security.declareProtected(ACCESS_CONTENTS_PERM, 'meta_type') > > > > That's right. > > > > > The id attribute has the getId method, perhaps what's required is a > > > getMetaType method that can be suitably protected? > > > > > > This would still be a pretty easy fix: > > > > > > security.declareProtected(ACCESS_CONTENTS_PERM, 'getMetaType') > > > def getMetaType(self): > > > """ """ > > > return self.meta_type > > > > > > Am I missing something? > > > > Nope, that would work. But I think also: > > > > meta_type__roles__ = None > > > > .. as a class attr would work as well. > > > > I'll try it and let you know if it works. > > security.setDefaultAccess({'meta_type': 1}) should do > > the parameter is what has been __allow_access_to_unprotected_subobjects__, > that can be a boolean, dictionary or callable
Interesting. I didn't think you could have more than one setDefaultAccess in a class. If you can, then you can set: security.setDefaultAccess('deny') security.setDefaultAccess({'meta_type': 1}) But otherwise, you would have to list all attributes of the class in the dict of a single statement, wouldn't you? Michael Bernstein. _______________________________________________ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )