User factory plugin¶
PAS supports multiple user types. The two default user types are: IBasicUser and IPropertiesUser. IBasicUser is a simple user type which supports a user id, login name, roles and domain restrictions. IPropertiedUser extends this type and adds user properties.
A user factory plugin creates a new user instance. PAS will add properties, groups and roles to this instance as part of its user creation process.
If no user factory plugin is able to create a user, PAS will fall back to creating a standard PropertiedUser instance.
The IUserFactoryPlugin interface is a simple one containing a single method:
def createUser( user_id, name ):
""" Return a user, if possible.
o Return None to allow another plugin, or the default, to fire.
"""
The default PAS behaviour is demonstrated by this code:
def createUser(self, user_id, name):
return ProperiedUser(user_id, name)