[Zope] Simple security question
Duncan Murdoch
murdoch at stats.uwo.ca
Fri Mar 21 08:38:46 EDT 2008
I'm making some changes to an existing Zope setup. The original author
has moved on, and I don't have previous experience with Zope: so the
setup is relatively well-designed, but I don't really know the low-level
basics well. It's some version of Zope 2 (I'm not sure how to get exact
version information.)
The problem is this: we have an existing web site that works well. I'd
like to create a few pages that are private, accessible only by a list
of authorized users. So I created a new directory, and added some users
to the acl_users folder. Then on the security page for this directory,
I unchecked all the "acquire permission settings" boxes, and checked
every permission for the class of user I created. (Later I'll reduce
the list, but for now they have everything.)
But they still get permission failures when they try to do anything.
The log shows the error:
You are not allowed to access 'pythonMethods' in this context
I have several directories with that name on different parts of the
site, so it's not completely clear to me which one I'm not allowed to
access. The error log shows this traceback:
Traceback (innermost last):
* Module ZPublisher.Publish, line 98, in publish
* Module ZPublisher.mapply, line 88, in mapply
* Module ZPublisher.Publish, line 39, in call_object
* Module OFS.DTMLDocument, line 133, in __call__
<DTMLDocument instance at bfa00e0>
URL: http://xxxxxxx/test/edit/manage_main
Physical Path:/xxx/test/edit
* Module DocumentTemplate.DT_String, line 474, in __call__
* Module DocumentTemplate.DT_Util, line 195, in eval
__traceback_info__: pythonMethods
* Module OFS.DTMLMethod, line 152, in validate
Unauthorized: You are not allowed to access 'pythonMethods' in this context
(I've xx'd out the URL because I'm pretty sure I haven't got the
security setup right.)
The test/edit page is a DTML document, which contains this line
<dtml-var "pythonMethods.displayheader(id())">
but I'm not certain this is the line that triggers the error.
My questions:
1. Are there simple examples of this kind of security setup somewhere?
2. How do I diagnose what's going wrong?
Duncan Murdoch
More information about the Zope
mailing list