Ontology Schema¶
graph LR
U(User) -- HAS_ACCOUNT --> UA{{UserAccount}}
U -- OWNS --> CC(Device)
Note
In this schema, squares represent Abstract Nodes and hexagons represent Semantic Labels (on module nodes).
Semantic Labels¶
Name |
Description |
Ref |
|---|---|---|
UserAccount |
Represents a user account on a system or service. This label is used to unify accounts from different sources (e.g., Duo, Okta, Tailscale). |
User¶
Reference: d3f:User
A user is a person (or agent) who uses a computer or network service. A user often has one or many user accounts.
Field |
Description |
|---|---|
id |
The unique identifier for the user. |
firstseen |
Timestamp of when a sync job first created this node. |
lastupdated |
Timestamp of the last time the node was updated. |
User’s primary email. |
|
username |
Login of the user in the main IDP. |
fullname |
User’s full name. |
firstname |
User’s first name. |
lastname |
User’s last name. |
Relationships¶
Userhas one or manyUserAccount(semantic label):(:User)-[:HAS_ACCOUNT]->(:UserAccount)Usercan own one or manyDevice:(:User)-[:OWNS]->(:Device)
Device¶
Reference: d3f:ClientComputer
A client computer is a host that accesses a service made available by a server or a third party provider.
A client computer can be a DesktopComputer, LaptopComputer, TableComputer, MobilePhone.
Field |
Description |
|---|---|
id |
The unique identifier for the user. |
firstseen |
Timestamp of when a sync job first created this node. |
lastupdated |
Timestamp of the last time the node was updated. |
hostname |
Hostname of the device. |
os |
OS running on the device. |
os_version |
Version of the OS running on the device. |
model |
Device model (e.g. ThinkPad Carbon X1 G11) |
platform |
CPU architecture |
serial_number |
Device serial number. |
Relationships¶
Deviceis linked to one or many nodes that implements the notion into a module(:User)-[:HAS_REPRESENTATION]->(:*)Usercan own one or manyDevice(:User)-[:OWNS]->(:Device)