Deleting a resource leaves the policies granted on it
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 62/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- Active
- Stack technique
- go
- Domaine
- authorization, backend
Piste de recherche
Start with Delete and Purge in core/resource/service.go, which remove the resource's relations and row but never touch the policy service. Reproduce the steps with CreatePolicy, DeleteProjectResource, then ListPolicies and GetPolicy, and check the policy rows and role binding relations that remain. Done means that deleting a resource, directly or through the project delete cascade, also removes its policies, and ListPolicies no longer returns them.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Deleting a resource removes its SpiceDB relations and soft-deletes its row. Policies granted on the resource are not deleted. Their rows and their two role binding relations stay, and ListPolicies still returns them. They no longer grant anything, because the link from the resource to the role binding is gone.
The project delete cascade purges project resources the same way, so policies on them stay too.
Steps
- Create a resource and grant a user a role on it with
CreatePolicy. - Delete the resource with
DeleteProjectResource. ListPoliciesfor the user still returns the policy, andGetPolicystill finds it.
Code
Delete and Purge in core/resource/service.go delete the resource's relations and row, but never call the policy service.
Expected
Deleting a resource also deletes the policies on it.
- Langage dominant
- Go
- Étoiles
- 343
- Forks
- 48
- Merge moyen
- 2 j 9 h
- PR mergées (30 j)
- 48
Préparer son environnement
- Fournit un Dockerfile ou un fichier Docker Compose
- Propose un modèle de pull request
- Aucun guide de contribution
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 raystack/frontier
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 42/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 3/5 1-2 jours Accessibilité débutants 55/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 3/5 1-2 jours Accessibilité débutants 62/100
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de raystack/frontier
Issues similaires
-
clawsweeper:fix-shape-clear clawsweeper:queueable-fix clawsweeper:source-repro impact:session-state issue-rating: 🦞 diamond lobster no-stale P2
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
openclaw/wacli#503 · 1 commentaire · 1 réaction ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 81/100
apache/rocketmq-dashboard#6895 ·
Les mainteneurs répondent en général sous 3 jours
-
agent-butler-finding chore
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
jordansmall/spindrift#5466 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 92/100
open-telemetry/opentelemetry-go-compile-instrumentation#1507 ·
Les mainteneurs répondent en général sous 3 jours
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 87/100
777genius/agent-notifications#490 ·
Les mainteneurs répondent en général sous 1 jour