fix(credentials): workspace admin users get 'member' role on credential_member instead of 'admin'
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
- #5431 von @tsushanth — ohne Merge geschlossen
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 42/100
- Issue-Typ
- Bug
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- typescript
- Bereich
- api, authorization, backend
Rechercherichtung
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.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
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
- Vorherrschende Sprache
- TypeScript
- Sterne
- 29.8k
- Forks
- 3.9k
- Ø Merge
- 1 Std. 44 Min.
- Gemergte PRs (30 T.)
- 841
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus simstudioai/sim
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
simstudioai/sim#9831 ·
Maintainer antworten meist innerhalb von 1 Tag
-
v2 API rate limits self-hosted installs by IP even with billing disabledEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offen
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 75/100
simstudioai/sim#8452 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Railway template generates invalid ENCRYPTION_KEY (should be 64-char hex string)Evtl. wieder frei @sahooarnav2007-gif hat das vor 15 Tagen übernommen, und es ist kein Pull Request offen. Offenbug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
simstudioai/sim#6246 · 3 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
simstudioai/sim#1204 · 8 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 45/100
simstudioai/sim#9734 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in simstudioai/sim
Ähnliche Issues
-
Bug: Cloudflare Pages static _redirects identity rule causes RSC Flight to reload as HTMLEvtl. vergeben @Donvero hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Mantitup-Org/vista#210 ·
-
status: waiting for maintainer
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
mui/material-ui#49751 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
Maintainer antworten meist innerhalb von 2 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
diplodoc-platform/transform#1184 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
JonasKruckenberg/imagetools#973 ·
Maintainer antworten meist innerhalb von 1 Tag