Granting a permission to a user id with no account answers 500 instead of 404
Maintainer antworten meist innerhalb von 1 Tag
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- Ein halber Tag
- Anfängerfreundlichkeit
- 76/100
Rechercherichtung
Beginne beim Handler der RBAC-Grant-Route für POST /api/v1/rbac/users/{user_id}/grant und der Benutzersuche, die von der gleichartigen Permissions-Route verwendet wird und bereits 404 zurückgibt. Füge die fehlende Suche vor dem Einfügen des Grants hinzu, damit eine nicht vorhandene UUID 404 statt eines Datenbankfehlers zurückgibt, und entscheide, ob die user_id aus dem Body verworfen oder bei einer Abweichung von der ID im Pfad ein Fehler zurückgegeben werden soll. Führe die RBAC-API-Tests für Benutzer-Grants und Permissions aus, um zu bestätigen, dass der neue 404-Fall funktioniert und bestehende Grants weiterhin funktionieren.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
- Sent:
POST /api/v1/rbac/users/{user_id}/grantwith a valid body, where{user_id}is a well-formed UUID that
belongs to no account. - Comes back: 500 with the generic error body. The grant is inserted without looking the user up, and the database
refuses the row. Nothing is saved. - Expected: 404 "User not found", as
GET /api/v1/rbac/users/{user_id}/permissionsanswers for the same id. - Also: the body's required
user_idis not used (the path's id is); either drop it or refuse a body whose
user_iddiffers from the path, as the counter routes do (#95). - Reproduction (ADMIN):
curl -X POST -H "Authorization: Bearer <ADMIN token>" -H 'Content-Type: application/json' \ -d '{"user_id":"00000000-0000-0000-0000-000000000001","resource":"experiment","actions":["read"]}' \ http://localhost:8000/api/v1/rbac/users/00000000-0000-0000-0000-000000000001/grant
Found by API fuzzing (a local run), reproduced by hand.
- Vorherrschende Sprache
- Python
- Sterne
- 0
- Forks
- 4
- Ø Merge
- 6 Std. 43 Min.
- Gemergte PRs (30 T.)
- 414
Entwicklungsumgebung
- Enthält ein Dockerfile oder eine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
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 Controlvar/controlvar
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Controlvar/controlvar#1813 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 88/100
Controlvar/controlvar#1806 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Dashboard: an archived flag shows Off with an on/off switch the API refusesEvtl. vergeben @amarkanday hat das vor 2 Tagen übernommen. Offenbug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Controlvar/controlvar#1748 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Dashboard: the sequential panel's "Ready to stop" banner shows no sample-ratio-mismatch cautionEvtl. vergeben @amarkanday hat das vor 2 Tagen übernommen. Offenbug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Controlvar/controlvar#1737 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
dashboard: a split URL draft's variant edit shows generic copy when the API refuses itEvtl. vergeben @amarkanday hat das vor 2 Tagen übernommen. Offenbug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
Controlvar/controlvar#1562 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in Controlvar/controlvar
Ähnliche Issues
-
community enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
NVIDIA/auto-ontology#463 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Update Atari link on Gymnasium docs pageEvtl. vergeben @qwist1233-cpu hat das heute übernommen. Offenhelp wanted
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 66/100
Farama-Foundation/Gymnasium#1845 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 91/100
WingedGuardian/GENesis-AGI#4101 ·
Maintainer antworten meist innerhalb von 1 Tag