[Zope] Re: Problem with permissions in 2.8.4 (resolved)
Pablo Ziliani
pablo at decode.com.ar
Sun Nov 13 14:44:39 EST 2005
Replying to my own post as I just found the answer to my problem (which
had nothing to do with the version of zope).
The problem was that when I mass-imported some folders to the new
instance, I didn't check to retain the ownership information; thus the
templates where executed whith the credentials of the Anonymous role.
Sorry for bothering, I hope someone finds this post usefull in the future,
Pablo
PS: setting the verbose-security on was of great help in order to
address this issue
Pablo Ziliani wrote:
> Hello,
> I am having a very tough time with permissions after I have upgraded
> to 2.8.4 from 2.8.1, and I would really appreciate some help as I have
> exhausted my imagination trying to figure what's wrong.
>
> I have the following structure in my zope instance:
>
> zope root
> |---- sites
> |----|---- admin
> |----|---- website
>
> Inside the folder admin I have some templates using a macro named
> "page" in a sibling template.
> The folder "sites" has some checks marked in the security tab, but
> this is supposed to be ineffective since all the permissions are also
> acquiring from the root folder.
> The folder "admin" has the default permissions but for the "View" and
> "Access Content Information", which I only made available for Managers
> and some other irrelevant roles.
> Pages inside admin (i.e.: "users.html") have additional security
> configurations, but in all cases Managers are explicitly allowed.
> The "website" folder is the virtual domain, so when I call
> http://mywebsite.com/admin I am in fact acquiring the folder from
> above the site root (website). However, this doesn't seem to be the
> problem: the same occurs if I move admin inside website.
> My user is defined in the zope root and although there's another
> acl_folder in "sites" there's no user there with my same id.
> The odd thing is that if I (also) check all the "Acquire permissions
> settings" checkbox in admin, I will be able to access the macro but
> then the macro page won't be able to access some methods
> i.e."template/title_or_id". I think this should not happen, Managers
> are always (explicitly!) allowed all along the path from the root to
> each page.
>
> As said, this was working fine in 2.8.1.
> Any help or hint would be greatly appreciated,
> TIA, Pablo
>
> PS: this is the traceback:
>
> Request URL http://mywebsite.com/admin/users.html
> Exception Type Unauthorized
> Exception Value Not authorized to access binding: context
>
> Traceback (innermost last):
>
> * Module ZPublisher.Publish, line 113, in publish
> * Module ZPublisher.mapply, line 88, in mapply
> * Module ZPublisher.Publish, line 40, in call_object
> * Module Shared.DC.Scripts.Bindings, line 311, in __call__
> * Module Shared.DC.Scripts.Bindings, line 348, in _bindAndExec
> * Module Products.PageTemplates.ZopePageTemplate, line 256, in _exec
> * Module Products.PageTemplates.PageTemplate, line 104, in pt_render
> <ZopePageTemplate at /sites/admin/users.html>
> * Module TAL.TALInterpreter, line 206, in __call__
> * Module TAL.TALInterpreter, line 250, in interpret
> * Module TAL.TALInterpreter, line 697, in do_useMacro
> * Module Products.PageTemplates.TALES, line 221, in evaluate
> URL: /sites/admin/users.html
> Line 4, Column 0
> Expression: standard:'here/template_admin.html/macros/page'
> Names:
>
> {'container': <UnauthorizedBinding: container>,
> 'context': <UnauthorizedBinding: context>,
> 'default': <Products.PageTemplates.TALES.Default instance at 0xb7516c4c>,
> 'here': <UnauthorizedBinding: context>,
> 'loop': <Products.PageTemplates.TALES.SafeMapping object at 0xb3ee062c>,
> 'modules': <Products.PageTemplates.ZRPythonExpr._SecureModuleImporter
> instance at 0xb7528b4c>,
> 'nothing': None,
> 'options': {'args': ()},
> 'repeat': <Products.PageTemplates.TALES.SafeMapping object at
> 0xb3ee062c>,
> 'request': <HTTPRequest, URL=http://mywebsite.com/admin/users.html>,
> 'root': <Application at >,
> 'template': <ZopePageTemplate at /sites/admin/users.html>,
> 'traverse_subpath': [],
> 'user': pablo}
>
> * Module Products.PageTemplates.Expressions, line 185, in __call__
> * Module Products.PageTemplates.Expressions, line 173, in _eval
> * Module Products.PageTemplates.Expressions, line 127, in _eval
> __traceback_info__: here
> * Module Products.PageTemplates.Expressions, line 284, in
> restrictedTraverse
> __traceback_info__: {'path': ['template_admin.html', 'macros',
> 'page'], 'TraversalRequestNameStack': ['page', 'macros']}
> * Module Shared.DC.Scripts.Bindings, line 180, in __getattr__
> * Module Shared.DC.Scripts.Bindings, line 187, in __you_lose
>
> Unauthorized: Not authorized to access binding: context
>
More information about the Zope
mailing list