Removing an org member leaves them as owner of resources they created

Ouverte
#1,992 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

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
55/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
go

Piste de recherche

Start with cascadeRemovePrincipal in core/membership/org.go, which already deletes the removed member's policies and group relations but not their owner relations on resources. Reproduce with CreateProjectResource, RemoveOrganizationMember, then CheckFederatedResourcePermission for update. Done when a removed member's owner relations are revoked and the update check returns false.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

When a member is removed from an organization, Frontier deletes their policies in the org. It does not delete the owner relation on resources they created. A resource's permissions include owner, so the removed member can still update and delete those resources.

This applies to project resources, and to organization resources once #1987 lands.

Steps

  1. Give an org member a role on a project that lets them create resources, such as app_project_owner.
  2. The member creates a resource with CreateProjectResource.
  3. Remove the member with RemoveOrganizationMember.
  4. Check update on the resource for that user with CheckFederatedResourcePermission. It returns true.

Code
cascadeRemovePrincipal in core/membership/org.go deletes the member's policies and group relations, but not their owner relations on resources.

Expected
A removed member has no access to the org's resources.

Langage dominant
Go
Étoiles
344
Forks
48
Merge moyen
2 j 15 h
PR mergées (30 j)
58

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

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de raystack/frontier

Toutes les issues de raystack/frontier

Issues similaires

Plus d'issues Go

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.