Quoteund ich will auch gar nicht widersprechen
nur keine Angst

Wenn falsch, dann falsch und das darf man auch sagen
zur GROUP_ID
Ja, da muß ich mich wohl korrigieren, was die Session-Variablen betrifft
GROUP_ID wurde gestrichen aus den Session-Variablen ab Version WB 2.13.4. Habe die Hilfe-Seite einen entsprechenden Hinweis verpasst. Analog dem Hinweis zur Variable GROUP_NAME, der, wie richtig bemerkt, einen Array enthält mit den Gruppennamen zu den in GROUPS_ID genannten Gruppen.
zu deinem Vorhaben... Sieh es nicht als Vorgabe, sondern eher als Tip. Du wirst mit etwas Praxis schnell merken, das es so auch viel leichter ist, vorallem aber sicherer.

Bin ich, als Frontend-User, erstmal auf der Ebene, das ich Zugriff auf die Session-Variablen habe, was über Cross-Site-Scripting ja kein großes Problem wäre, dann kann ich diese Variablen nicht nur lesen und nutzen, sondern eben auch verändern. Und weil ich an dieser Stelle ja schon eingeloggt sein muß (sonst funktionieren die Session-Variablen ja nicht), kann ich mich dann auch leicht zum Admin machen
mal ein grundsätzlicher Ablauf
1. zuerst prüfen, ob der User auch tatsächlich angemeldet ist mit is_authenticated(), wenn nicht: exit()
2. Wenn angemeldet, hätte er Zugriffsrechte mit get_permission(), wenn nicht: exit()
3. ami_group_member() prüft, ob der User Mitglied der genannte(n) Gruppe(n) ist, damit lassen sich dann Inhalte schalten oder Menüpunkte
andere interessante Funktionen wären z.b.
get_page_permission() - hat der angemeldete User Rechte zum Besuch dieser Seite?
getGroupId() - die aktuelle Gruppen-ID des Users