User
Portée : namespaced · Sous licence (fonctionnalité identity-management + quota users)
Un User est une personne sur la plateforme — un siège sous licence. C'est l'identité naturelle qui relie entre eux les comptes de cette personne à travers tous les backends. Le quota users de la licence compte les sièges User, quel que soit le nombre de comptes backend Identity que chaque personne possède.
Spec
| Champ | Type | Description |
|---|---|---|
email | string (requis) | L'email de la personne — la clé naturelle qui relie tous ses comptes Identity. Doit être une adresse valide ; une adresse mal formée est refusée à l'admission (tout comme Identity.spec.email et l'email de chaque membre d'équipe ou d'organisation) |
displayName | string | Nom lisible par un humain |
Un User ne porte aucun type — il est agnostique vis-à-vis du backend. Les comptes par backend (clé LiteLLM, appartenance Langfuse, connexion LibreChat) sont des objets Identity distincts, chacun pointant vers le User via userRef.
Une personne, plusieurs comptes
User (personne / siège) email: alice@example.com
▲ ▲ ▲
│ │ └── Identity (type: librechat) userRef: { name: alice }
│ └────── Identity (type: observability) userRef: { name: alice }
└────────── Identity (type: litellm) userRef: { name: alice }- Chaque
Identitydoit référencer sonUserpropriétaire via unuserRefrequis ({ name }, même namespace). - Un
Identitydont lespec.emailest omis hérite par défaut de l'email duUserpropriétaire, de sorte que la personne conserve une identité unique à travers les backends. - Les comptes
Identitysont illimités ; seuls les siègesUsersont décomptés de la licence.
Exemple
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 } # même namespace
gatewayRef: { name: gateway } # requis, et même namespace — pas de `namespace:`
# email omis → hérite de alice@example.comPréférez type: gateway pour les nouvelles resources
type: litellm fonctionne toujours, mais il est désormais validé contre le Gateway référencé et refusé si les deux divergent. type: gateway suit à la place le spec.type du Gateway, de sorte que l'Identity n'a jamais à nommer le produit de passerelle. gatewayRef est requis pour tout type adossé à une passerelle et doit se trouver dans le même namespace — voir Choix du backend et Règles d'admission.
Licences
Le quota d'instances users dans la License compte les sièges User — une personne est un siège quel que soit le nombre de comptes backend Identity qu'elle possède. La gestion des identités dans son ensemble requiert la fonctionnalité identity-management. Dans l'édition Community, gérez les identités inline sur un seul Gateway.
Voir Identity, Organization et Team et Éditions et licences.