MB-R094
No missing function-level authorization evidence was detected in sensitive custom controllers or APIs. Object-level authorization requires separate verification.
Custom Magento controllers, REST routes, GraphQL resolvers, and admin actions can accidentally expose sensitive data when they rely only on hidden UI links or route obscurity. Attackers can call endpoints directly.
Explicit authorization checks ensure that only allowed users, roles, or customers can read data or change state.
grep -RIE "class .*Controller|webapi.xml|schema.graphqls" app/code 2>/dev/null
# Check for ACL, customer session, ownership, or authorization guard usage
public function execute() {
return $this->json($this->orderRepository->get($orderId));
}
# No auth or ownership check → FAIL
if (!$this->authorization->isAllowed("Vendor_Module::orders")) {
return $this->deny();
}
# Authorization checked before data access → PASS