fix removing member without permission (#16332)

Co-authored-by: crazywoola <427733928@qq.com>
This commit is contained in:
Linh Nguyen
2025-03-20 16:17:54 +07:00
committed by GitHub
parent 437dcbdd68
commit 8996c1da29

View File

@@ -785,9 +785,11 @@ class TenantService:
@staticmethod
def remove_member_from_tenant(tenant: Tenant, account: Account, operator: Account) -> None:
"""Remove member from tenant"""
if operator.id == account.id and TenantService.check_member_permission(tenant, operator, account, "remove"):
if operator.id == account.id:
raise CannotOperateSelfError("Cannot operate self.")
TenantService.check_member_permission(tenant, operator, account, "remove")
ta = TenantAccountJoin.query.filter_by(tenant_id=tenant.id, account_id=account.id).first()
if not ta:
raise MemberNotInTenantError("Member not in tenant.")