fix(credentials): workspace admin users get 'member' role on credential_member instead of 'admin'
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
- #5431 par @tsushanth — fermée sans fusion
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 42/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- À l'abandon
- Stack technique
- typescript
- Domaine
- api, authorization, backend
Piste de recherche
Start with ensureWorkspaceCredentialMemberships in apps/sim/lib/credentials/environment.ts and the POST handler in apps/sim/app/api/credentials/route.ts; trace how workspace permissions are read and how credential_member roles are assigned. Reproduce the owner, admin, write, and read cases, then verify that owner and admin users receive admin while write and read users receive member.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Bug Description
When a workspace-scoped secret is created (via Settings > Secrets or syncWorkspaceEnvCredentials), the credential_member role is determined solely by whether the user is the workspace owner:
const targetRole = memberUserId === ownerUserId ? 'admin' : 'member'
This means workspace admin users are assigned member role on credential_member, making them unable to edit or delete the secret — even though they have admin access to the workspace.
Affected Code
apps/sim/lib/credentials/environment.ts—ensureWorkspaceCredentialMemberships: only checksownerUserId, ignores workspacepermissionstableapps/sim/app/api/credentials/route.ts— POST handler: same issue, onlyworkspaceRow.ownerId || session.user.idgets admin
Expected Behavior
Credential member role should reflect workspace permissions:
| Workspace Permission | Credential Role |
|---|---|
owner (workspace.ownerId) |
admin |
| admin (permissions table) | admin |
| write | member |
| read | member |
Steps to Reproduce
- Create a workspace with multiple members (owner + admin + write/read users)
- As the owner, go to Settings > Secrets and create a workspace-scoped secret
- Check
credential_membertable — only the owner hasadminrole - Log in as a workspace admin user — cannot edit or delete the secret
- Langage dominant
- TypeScript
- Étoiles
- 29.8k
- Forks
- 3.9k
- Merge moyen
- 1 h 44 min
- PR mergées (30 j)
- 841
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de simstudioai/sim
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
simstudioai/sim#9831 ·
Les mainteneurs répondent en général sous 1 jour
-
v2 API rate limits self-hosted installs by IP even with billing disabledPeut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 75/100
simstudioai/sim#8452 ·
Les mainteneurs répondent en général sous 1 jour
-
Railway template generates invalid ENCRYPTION_KEY (should be 64-char hex string)Peut-être à nouveau libre @sahooarnav2007-gif l’a pris il y a 15 jours, et aucune pull request n’est ouverte. Ouvertebug
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
simstudioai/sim#6246 · 3 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
simstudioai/sim#1204 · 8 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 45/100
simstudioai/sim#9734 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de simstudioai/sim
Issues similaires
-
Bug: Cloudflare Pages static _redirects identity rule causes RSC Flight to reload as HTMLPeut-être pris @Donvero l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Mantitup-Org/vista#210 ·
-
status: waiting for maintainer
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
mui/material-ui#49751 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
Les mainteneurs répondent en général sous 2 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
diplodoc-platform/transform#1184 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
JonasKruckenberg/imagetools#973 ·
Les mainteneurs répondent en général sous 1 jour