Plone Benutzer mit Skript automatisch einloggen
Nico Grubert <[email protected]>
| Newsgroups | gmane.comp.web.zope.german |
|---|---|
| Message-ID | <[email protected]> |
Hallo zusammen
Ich versuche, einen Benutzer der seinen Benutzernamen und Passwort
eingibt, in Plone automatisch einzuloggen.
Use-Case:
Es sollen noch weitere Bedingungen geprüft werden (z.B. ob der Benutzer
einen publizierten speziellen Ordner mit seiner Id hat) bevor der
Benutzer in Plone eingeloggt ist.
In Plone 2 mit dem Standard User Folder hat folgendes Script noch
funktioniert.
========================================================================
# External Method '<plonesite>/login_user'
from base64 import encodestring
from urllib import quote
def login_user(self, REQUEST=None, RESPONSE=None):
" login "
requ = REQUEST
resp = RESPONSE
username = requ.get('username', '')
password = requ.get('password', '')
uf = self.acl_users
user = uf.getUser(username)
if user:
# if ... additional checks
# login user
name = username
pw = password
ac = encodestring('%s:%s' % (name, pw))
cookie_name = '__ac'
cookie_value = quote(ac)
# set auth cookie
resp.setCookie(cookie_name, cookie_value, path='/')
# redirect to the welcome page
pt = getattr(self, 'welcome.html')
resp.redirect(pt.absolute_url())
========================================================================
Die User-Quelle vom acl_users ist LDAP. Der Login über das gewöhnliche
Plone "login_form" funktioniert ohne Probleme. Nur das Einloggen mit dem
Script klappt nicht.
Hat jemand eine Idee, woran das liegen könnte?
Durch PAS haben sich ja einige Dinge geändert und vielleicht muss ich
noch ein bisschen mehr machen, als den auth Cookie zu setzen....
Vielen Dank im voraus
Nico
_______________________________________________
zope mailing list
[email protected]
https://mail.dzug.org/mailman/listinfo/zope