[Seaside] Authenticaing Multiple Users

Sven Van Caekenberghe sven at beta9.be
Fri Nov 21 09:48:43 CET 2003


On 20 Nov 2003, at 23:19, Avi Bryant wrote:

> Because of this, most people use form-based login pages these days...

It is a pity then that WAAuthenticatedSession isn't doing this ;-)

In any case, the behavior of putting a component under security control 
should be pluggable.

I tried this:

WAComponent subclass B9WALogin with user/password instance vars, 
answers itself on login

WAControllerSession subclass B9WAAuthenticatedSession with user 
instance var and the following #start: method

start: aRequest
	user
		ifNil: [ | login |
			login := self call: B9WALogin new.
			(self authenticateUser: login user password: login password)
				ifTrue: [
					user := login user.
					super start: aRequest]
				ifFalse: [
					]]
		ifNotNil: [
			super start: aRequest]

I haven't tried this because I known it can't work: #call: isn't 
implemented/supported here, I also do not   know very well what to do 
on failed logins (the login page should come up again I guess). I 
looked at how errors/warnigns are handled, but that looks like internal 
stuff to me...

Is there a way to make this work ?

Sven



More information about the Seaside mailing list