Vibekit

Teams & Mandantenfähigkeit

Mandantenfähige Organisationsstruktur, Mitgliederrollen und Datenisolation.

Teams verwenden Team, TeamMembership und TeamInvitation im Prisma-Schema. Team enthält ID, Namen, optionalen Slug und Avatarpfad; TeamMembership verknüpft Benutzer mit Teams über die Rollen OWNER oder MEMBER.

Eigentümer verwalten Teameinstellungen, Einladungen, Mitglieder und Abrechnung. Mitglieder können Teamressourcen nutzen und ihre eigene Mitgliedschaft verlassen; die Ersteller-Mitgliedschaft ist vor Entfernung geschützt. Die Benutzerrolle admin ist von Mitgliedschaftsrollen getrennt; die vorhandenen Ability-Helfer gewähren Admins ebenfalls Eigentümer-/Mitgliederzugriff.

Teamfunktion erweitern

Nutzen Sie protectedProcedure und validierte Eingaben. Prüfen Sie ctx.abilities.isTeamMember(teamId) für Mitgliederressourcen oder ctx.abilities.isTeamOwner(teamId) für Verwaltungsaktionen vor dem Lesen oder Schreiben. Importieren Sie db aus database; ctx.db gibt es nicht.

Jede Abfrage einer mandantenbezogenen Ressource muss die autorisierte Team-ID enthalten. Bei Operationen über eine Ressourcen-ID prüfen Sie deren Teamzugehörigkeit und den Aufrufer vor Änderungen. Folgen Sie den vorhandenen Teamprozeduren in packages/api/modules/team/procedures und testen Sie fremde Team-IDs als verbotene Fälle.

Siehe Team-Einladungen.

On this page