Нет реальной причины иметь иерархию разрешений (я думаю, вы можете немного смешивать аутентификацию с ACL, что очень легко сделать).
Ion_auth настроен таким образом, чтобы пользователь мог иметь несколько групп - так, например, у всех ваших пользователей может быть запись «Участники», а затем отдельная запись для каждой подгруппы.
Каждая точка входа контроллера просто говорит, в каких группах разрешено или нет - она обрабатывает их одинаково.
также вы можете динамически отображать данные в зависимости от того, к каким группам принадлежит пользователь.