Adhésion
Une adhésion lie un utilisateur à un compte avec un rôle précis. Un utilisateur peut avoir des adhésions dans plusieurs comptes, chacune avec un rôle différent.
Schéma
interface Membership {
id: string; // "mbr..." - Unique identifier
user_id: string; // User who has membership
account_id: string; // Account membership is in
role: MembershipRole;
}
type MembershipRole = "owner" | "member" | "viewer";
Propriétés
| Propriété | Type | Description |
|---|---|---|
id | string | KSUID avec préfixe mbr |
user_id | string | Référence utilisateur |
account_id | string | Référence compte |
role | enum | Niveau de permission |
Rôles
| Role | Permissions |
|---|---|
owner | Accès complet, gestion des membres, suppression du compte |
member | Lecture/écriture des ressources |
viewer | Accès en lecture seule |
Accès multi-comptes
User (uid_123)
├── Membership → Account A (role: owner)
├── Membership → Account B (role: member)
└── Membership → Account C (role: viewer)
Claims du jeton
Lorsqu’un compte est accédé, le jeton inclut :
{
"uid": "uid_123",
"acc": "acc_A",
"role": "owner"
}
Exemple
{
"id": "mbr_2kHfPZcN9xW4mE8RtY7vB",
"user_id": "uid_1jGePYbM8wV3lD7QsX6uA",
"account_id": "acc_3lIfQZdO0yX5nF9SuY8wC",
"role": "member"
}
Liés
- Utilisateur - Ressource utilisateur
- Compte - Ressource compte
- Applications - Frontières de service
- Utilisateurs - Gestion des utilisateurs