Database Tables and Fields
The configuration database, member database and log database all can
be the same database or different database. However, member database and
log database must be of the same type. For example, it is possible to
have the configuration database is an MSAccess database (OLEDB) and member
database and log database both be of SQLServer (SQLDB)
All table names and field names are hard corded. The developer must not
change them.
Configuration Database Tables
The configuration database contains the following tables.
Login
Module
UI
The login table contains the name value pairs of all the configuration
entries. The following is a list of configuration entries and their descriptions.
Table: LOGIN |
Column Name |
Example |
Description |
ItemName |
EncryptDb |
Name of the configuration item |
ItemValue |
yes |
Value of the configuration item |
The following lists all the possible column names, values and their descriptions.
ItemName |
ItemValue |
Description |
AdminId |
Ex: ADMIN |
|
MemberDb |
|
|
LogDb |
|
|
DbType |
OLEDB or SQLDB |
|
EncryptDb |
yes or no |
Defines whether to encrypt the database connection strings for Member
Database and Log Database |
EnableLog |
yes or no |
Defines whether to enable logging of users login in. |
EncryptPassword |
yes or no |
Defines whether to decrypt password after reading from member database
while validating a user login. If this field is set to yes, the password
field in the member table must be encrypted using the Security component
(Included). The component uses Rijdael Encryption and requires a key.
The web developer must also supply this key as a DPAPI encrypted String
in the app.config file using the key “EncryptionKey”.
For testing purposes, the developer may use http://localhost/sys/encr.aspx
to encrypt and decrypt strings. |
InactiveId |
Ex: INACTIVE |
A generic key that is used to identify the inactive security level.
For user with INACTIVE status, login will be disabled. |
PreLoginState |
Ex: LOGOUT |
The display state in which the system stays before login (Please
see Modules table)
Any value can be given to this filed, as long there is a corresponding
mapping provided in Modules table. (This is required for extending
the system for multistage state systems with more than 2 states).
Normally the user need not modify these fields.
|
PostLoginState |
Ex: LOGIN |
The display state in which the system stays after login (Please
see Modules table)
Any value can be given to this filed, as long there is a corresponding
mapping provided in Modules table. (This is required for extending
the system for multistage state systems with more than 2 states).
Normally the user need not modify these fields.
|
LoginCommand |
login |
Command that will be sent when login button is placed. The user
must not change this.
login command is treated differently since it includes certain system
management tasks.
|
LogoutCommand |
logout |
Command that will be sent when logout button is placed. The user
must not change this.
logout command is treated differently since it includes certain system
management tasks.
|
ADMIN |
Ex: 99 |
A numeric value for the security level ADMIN. There is no hard binding
to the word ADMIN or the numeric value. It could be SUPERUSER=500
as well. |
MEMBER |
Ex: 1 |
A numeric value for the security level MEMBER. There is no hard
binding to the word MEMBER or the numeric value. It could be USER=20
as well. |
SECURITYLEVEL 3 |
|
|
SECURITYLEVEL 4 |
|
|
SECURITYLEVEL N |
|
|
INACTIVE |
|
|
The module table contains configuration entries for navigating to web
pages and the associated buttons and graphics.
Column Name |
Example |
Description |
ID |
1 |
Id column |
ModuleName |
Update |
name of the module |
CommandName |
update |
The command string that is associated with the module. This could
be any string. However, it must be unique.
Also, commands login and logout are reserved and must be specified
in the table. |
CustomGraphics |
yes |
If yes, user can specify an image button for the module that will
be displayed to the user. If no, default display is selected |
ModuleLink |
/member/update.aspx |
Relative path of the web page that the system will be navigated
to. |
ModuleEnabled |
True |
If true, the module will be enabled and a button will be displayed.
Otherwise, it must be set to false |
MouseOutBtn |
/images/lm_updatebtn.gif |
If CustomGraphics=yes
this image will be loaded |
MouseOverBtn |
/images/lm_updatebtn_bld.gif |
If CustomGraphics=yes
this image will be loaded and used as a mouseover image |
AlternateText |
Update |
Tool Tip text for the module |
DisplayState |
LOGIN |
Defines during which state, the button should be displayed. For
example, a login button will be displayed during the LOGOUT state |
TagOrder |
5 |
The order in which module navigation buttons are displayed |
MinimumRights |
MEMBER |
The minimum security level required for the user to access this
module. |
The UI Table contains customization to the login UI.
Table: UI |
Column Name |
Example |
Description |
ItemName |
UserValidationError |
Name of the configuration item |
ItemValue |
invalid |
Value of the configuration item |
The following are the required ItemNames and ItemValues
ItemName |
ItemValue |
Description |
UserValidationError |
Ex: invalid |
Error that will be displayed if the client side validaton fails
for userid |
PasswordValidationError |
Ex: invalid |
Error that will be displayed if password validation failes for userid |
ErrorPage |
/sys/Message.aspx |
Link to a web page that will display error message. The error
page must accept a query string parameter Message
The developer may customize the default message page /sys/Message.aspx
or create a new one. |
UserValidationRequired |
yes or no |
enables or disables client side validation for userid |
PasswordValidationRequired |
yes or no |
Enables or disables client side validation for password |
UserValidationExpression |
[A-Za-z0-9_\-\.]+\@[A-Za-z0-9_\-]+.*\.\w{2,3} |
Regular expression that is used to perform client side validation
on userid |
PasswordValidationExpression |
.* |
Regular expression that is used to perform client side validation
on password |
|
|
|
The member database contains the member table
Table Name: MEMBER |
Column Name |
Example |
Description |
MemberID |
170 |
Id column |
UserID |
test@test.com |
UserID |
UserPwd |
mypassword |
Encrypted or non encrypted password for the userid |
Email |
test@test.com |
Email address of the userid |
UserStatus |
ADMIN |
Securty level for the userid. If this value is same as that is set
in the AdminId field in configuration table , the user will be an
administrator. If this field is set to same as that as set for the
InactiveId in the configuration table, the userd will be disabled
for login. |
User may use the following optiona fields
Column Name |
Example |
Description |
CrDate |
|
Date when user id was first created |
IPAddress |
|
ip
address of host that was used to create an entry |
CrDate2 |
|
Date when user fields were last updated |
IPAddress2 |
|
ip
address of host that was used to last update user fields |
|