Skip to content

User ​

Ambito: namespaced · Con licenza (funzionalità identity-management + limite users)

Uno User è una persona sulla piattaforma — una postazione con licenza (seat). È l'identità naturale che collega tra loro gli account di quella persona su tutti i backend. Il limite users della licenza conta le postazioni User, indipendentemente da quanti account Identity di backend abbia ciascuna persona.

Spec ​

CampoTipoDescrizione
emailstring (obbligatorio)L'email della persona — la chiave naturale che collega tutti i suoi account Identity. Deve essere un indirizzo ben formato; uno non valido viene rifiutato in fase di admission (così come Identity.spec.email e l'email di ogni membro di team o organizzazione)
displayNamestringNome leggibile

Uno User non ha un type — è indipendente dal backend. Gli account per backend (key LiteLLM, membership Langfuse, login LibreChat) sono oggetti Identity separati, ciascuno dei quali rimanda allo User tramite userRef.

Una persona, molti account ​

User (person / seat)            email: alice@example.com
  ▲   ▲   ▲
  │   │   └── Identity (type: librechat)      userRef: { name: alice }
  │   └────── Identity (type: observability)  userRef: { name: alice }
  └────────── Identity (type: litellm)        userRef: { name: alice }
  • Ogni Identity deve fare riferimento al proprio User tramite un userRef obbligatorio ({ name }, stesso namespace).
  • Un'Identity il cui spec.email è omesso assume per default l'email dello User proprietario, così la persona mantiene un'unica identità tra i backend.
  • Gli account Identity non hanno limiti; solo le postazioni User contano ai fini della licenza.

Esempio ​

yaml
apiVersion: core.navique.com/v1alpha1
kind: User
metadata:
  name: alice
  namespace: forge-identity
spec:
  email: alice@example.com
  displayName: Alice Example
---
apiVersion: core.navique.com/v1alpha1
kind: Identity
metadata:
  name: alice-litellm
  namespace: forge-identity
spec:
  type: litellm
  userRef: { name: alice }     # same namespace
  gatewayRef: { name: gateway }  # required, and same namespace — no `namespace:`
  # email omitted → inherits alice@example.com

Preferisci type: gateway per le nuove risorse

type: litellm funziona ancora, ma ora viene validato rispetto al Gateway referenziato e viene rifiutato se i due non concordano. type: gateway segue invece lo spec.type del Gateway stesso, così l'Identity non deve mai indicare il prodotto del gateway. gatewayRef è obbligatorio per ogni type basato su gateway e deve trovarsi nello stesso namespace — vedi Scelta del backend e Regole di admission.

Licenze ​

Il limite di istanze users nella License conta le postazioni User — una persona corrisponde a una postazione, indipendentemente da quanti account Identity di backend possieda. La gestione delle identità nel suo complesso richiede la funzionalità identity-management. Nell'edizione Community, gestisci invece le identità inline su un singolo Gateway.

Vedi Identity, Organization e Team e Edizioni e licenze.

Nucleo open source sotto AGPL-3.0. I componenti Enterprise sono proprietari e soggetti a licenza.