Christopher Hawkins
clh at christopherhawkins.com
Mon Oct 20 13:00:49 CDT 2003
This sounds nice - I have built similar setups for multiple clients in the past, starting fresh each time and never taking the time to genericize it. What a knucklehead. Good to hear you're putting together something that is plug-and-play. -Christopher- ---- Original Message ---- From: jcolby at colbyconsulting.com To: AccessD at databaseadvisors.com, Subject: RE: [AccessD] Lightweight security Date: Sat, 18 Oct 2003 11:27:28 -0400 >Folks, > >I am working on my Light Weight Security system and am looking for >beta >testers, i.e. people who would like an interface level security >system such >as I am designing. This email will briefly outline how things work >so that >you can decide whether you would like to test it. I am looking for >PROGRAMMERS as beta testers. LWS is currently a "monitor" only >system, i.e. >it doesn't directly affect the form or control, it only allows the >developer >to ask questions like "should this user (belonging to this set of >groups) be >allowed to open the form, see this control" etc. Thus the developer >needs >to be capable of writing code to query the classes and apply the >answer as >(s)he sees fit. I may, at a later date, add the ability to have LWS >actually set the properties discussed below which would allow use >with less >programming but for now that isn't in place. > >LWS is designed to restrict basic operations on forms and controls. >The >form operations / properties that it will affect are Open form, Edit >record, >Delete record and Add record. The control properties affected are >Enabled, >Locked, and Visible. > >LWS is NOT designed to replace Access' (or SQL Server's) security. >LWS is >designed to allow the developer to restrict operations at the >INTERFACE >level, i.e. who can open forms, who can edit records in a given >form, who >can SEE a given control on a given form, who can EDIT data in a given >control on a given form. These are fundamentally different issues >than the >built in DATA security that Access and SQL Server provide. I >designed LWS >because my clients asked for things like "only allow certain users >to be >able to see (or use) this control" or "only allow certain users to >be able >to open this form" etc. > >As an example I occasionally have controls that reassign child >records to >parent records (change the parent). This is a "Supervisor only" >operation >and requires either going directly into tables, or building specific >forms >if I don't have a system like LWS. with LWS I can set the control >Invisible >as the form opens unless the user belongs to the Supervisor (or >Administrator) group. > >LWS is designed around a Users / Groups metaphor similar to Windows >NT/2K/XP >etc. Users exist but don't directly have any innate abilities. >Users >belong to Groups. Groups can do things. > >There are a set of tables that support the LWS system: > >uSysLWSUsers contains user information - Name, PEID (mapped to your >Personnel ID if you desire) and password hash (MD5). >usystblLWSGroup contains group information - Name and the 2^x bit >that is >used for mapping it's abilities later. >usystblLWSGroupUser contains mappings of users to groups. A simple >m-m >uSysLWSUsers and usystblLWSGroup. >MsysForms contains form security information - Form ID, Form name, >Open, >Edit, Add and Delete maps. >MsysControls contains control security information - Form ID, >Control name, >Enabled, Locked and Visible maps > >There are a handful of forms to support LWS: > >usysfrmLWSLogin - The login form. >usysfrmLWSUsers - The form for setting up users. >usysfrmLWSGroups - The form for setting up groups. >usyssfrmLWSGroupUser - The form for mapping groups to users. >usyssfrmLWSUserGroup - The form for mapping users to groups. >usysfrmLWSSetupFrmSecurity - The form that assists the developer in >setting >up form security > >LWS is NOT finished, but all of the basic tables are in place, I am >using >the login in my apps, and the code to monitor forms is up and >functioning. >The code to monitor controls follows the same form and will be >available >within the next week or two. > >LWS will be a library (MDA for now) with full source code available >to beta >testers. Please remember, I am looking for "code jocks" for now. >You >should be comfortable instantiating classes, calling class methods >and >setting class properties, manipulating form and control attributes >via VB >etc. > >I will ask for a NDA since ya never know... > >Beta testers will be given a single developer license to use the >finished >product, which is more than MS gives you! > >I think this should give enough information to allow you to decide >whether >you are interested. If you are interested, please contact me OFF >LIST at >LWS at colbyconsulting.com. > >John W. Colby >www.colbyconsulting.com > > >_______________________________________________ >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > >