Users Table Data Dictionary>>
The users table (
users_table) stores login information. The username, a validated email, a salt, a hash, and other information are stored in the table. The userrole contains the user’s level and interface name for that permission. The name of the user is stored in 3 fields and there is a notes field for extraneous information. There is also a field to specify valid IPs and IP ranges for the user.
username: username, must be a distinct username, table has a distinct constraint on column.
email: email, must be a distinct email, table has a distinct constraint on column.
hash: sha-512 hash created from password
salt: md5 hash created from microtime used to salt
attempts: count of invalid logins, 10 is the default limit
userroles: array of userroles, where userrole is an integer followed by an underscore and the corresposding interface.
fname: First Name of user.
minit: Middle initial or middle name of user.
lname: Last Name of user, should include suffix if there is one.
notes: Notes on the user for purposes of administration.
jsondata reserved for later use as document field
reset field used to manage password resets.
ips: Array of allowed ips (IPv4 or IPv6). Reduce the ip length to allow ip ranges, default is 0.0.0.0/0 and 0:0:0:0:0:0:0:0/0 which allows all ips.
change_date: Datetime of record creation, updated by trigger.