Promotion des Portes sur la politique du propriétaire, rendre idémpotent, ajouter son inverse

FeatureSecurityService
Expédié
11 août 2026 à 01:16 UTC
Auteur
Kamo
Commite
69116e8

La promotion d'un membre à payer pour lui-même était inconditionnelle, à sens unique et peu sûre à répéter. Il refuse maintenant quand la politique de l'organisation dit que l'organisation paie pour Tout le monde - auparavant le seul contrôle sur l'auto-paiement était l'irréversibilité du geste lui-même. Elle est idempotente. La promotion du même membre a deux fois inséré un deuxième compte et une deuxième ligne AccountMember, en déclenchant l'unique sur member-id et en répondant à 500; un double-clic, un réessai après un blip de réseau, ou un propriétaire re-réalisant le flux pour déplacer plus de licenciés tout cela. Il réutilise désormais le compte et l'abonnement Un membre a déjà été transféré et continue à le transférer. DemoteBillingOwner est l'inverse qui n'a jamais existé. Propriétaire ayant promu quelqu'un ne pourrait pas le défaire, et si ce membre est parti, Compte tenu des sièges destinés à l'organisation sans aucun moyen de récupérer eux. Les titulaires de licence reviennent sur l'abonnement de l'organisation et le payeur autonome est dévalorisé; leur compte et leurs méthodes de paiement sont laissées seules, parce que la récupération des sièges dont dépend l'organisation est l'entreprise du propriétaire et la suppression de l'historique de facturation de quelqu'un ne l'est pas. L'appariement est plutôt sur l'utilisateur partagé que le membre id, puisque la promotion reflète le membre sur l'ordre de niveau supérieur. Corrige également l'encliquetage du jeu, qui était déjà FAILING sur le plan principal avant cette fin. La construction de SecurityService était donc rouge et rien ne se déployait. Le balayage ne pouvait pas voir deux vrais gardes: extractUserId lit userID hors de la et requireTopLevelOwner passe par CallerSessionResolver et plus nécessite que l'appelant possède l'ordre supérieur. Enseigner à la fois laisser 25 rugissants les rubriques de base doivent être supprimées, ce qui est exactement ce que le fichier demande - fixer un le critère d'évaluation signifie supprimer sa ligne, et c'est ce qui fait chuter le nombre. runSweep est basé sur la base de sa raison réelle: interne-auth gardé à travers un paramètre d'en-tête que le body-scan ne peut pas atteindre.

Tous les changements

Comme ce que tu vois expédier ?

Chacune de ces mises à jour atterrit automatiquement dans votre espace de travail. Commencez gratuitement et regardez-le grandir semaine après semaine.

Commencez gratuitement pour toujoursPrix de visualisation