Lekcja 22 · krok 2około 30 min pracy

Przegląd allowlist wszystkich kanałów

Ćwiczenie do lekcji Konfiguracja kanałów: allowlisty, dmPolicy i wzmianki. Teorię masz za sobą — teraz wykonaj to na własnym agencie albo w dowolnym czacie z modelem. Bez tego kroku kurs zostaje wiedzą, która nie zmienia niczego w Twojej pracy.

Co powinieneś już wiedzieć z teorii

  • W rdzeniu instalacji siedzą trzy kanały: WebChat, Telegram i iMessage — do żadnego z nich niczego nie instalujesz. Reszta komunikatorów to pluginy wymagające restartu Gateway po instalacji.
  • dmPolicy przyjmuje pairing (domyślnie), allowlist, open i disabled; groupPolicy przyjmuje open, allowlist (domyślnie) i disabled. Tryb open wymaga jawnego wpisu „*” na allowliście, inaczej wiadomości dalej są blokowane.
  • W grupach obowiązuje groupAllowFrom, allowFrom dotyczy wyłącznie DM-ów. Zatwierdzone parowanie nie daje dostępu do grup, a odpowiedź na wiadomość bota nie omija groupAllowFrom.
  • Kolejność sprawdzania jest trzystopniowa: groupPolicy, potem allowlisty grup (groups i groupAllowFrom), na końcu bramka wzmianki z requireMention domyślnie ustawionym na true.

Co masz zrobić

Weź swoją instancję i przejdź przez każdy podłączony kanał po kolei. Cel: skończyć z listą, w której każda pozycja jest identyfikatorem konkretnej osoby albo pokoju, a nie skutkiem tego, że kiedyś coś było łatwiej otworzyć niż wpisać. Zacznij od wypisania faktycznej konfiguracji, bo pamięć o tym, co ustawiałeś, bywa optymistyczna.

Wklejam wynik komendy openclaw config get channels z mojej instancji OpenClaw oraz listę kanałów, w których agent ma pracować, z informacją, czy w danym pokoju są osoby spoza firmy. Sprawdź cztery rzeczy. Po pierwsze: czy gdziekolwiek występuje wpis „*” i w jakim kontekście — przy każdym wystąpieniu napisz, kto realnie zyskuje dostęp. Po drugie: czy polityki DM i grup są ustawione spójnie z tym, co opisałem. Po trzecie: czy allowlisty Slacka używają identyfikatorów kanałów, czy nazw. Po czwarte: w których pokojach requireMention powinno zostać włączone, a w których nie ma sensu. Odpowiedz tabelą kanał po kanale i listą konkretnych zmian do wprowadzenia, bez ogólnych rad o bezpieczeństwie.

Gotowe, gdy:

Gdzie to się najczęściej sypie

Zanim uznasz ćwiczenie za zrobione, sprawdź, czy nie wpadłeś w któreś z tych miejsc. Każde widzieliśmy więcej niż raz.

  • Wpis „*” dodany na czas testów i nieusunięty po nich. Nic nie sygnalizuje problemu, więc kanał zostaje otwarty tygodniami — a agent ma w kontekście dokumenty firmy i dostęp do skrzynki.
  • Allowlista Slacka pisana nazwami kanałów z hashem zamiast identyfikatorami C12345678. Przy groupPolicy ustawionym na allowlist klucze nie pasują, nic się nie wywala i przez pół dnia szukasz błędu w scope'ach.
  • Mylenie allowFrom z groupAllowFrom. Agent zachowuje się poprawnie w DM-ach, a w grupie odpowiada osobom spoza listy, bo w grupach obowiązuje inny klucz.
  • Skopiowana konfiguracja z kanału, który działa, do kanału, który dopiero startuje. Polityki mają inne domyślne wartości i inne formaty identyfikatorów, a nadpisania z channels.<kanał>.accounts.<accountId> potrafią cicho wygrać z tym, co właśnie edytujesz.

Nie masz jeszcze na czym ćwiczyć?

Agent w chmurze EU startuje w około minutę. Pierwsza subskrypcja pakietu Premium ma 5 dni za darmo, a kurs czytasz dalej niezależnie od tego.

Zobacz plany