Hi,
We had a lot of discussions concerning the different attributes
that an application may want to store for an user. The approach
that is used currently is that certain attributes are stored
as 'real' attributes i.e. columns of a table, and others are
stored as a serialized hashtable object. The action taken
while storing the user data, depends on the TurbineUserPeer
recognizing the attribute name as a column name of the Visitor
table. If the application needs to process some other attribute
that the TurbineUserPeer does not know, even if the administrator
adds a suitably called column to the visitor table, the
attribute still will be stored in the serialized hashtable, thus
preventing the application from using this attribute in Criterias
of User selection. To change this, the creator of the application
would have to extend DBUser class to use extended TurbineUserPeer class
that is aware of the additional attributes.
Sometimes need arises to associate some data with specific Role or
Permission. Today I added code to the Group/Role/Permission that
makes this possible - methods Object getAttribute(String) and
void setAttribute(String, Object) are expected to behave similarly
to the well known getPerm/setPerm pair.
Currently, the classes for Group etc. are not plugable, therefore
it's not possible to manipulate real attribute/serialized hashtable
issues this way. I'm seeking for an elegant solution that would allow
specifying what specific attributes of an User/Group/Role/Permissionan
the application wishes to store as real columns in a table (real
attributes in an LDAP entity).
Here's the idea right of the top of my head - lets give security service
properties that specify the 'real' attributes for each type of objects
for example:
services.TurbineSecurityService.user.attributes=EMAIL, COUNTRY, CITY
services.TurbineSecuritySerbice.role.attributes=CHECKOUT_MASK, CHECKIN_MASK
If no other propositions emerge, I'll implement it along with
new peer classes.
Rafal
--
Rafal Krzewski
Senior Internet Developer
mailto:[EMAIL PROTECTED]
+48 22 8534830 http://e-point.pl
------------------------------------------------------------
To subscribe: [EMAIL PROTECTED]
To unsubscribe: [EMAIL PROTECTED]
Search: <http://www.mail-archive.com/turbine%40list.working-dogs.com/>
Problems?: [EMAIL PROTECTED]