# Wielodostępność i izolacja SUMMARY: Jak Synapse izoluje dane między użytkownikami i umysłami — wyjaśnione granice bezpieczeństwa. Wielodostępność i izolacja Synapse jest wielodostępny: wielu użytkowników, każdy z wieloma umysłami, w pełni odizolowanych od siebie. Ta strona wyjaśnia model izolacji. Hierarchia dzierżawców [CODE BLOCK] Poziomy izolacji Poziom 1: Izolacja użytkownika Każde konto użytkownika jest izolowane. Alice nie może: - Widzieć umysłów Boba - Dostać się do wspomnień Boba (nawet ze swoim JWT) - Wylistować informacji o koncie Boba Wymuszane przez: kolumna we wszystkich tabelach, JWT zawiera , wszystkie zapytania filtrują po . Poziom 2: Izolacja umysłu W obrębie użytkownika każdy umysł jest izolowany. Umysł A nie może: - Widzieć wspomnień umysłu B - Dostać się do zadań, czatu, skryptów umysłu B Wymuszane przez: kolumna we wszystkich tabelach danych, Mind Key zawiera , wszystkie zapytania filtrują po . > [!CRITICAL] > Izolacja Mind Key jest główną granicą bezpieczeństwa. Wyciekły Mind Key daje > pełny dostęp do danych tego umysłu — ale TYLKO tego umysłu. Tokeny autoryzacyjne | Token | Zakres | Do czego ma dostęp | |-------|-------|-------------------| | Mind Key | Pojedynczy umysł | Tylko dane tego umysłu | | JWT | Konto użytkownika | Zarządzanie kontem (tworzenie/lista/usuwanie umysłów) | | Computer Token | Pojedynczy komputer | Polecenia tego komputera | Dostęp między umysłami W obrębie tego samego użytkownika Użytkownik ma dostęp do wszystkich swoich umysłów przez JWT (np. wylistowuje wszystkie). Aby jednak odczytać/zapisać dane pamięci, potrzebny jest konkretny Mind Key. Między użytkownikami Użytkownicy nie mają dostępu do danych innych — CHYBA że jawnie udostępnią umysł przez Sharing API: [CODE BLOCK] Po udostępnieniu Bob ma dostęp do umysłu A przez swój JWT (tylko do odczytu, jeśli ). Granice bezpieczeństwa [CODE BLOCK] Typowe wzorce wielodostępności Wzorzec 1: pojedynczy użytkownik, pojedynczy umysł Najczęstszy dla indywidualnych użytkowników agentów LLM. - 1 konto użytkownika - 1 umysł - 1 Mind Key - Wszystkie wspomnienia w jednym zakresie Wzorzec 2: pojedynczy użytkownik, wiele umysłów Dla użytkowników z wieloma kontekstami (praca, życie prywatne, projekty). - 1 konto użytkownika - N umysłów (np. „work", „personal", „project-x") - N Mind Key - Każda sesja LLM używa jednego Mind Key Wzorzec 3: współdzielony umysł zespołu Dla zespołów współpracujących nad projektem. - Jeden użytkownik tworzy umysł (otrzymuje Mind Key) - Twórca udostępnia członkom zespołu przez JWT - Wszyscy członkowie zespołu mają dostęp przez JWT (lub współdzielony Mind Key) > [!WARNING] > Współdzielenie Mind Key daje pełny dostęp do odczytu i zapisu. Do współpracy > zespołu preferować Sharing API (oparte na JWT) zamiast bezpośredniego > współdzielenia Mind Key. Wzoczec 4: dostawca SaaS Dla aplikacji osadzających Synapse jako warstwę pamięci. - Każdy klient = 1 konto użytkownika - Każdy projekt klienta = 1 umysł - Aplikacja przechowuje Mind Key per klient/projekt - Pełna izolacja między klientami Weryfikacja izolacji Test: Mind Key nie ma dostępu do innych umysłów [CODE BLOCK] Test: JWT nie może odczytać danych pamięci bezpośrednio [CODE BLOCK] Najlepsze praktyki > [!TIP] > - Używać jednego umysłu na projekt/kontekst — izolacja jest sojusznikiem > - Nigdy nie współdzielić Mind Key — zamiast tego używać Sharing API > - Rotować Mind Key w razie kompromitacji (usunąć umysł, utworzyć nowy) > - Audytować współdzielone umysły — okresowo przeglądać > - Używać JWT dla interfejsu ludzkiego — nigdy nie udostępniać Mind Key użytkownikom końcowym Następne kroki - Autoryzacja - Mind Key vs JWT - Architektura