syst_identities


Description

The identities with which access accounts are identified to the system. The most common example of an identity would be a user name such as an email address.

Columns

Column Type Size Nulls Auto Default Children Parents Comments
id uuid 2147483647 uuid_generate_v7()
syst_credentials.credential_for_identity_id syst_credentials_for_identities_fk C
syst_identities.validates_identity_id syst_identities_validates_identities_fk C

The record’s primary key. The definitive identifier of the record in the system.

General Usage

This column is system maintained and should be considered read only in normal operations.

access_account_id uuid 2147483647 null
syst_access_accounts.id syst_identities_access_accounts_fk C

The ID of the access account to be identified the identifier record.

identity_type_id uuid 2147483647 null
syst_enum_items.id syst_identities_identity_types_fk C

The kind of identifier being described by the record.

General Usage

Note that this value influences the kind of credentials that can be used to complete the authentication process.

account_identifier text 2147483647 null

The actual Identifier which identifies a user or system to the system.

General Usage

Identifiers of the same Identifier Type are unique to the Owner/Access Account combination. All Unowned Access Accounts are considered as being in the same Owner group for this purpose.

validated timestamptz 35,6 null

The timestamp at which the identity was validated for use.

General Usage

Depending on the requirements of the identity functional type, the timestamp here may be set as the time of the identity creation or it may set when the access account holder actually makes a formal verification. A null value here indicates that the identity is not validated by the access account holder and is not able to be used for authentication to the system.

validates_identity_id uuid 2147483647 null
syst_identities.id syst_identities_validates_identities_fk C

Each identity requiring validation will require its own validation.

General Usage

Since validation requests are also single use identities, we need to know which permanent identifier is being validate. This column points to the identifier that is being validated. When the current identifier is not being used for validation, this field is null.

validation_requested timestamptz 35,6 null

The timestamp on which the validation request was issued to the access account holder.

General Usage

This value will be null if the identity did not require validation.

identity_expires timestamptz 35,6 null

The timestamp at which the identity record expires.

General Usage

For validation and recovery identities this would be the time of validation/recovery request expiration. For perpetual identity types, this value will be NULL.

external_name text 2147483647 null

A non-unique/non-key value used to display to users and external parties where uniqueness is less of a concern than specific end user presentation.

diag_timestamp_created timestamptz 35,6 now()

The database server date/time when the transaction which created the record started.

General Usage

This column is system maintained and should be considered read only in normal operations.

diag_role_created text 2147483647 null

The database role which created the record.

General Usage

This column is system maintained and should be considered read only in normal operations.

diag_timestamp_modified timestamptz 35,6 now()

The database server date/time when the transaction which modified the record started. This field will be the same as diag_timestamp_created for inserted records.

General Usage

This column is system maintained and should be considered read only in normal operations.

diag_wallclock_modified timestamptz 35,6 clock_timestamp()

The database server date/time at the moment the record was actually modified. For long running transactions this time may be significantly later than the value of diag_timestamp_modified.

General Usage

This column is system maintained and should be considered read only in normal operations.

diag_role_modified text 2147483647 null

The database role which modified the record.

General Usage

This column is system maintained and should be considered read only in normal operations.

diag_row_version int8 19 1

The current version of the row. The value here indicates how many actual data changes have been made to the row. If an update of the row leaves all data fields the same, disregarding the updates to the diag_* columns, the row version is not updated, nor are any updates made to the other diag_* columns other than diag_update_count.

General Usage

This column is system maintained and should be considered read only in normal operations.

Direct Usage

This column is frequently used by by application logic to resolve the “dirty write” issues which can arise from concurrent data changes. As such any administrative override of automatic system maintenance of this value should consider the ramifications on application function.

diag_update_count int8 19 0

Records the number of times the record has been updated regardless as to if the update actually changed any data. In this way needless or redundant record updates can be found. This row starts at 0 and therefore may be the same as the diag_row_version - 1.

General Usage

This column is system maintained and should be considered read only in normal operations.

Indexes

Constraint Name Type Sort Column(s)
syst_identities_pk Primary key Asc id
syst_identities_access_account_idx Performance Asc access_account_id
syst_identities_account_type_identifier_idx Performance Asc/Asc/Asc identity_type_id + access_account_id + account_identifier
syst_identities_validates_identities_udx Must be unique Asc validates_identity_id

Relationships