Workery i mosty do hosta
Każda usługa, z którą rozmawia Claude (Slack, GitHub, SharePoint, twoje lokalne pliki biurowe), działa za własnym workerem: małym kontenerem stworzonym do jednego zadania, który przechowuje wyłącznie te dane uwierzytelniające, jakich to zadanie potrzebuje. Claude nigdy nie wywołuje usługi bezpośrednio. Przechodzi zamiast tego przez Tool Gateway, który kieruje każde żądanie do właściwego workera, a sam nie trzyma ani jednego tokena. Błąd w jednym workerze odsłania tylko usługę obsługiwaną przez ten worker. Część workerów nie dostaje w ogóle żadnych danych uwierzytelniających ani dostępu do sieci, bo ich zadanie nigdy tego nie wymaga.
Jeden worker, jedno zadanie, jeden zestaw danych uwierzytelniających
Dział zatytułowany „Jeden worker, jedno zadanie, jeden zestaw danych uwierzytelniających”Każdy worker montuje pod /tokens, w trybie tylko do odczytu, wyłącznie tokeny własnej usługi. Jak obsługiwane są dane uwierzytelniające opisuje, gdzie te pliki leżą i jak tam trafiają. Worker, który żadnych nie potrzebuje, taki jak wbudowany worker do plików biurowych, ma pusty zestaw danych uwierzytelniających i w ogóle nie ma punktu montowania /tokens.
Najlepiej widać zasięg tej izolacji na przykładzie workera do plików biurowych. Czyta, zapisuje i konwertuje pliki Word, Excel, PowerPoint i PDF, a więc wykonuje zadanie, które dotyka niezaufanych formatów i od dawna bywa celem złośliwych dokumentów. Nie ma żadnych danych uwierzytelniających do usług. Podłącza się jedynie do wydzielonej sieci wewnętrznej, pozbawionej trasy do bramy, więc nawet w pełni przejęty parser nie dosięgnie internetu.
Jego jedynym łącznikiem z twoim komputerem jest przestrzeń robocza projektu, zamontowana w trybie do odczytu i zapisu. Każdą ścieżkę, do której sięga, sprawdza względem tego punktu montowania, a wynik odkłada w osobnym folderze, zamiast nadpisywać to, co znajdzie po drodze.
Mosty do hosta: wąska droga powrotna do twojego komputera
Dział zatytułowany „Mosty do hosta: wąska droga powrotna do twojego komputera”Niektóre funkcje potrzebują połączenia w drugą stronę: to usługa sięga do twojego komputera, a nie Claude do usługi. Speedwave nazywa to mostem do hosta. Wbudowanym przykładem jest sparowanie Claude Code z twoim lokalnym edytorem, którym zajmuje się most IDE. Na macOS nasłuchuje on na loopbacku, 127.0.0.1. Na Windowsie nasłuchuje za to na adresie IP adaptera WSL, ponieważ tryb mirrored networking w WSL2 psuje dostępność loopbacka z wnętrza kontenerów. Tak czy inaczej most jest dostępny tylko z hosta i nigdy z twojej sieci lokalnej.
Most zapisuje dane połączenia do pliku blokady, który jest montowany w kontenerze w trybie tylko do odczytu. Claude Code odczytuje z niego port oraz token uwierzytelniający sesji, dzięki czemu most niczego nie wystawia w sieci. Token powstaje od nowa przy każdej sesji, jest sprawdzany w stałym czasie i nigdy nie trafia do logów. Plik blokady i jego katalog nadrzędny należą wyłącznie do właściciela, więc inne konto na tym samym komputerze nie zdoła go odczytać.
Workery przypisane do poszczególnych usług oraz wąskie mosty do hosta sprawiają, że włączanie kolejnych integracji nie poszerza zakresu, do którego dosięgnąć może pojedynczy przejęty element.