Package psdi.app.signature

The Signature package defines users and security groups.

See: Description

Package psdi.app.signature Description

The Signature package defines users and security groups. It includes functionality for adding users to the system and changing their status. It defines their restrictions for using the system, including limits by site and by application function.

Package Specification

The main classes included in the Signature package are:

  • MaxUser -- Identifies the users who are allowed to create sessions in MXServer. Each row identifies the UserID and a few other attributes. The most important attributes are PersonID and Status. PersonID is a foreign key to the Person table. The security groups to which a user is assigned are defined in GroupUser.

  • MaxGroup -- There is a row for each security group; the key field is GroupName.

Secondary classes that pertain to a user are:

  • Bookmark -- A user is allowed to create a Bookmark to identify important Mbo(s) to be easily accessed in the future. This is somewhat like the concept of a Stored Query, except that each Bookmark represents one Mbo by its keyvalue. The Bookmark table identifies the username, the app, and the keyvalue. The implicit table name and column name which are referenced by the keyvalue are maxapps.maintbname and maxapps.keycolumn.

  • DefaultQuery -- A user is allowed to specify a Query that will be used as that user's default query for an application.

  • GroupReassignAuth -- If a particular user is allowed to change the security group assignments of other users, there will be one or more entries in GroupReassignAuth. Each entry identifies a group to which these other users may be assigned. (The name of the base table is GrpReassignAuth.)

  • GroupUser -- Identifies the security group(s) to which a user is assigned.

  • LoginTracking -- History of successful and unsuccessful attempts at login and user verification. This is populated only if MaxVar LOGINTRACKING is True. Too many unsuccessful attempts in succession will result in changing the user status to Blocked.

    See SignatureService addLoginTracking.

  • MAXSession -- Active connections involving MXServer. A row where IsSystem is False represents an active client (user) connection to MXServer. A row where IsSystem is True represents MXServer's active connection to the database.

  • MaxUserStatus -- History of status changes by UserID. Valid statuses are specified in valuelist MAXUSERSTATUS.

  • PasswordHistory -- History of password changes by UserID.

  • Query -- A user is allowed to create a Stored Query that contains SQL that can be used for the main query in an app. It implicitly applies to the table identified by maxapps.maintbname. The Query table identifies the username, the app, the query name and query SQL.

  • UserPref -- For a UserID and varname, stores a varvalue. Similar in concept to MaxVars, but rather than being global, these are specific to users, and as such represent preferences rather than global constraints.

  • UserPurGL -- Defines a user's default GL account(s) in purchasing-related applications.

Secondary classes that pertain to a security group are:

  • ApplicationAuth -- This object identify which security options a group has access to. Presence of a row indicates that access has been granted to this group for the specified app and optionname. See also SigOption.

  • GLAuth -- This object, and the attributes in MaxGroup, identify which GL segments a group has override authority to.

  • SecurityRestrict -- Specifies any data access restrictions for a group on particular objects and attributes. When the value of groupname on this table is null, the restriction applies to all groups.

  • LaborAuth -- This object, and the attributes in MaxGroup, identify which laborcodes a group has access to.

  • LocAuth -- This object, and the attributes in MaxGroup, identify which storerooms a group has access to.

  • SiteAuth -- This object, and the attributes in MaxGroup, identify which sites a group has access to.

  • LimitTolerance -- This object identifies the tolerances and purchasing limits for a group within a given organization.

Other secondary classes in the Signature package are:

  • SigOption -- This represents an entity to which security may be applied. It is unique by app and optionname.

Relationship diagram

The following diagram shows the relationships between the various classes in the Signature package.

Data Restrictions

The following diagram shows the relationships between the various objects used for data restrictions.

Related Documentation

  • Security Package description.
  • UserInfo -- The UserInfo class in the Security package. At runtime, identifies the user of this session.
  • Profile -- The Profile class in the Security package. At runtime, identifies the security profile for the user of this session.

Last updated: 03/12/03