classDiagram direction LR OfficePerson o.. "*" Credentials Credentials "1" o-- "1" RbacSubject CredentialsContext "1..n" --o "1" CredentialsContextMapping Credentials "1..n" --o "1" CredentialsContextMapping class Credentials{ +totpSecret: text +phonePassword: text +emailAdress: text +smsNumber: text -active: bool [r/w] -globalUid: int [w/o] -globalGid: int [w/o] -onboardingToken: text [w/o] } class CredentialsContext{ -type: Enum [SSH, Matrix, Mastodon, ...] -qualifier: text } class CredentialsContextMapping{ } note for CredentialsContextMapping "Assigns Credentials to CredentialsContexts" class RbacSubject{ +uuid: uuid +name: text # == nickname } class OfficePerson{ +type: enum +tradename: text +title: text +familyName: text +givenName: text +salutation: text } style CredentialsContext fill:#00f,color:#fff style CredentialsContextMapping fill:#00f,color:#fff style Credentials fill:#00f,color:#fff style RbacSubject fill:#f96,color:#fff style OfficePerson fill:#f66,color:#000