Performance: Object-level permissions concept
MEDIUM IMPACT
This concept affects server response time and client perceived latency by controlling access checks at a fine-grained level.
permitted_ids = get_permitted_object_ids(user, objects) for obj in objects: if obj.id in permitted_ids: display(obj)
for obj in objects: if not user.has_perm('view_obj', obj): continue display(obj)
| Pattern | Database Queries | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Per-object permission check in loop | N permission queries | 0 | 0 | [X] Bad |
| Batch permission check before loop | 1 permission query | 0 | 0 | [OK] Good |