a4a8f9a4eb
index(), cmd() and list() were accessible to any logged-in user. The navigation menu already restricts visibility to admins, but the routes themselves were unprotected — any authenticated user who knows the URL could execute occ commands or list all available commands. Fix: inject IGroupManager + IUserSession, add requireAdmin() helper, call it at the start of all three public methods. Matches the pattern already used in DbController. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>