Mailing List Archive

[Zope-PTK] superuser problems
Hi,

I am having problems accessing my Portal as the site superuser. When
I created the portal, I added the superuser id (which is not the
default ID in this case) when I was asked for the first manager.
Everything seemed okay, but I could not log out.

Today I was logged in as superuser and tried to access the Portal.
The first page is okay, but pressing "search" gives a TraceBack:

Error Type: AttributeError
Error Value: last_login_time

<!--
Traceback (innermost last):
File /serve/MIS-Zope-2.1.3/lib/python/ZPublisher/Publish.py, line
214, in publish_module
File /serve/MIS-Zope-2.1.3/lib/python/ZPublisher/Publish.py, line
179, in publish
File /serve/MIS-Zope-2.1.3/lib/python/Zope/__init__.py, line 202,
in zpublisher_exception_hook
(Object: DemoPortalBase)
File /serve/MIS-Zope-2.1.3/lib/python/ZPublisher/Publish.py, line
165, in publish
File /serve/MIS-Zope-2.1.3/lib/python/ZPublisher/mapply.py, line
160, in mapply
(Object: search_form)
File /serve/MIS-Zope-2.1.3/lib/python/ZPublisher/Publish.py, line
102, in call_object
(Object: search_form)
File /serve/MIS-Zope-2.1.3/lib/python/OFS/DTMLMethod.py, line 145,
in __call__
(Object: search_form)
File
/serve/MIS-Zope-2.1.3/lib/python/DocumentTemplate/DT_String.py, line
502, in __call__
(Object: search_form)
File /serve/MIS-Zope-2.1.3/lib/python/DocumentTemplate/DT_Util.py,
line 335, in eval
(Object: AUTHENTICATED_USER.last_login_time)
(Info: AUTHENTICATED_USER)
File <string>, line 0, in ?
File /serve/MIS-Zope-2.1.3/lib/python/DocumentTemplate/DT_Util.py,
line 127, in careful_getattr
AttributeError: (see above)

-->

This is a rather big problem, as I can't log out once I am superuser...

The superuser also can't access his Preferences. This raises the
following error:

Error Type: AttributeError
Error Value: email

<!--
Traceback (innermost last):
File /serve/MIS-Zope-2.1.3/lib/python/ZPublisher/Publish.py, line
214, in publish_module
File /serve/MIS-Zope-2.1.3/lib/python/ZPublisher/Publish.py, line
179, in publish
File /serve/MIS-Zope-2.1.3/lib/python/Zope/__init__.py, line 202,
in zpublisher_exception_hook
(Object: DemoPortalBase)
File /serve/MIS-Zope-2.1.3/lib/python/ZPublisher/Publish.py, line
165, in publish
File /serve/MIS-Zope-2.1.3/lib/python/ZPublisher/mapply.py, line
160, in mapply
(Object: personalize_form)
File /serve/MIS-Zope-2.1.3/lib/python/ZPublisher/Publish.py, line
102, in call_object
(Object: personalize_form)
File /serve/MIS-Zope-2.1.3/lib/python/OFS/DTMLMethod.py, line 145,
in __call__
(Object: personalize_form)
File
/serve/MIS-Zope-2.1.3/lib/python/DocumentTemplate/DT_String.py, line
502, in __call__
(Object: personalize_form)
File /serve/MIS-Zope-2.1.3/lib/python/DocumentTemplate/DT_Var.py,
line 278, in render
(Object: AUTHENTICATED_USER.email)
File /serve/MIS-Zope-2.1.3/lib/python/DocumentTemplate/DT_Util.py,
line 335, in eval
(Object: AUTHENTICATED_USER.email)
(Info: AUTHENTICATED_USER)
File <string>, line 0, in ?
File /serve/MIS-Zope-2.1.3/lib/python/DocumentTemplate/DT_Util.py,
line 127, in careful_getattr
AttributeError: (see above)

-->

I guess this is because the Portal creation Wizard does not ask for
the eMail of the first Portal Manager. I guess this is a bug.

How is this supposed to work? What should the first portal manager
be? The superuser or a new user?

Jochen
Re: [Zope-PTK] superuser problems [ In reply to ]
This is not quite the case. The root superuser is _not_ a Portal
Member, it is merely a Zope user. As such, it does not provide any of the
services that the Portal expects. You can use this account to manage your
portal via the standard Zope Management Interface, but that's as far as it
goes. You should give your portal manager a different name to prevent
confusion.

The reason you cannot log out is because you did not log in to the
Portal, you logged in to Zope. Zope is using HTTP-based authentication,
while the Portal is using cookies. The portal tries to log you out by
expiring those cookies, but since that's not what is providing your
credentials it has no effect.

If you are using IE5, you can get a new HTTP enviroment by starting a
new browser. Otherwise, you will have to shut down all your broweser
windows and restart it to get a fresh enviroment. Optionally, you can try
to find another hostname that refers to the same machine. The hostname
(but annoying, not the port) is used by the browser to determine what HTTP
authorization credentials to provide. Using a hostname you haven't yet
logged in with allows you to log in with cookie-based authentication.

--
Mike Pelletier email: mike@digicool.com
Mild mannered software developer icq: 7127228
by day, super villain by night. phone: 519-884-2434