PAS makes no assumptions about where data exists.

In most configurations, it creates a user object on the fly for each request which isn't persisted anywhere (IUserFactory). You can ideed prompt for a login (by writing an IChallengePlugin or using an existing one) and gather the username and password (by wrting an IExtractionPlugin or using an existing one), authenticate it against the SQL database (by writing an IAuthenticationPlugin), and assign the user roles using data in the SQL database (IRolesPlugin).

I'm afraid there's nowhere to go from here except to read the existing plugins and peruse the interfaces to get a sense of what hooks your code needs to provide to be a PAS plugin. I searched a bit to try to find some example code that uses a relational database, but came up dry.

- C

On Jun 27, 2006, at 3:04 PM, Jeff Peterson wrote:

Ok,

After poking around PAS for a while I think I have a bit of a handle on it. This seems to be built primarily for managing Zope users. My solution needs to be able to manage a group of existing users not in Zope currently. Is this something that can be done? I know I can create SQL methods to get data but I am not sure I see how I can use the current data with this framework. Can this be used without an actual userObject in the user folder? Can I, for example, use the framework to prompt a login, gather the username and password, authenticate it against the sql and manage the roles without a userObject in the acl_users folder? Or, if the former is true could they(the userObjects) be created on the fly, say on the first login, so that afterward they existed?

Maybe I am way off base or am misunderstanding something. Any direction would be appreciated.

Regards,

--
Jeffrey D Peterson

<jpeterso.vcf>
_______________________________________________
Zope-PAS mailing list
Zope-PAS@zope.org
http://mail.zope.org/mailman/listinfo/zope-pas

_______________________________________________
Zope-PAS mailing list
Zope-PAS@zope.org
http://mail.zope.org/mailman/listinfo/zope-pas

Reply via email to