Wersja testowa. PiviKernel nie jest jeszcze dostępny komercyjnie — rejestracja i sprzedaż są wyłączone.

Bezpieczeństwo

Każde zabezpieczenie ma status i wskazany sposób sprawdzenia. Opisujemy tylko to, co jest zaimplementowane, oraz to, co jeszcze przed nami.

  1. Siećaplikacja i Git tylko na 127.0.0.1
  2. Tożsamośćhasło + TOTP, tokeny agentów
  3. Uprawnieniakonto → projekt → zakres tokenu
  4. Daneszyfrowanie sekretów, CSRF, CSP
  5. Operacjeaudyt, kopie, rollback

Zabezpieczenia i ich weryfikacja

Tożsamość

  • Dwuskładnikowe logowanie właścicieladziała

    Hasło (scrypt) i kod TOTP (RFC 6238) z blokadą ponownego użycia kodu. 8 jednorazowych kodów odzyskiwania.

    Weryfikacja: testy jednostkowe (wektory RFC) i E2E

  • Ochrona sesjidziała

    Sesje po stronie serwera, w bazie tylko skrót identyfikatora. 30 min bezczynności, nowy identyfikator po MFA, SameSite=Strict.

    Weryfikacja: tests/unit/http.test.ts

  • Ochrona przed zgadywaniemdziała

    Limit prób na adres IP, blokada konta na 15 minut po 5 błędach, limit prób kodu MFA.

    Weryfikacja: tests/e2e

Uprawnienia

  • Izolacja kontdziała

    Każdy rekord należy do konta; sprawdzenie konta jest pierwszym warunkiem każdej operacji. Brak dostępu wygląda jak brak zasobu.

    Weryfikacja: tests/unit/security.test.ts

  • Najmniejsze uprawnienia agentówdziała

    Token = lista zakresów ∩ dostęp do wskazanych projektów (odczyt/zapis). Wygasanie i natychmiastowe odwołanie.

    Weryfikacja: tests/unit/kernel.test.ts, tests/e2e

  • Brak zdalnej powłokidziała

    MCP i API udostępniają wyłącznie operacje silnika. Nie ma narzędzi do poleceń systemowych ani odczytu sekretów.

    Weryfikacja: przegląd kodu src/api/ops.ts

Dane

  • Sekrety zaszyfrowanedziała

    Tokeny Google, klient OAuth i klucz API: AES-256-GCM. Hasła i tokeny agentów wyłącznie jako skróty.

    Weryfikacja: tests/unit/crypto.test.ts, google.test.ts

  • Formularze i nagłówkidziała

    Token CSRF i kontrola Origin, Content-Security-Policy bez skryptów zewnętrznych, nosniff, zakaz osadzania w ramkach.

    Weryfikacja: tests/unit/http.test.ts

  • Kontrola indeksowaniadziała

    noindex w treści i nagłówku X-Robots-Tag do decyzji właściciela. Panele i API pozostają prywatne zawsze.

    Weryfikacja: test automatyczny polityki

Operacje

  • Dziennik działań administracyjnychdziała

    Logowania, nieudane próby, zmiany dostępu, tokeny i integracje zapisywane z czasem i adresem IP.

    Weryfikacja: panel: Dziennik

  • Kopie i odtworzeniedziała

    Codzienna kopia i kopia przed każdym wdrożeniem: baza, repozytoria, konfiguracja. Odtworzenie ćwiczone na zapasowych portach.

    Weryfikacja: scripts/restore-drill.sh

  • Szyfrowanie kopii poza serweremdziała

    Szyfrowanie kluczem publicznym (X25519 + AES-256-GCM); serwer nie ma klucza do odczytu. Kopie pobierane poza serwer przy każdym wdrożeniu.

    Weryfikacja: scripts/backup-verify.sh: odszyfrowanie i odtworzenie kopii z VM

Sieć

  • Usługi tylko lokalniedziała

    Aplikacja i Git nasłuchują wyłącznie na 127.0.0.1. Dostęp do podglądu przez tunel SSH.

    Weryfikacja: weryfikacja gniazd na serwerze

  • Publiczny HTTPSplanowane

    TLS przez zewnętrzny reverse proxy, HSTS, cookies Secure. Uruchomienie po decyzji o publicznym starcie.

    Weryfikacja: —

Twoje dane

Kod, zadania i historia są w bazie i repozytoriach na Twojej maszynie.

Dane z Google Analytics i Search Console nie są kopiowane. PiviKernel przechowuje zaszyfrowany token i pobiera raport w chwili zapytania.

Po odłączeniu konta Google PiviKernel usuwa token z bazy i wysyła żądanie jego odwołania do Google. Panel informuje, czy Google potwierdziło odwołanie.

Kopie zapasowe powstają codziennie i przed każdym wdrożeniem. Wersja przeznaczona do przechowywania poza serwerem jest szyfrowana kluczem publicznym właściciela — serwer nie ma klucza, który pozwala ją odczytać.

Czego PiviKernel nie robi

  • Nie prosi o hasło do konta Google ani innych usług — tylko o zgodę OAuth.
  • Nie kopiuje danych z Google Analytics i Search Console — pobiera raport w chwili zapytania.
  • Nie wykonuje poleceń systemowych na żądanie agenta.
  • Nie publikuje niczego w wyszukiwarkach bez decyzji właściciela.