Skip to content

RbacUser

User object for RBAC. Typically replicated from Active Directory.

erDiagram
    RbacProvider ||--o{ RbacUser : "RbacProviderID"
    User ||--o{ RbacUser : "UserID"
    RbacUser ||--o{ LicenseManagerRbacUserFavoriteFeature : "RbacUserID"
    RbacUser ||--o{ RbacGroupRole : "CreatedByRbacUserID"
    RbacUser ||--o{ RbacUserGroup : "RbacUserID"
    RbacUser ||--o{ RbacUserOrganization : "RbacUserID"
    RbacUser ||--o{ RbacUserPreferences : "RbacUserID"
    RbacUser ||--o{ RbacUserRole : "CreatedByRbacUserID"
    RbacUser ||--o{ RbacUserRole : "RbacUserID"
    RbacUser ||--o{ RbacUserSelectedOrganization : "RbacUserID"
    RbacUser ||--o{ RecentlyUsedObject : "RbacUserID"
    RbacUser ||--o{ SoftwareItemOwner : "RbacUserID"
    RbacUser ||--o{ SoftwareItemRbacUser : "RbacUserID"

Fields

Field Type Description
Created datetime Date/Time this object was created
CreatedBy string OctoSAM user that created the object
DeletedInDirectory boolean True if the account was deleted in Active Directory but cannot be removed from the database due to referential integrity. For example, if set as SoftwareItem owner.
DeletedInDirectoryFirstDetected datetime Date/Time the Deleted in Directory flag was set
DirectoryAccountExpires datetime accountExpires attribute from ActiveDirectory
DirectoryDistinguishedName string DN of this user in Active Directory
DirectoryGUID guid Object-GUID attribute from Active Directory
DirectoryMsDSConsistencyGuid guid A unique ID used by Microsoft Entra ID to synchronize user information
DirectoryWhenChanged datetime whenChanged attribute from Active Directory
DirectoryWhenCreated datetime whenCreated attribute from Active Directory
Enabled boolean True if the user is enabled in Active Directory
EntraIdId string Entra ID ID of this RBAC user
EntraIdLastSignInDateTime datetime Date/Time the user last signed in with Microsoft Entra ID
EntraIdOnPremisesLastSyncDateTime datetime Date/Time the user was last synchronized
EntraIdOnPremisesSyncEnabled boolean True if the Entra ID user was synchronized from an on-premises Active Directory
EntraIdTenantId guid Entra ID tenant ID of this RBAC user
ExtraData string Extra data in JSON format
HashedKey string Reserved for future use
ID numeric Internal ID for the RbacUser entity (Primary Key)
LastFoundInDirectory datetime Date/Time this object was last found in Active Directory
LastModification datetime Date/Time this object was last modified
LastModifiedBy string OctoSAM user that last modified the object
MailAddress string mail attribute of this user in Active Directory
Name string Unique user name
Notes string Notes for this RBAC user
PasswordLastSet datetime Date/Time the password was last set in Active Directory
PasswordNeverExpires boolean True if the Password Never Expires flag is set in Active Directory
PrintableName string access rbac user via inventory user id
PrintableName string Name for this RbacUser that can be used in queries and reports
RbacProviderID numeric Internal ID that references the RbacProvider entity (Foreign Key)
Res1 string Reserved for future use
Res2 string Reserved for future use
Res3 string Reserved for future use
Res4 string Reserved for future use
TelephoneNumber string telephoneNumber attribute of this user in ActiveDirectory
UserID numeric Internal ID that references the User entity (Foreign Key)
UserPasswordExpiryTime datetime Calculated date/time the password will expire
UserPrincipalName string userPrincipalName attribute of this user in Active Directory

References

Column Name Referenced Table Description
RbacProviderID RbacProvider Contains information about RBAC providers, e.g., Active Directory domains or Entra ID tenants. Currently OctoSAM supports only one RBAC provider per installation. Reserved for future use.
UserID User Basic user Information

Referenced by

Table Column Name Description
LicenseManagerRbacUserFavoriteFeature RbacUserID User specific selection of favorite license manager features to display
RbacGroupRole CreatedByRbacUserID M:n relation between group and role. A user can be directly in a role (via RbacUserRole) or indirectly via RbacUsergroup and RbacGroupRole.
RbacUserGroup RbacUserID M:n User to Group relation. Replicated from Active Directory. A user can be member of multiple groups, and groups can be nested in AD but OctoSAM flattens the group membership.
RbacUserOrganization RbacUserID This n:m relation table models the RBAC User to Organization Privilege in a way that's easy to integrate into SQL Queries. The information is redundant to the Organization privileges assigned to the user.
RbacUserPreferences RbacUserID Stores user preferences for web applications
RbacUserRole CreatedByRbacUserID M:n User to Role relation for users with directly assigned roles
RbacUserRole RbacUserID M:n User to Role relation for users with directly assigned roles
RbacUserSelectedOrganization RbacUserID This table contains the per user selected organization for OctoSAM web applications. This selection is used to preselect the organization when the user logs in.
RecentlyUsedObject RbacUserID Per user recently used objects
SoftwareItemOwner RbacUserID M:n relation between SoftwareItem and RBAC User. Models software item ownership. Software Item Owners can be assigned special privileges on their owned products.
SoftwareItemRbacUser RbacUserID M:n relation between SoftwareItem and RbacUser for items that are linked to specific RBAC users