Centrum zaufania

Krótkie, uczciwe odpowiedzi na pytania, które zada twój zespół ds. bezpieczeństwa.

Publikujemy to, co robimy, i, równie ważne, czego nie robimy. Bez remarketingu skanujących, bez pikseli stron trzecich, bez surowych IP ani agentów użytkownika w naszej bazie danych, nigdy. Głębsze informacje o lokalizacji danych znajdziesz pod /security/; aktualny czas działania pod /status/.

1. Analityka z poszanowaniem prywatności

Zgodnie z ADR-0004 potok skanowań nigdy nie rejestruje adresu IP ani surowego User-Agent. Przy ingresie czytamy CF-IPCountry (kraj) i przepuszczamy UA przez wyrażenie regularne klasy urządzenia (mobile / tablet / desktop / unknown), po czym odrzucamy surowy ciąg. Dane na poziomie miasta to agregowany rollup wypełniany z request.cf.city, bez wiersza per skanowanie, bez identyfikatora umożliwiającego powiązanie. Agregaty krajowe poniżej 5 skanowań łączone w „Other", żeby uniemożliwić re-identyfikację.

2. Zaszyfrowane kopie zapasowe

Każdej nocy o 03:00 UTC oddzielny Worker robi snapshot D1 do R2. Kopie zapasowe są szyfrowane AES-GCM kluczem danych rotowanym KDF opakowanym przez BACKUP_ENCRYPTION_KEY. Każdy bundle zawiera digest SHA-256 + manifest do wykrywania manipulacji (zob. tabela backups). Retencja: 7 lat dla tenantów Pro. Klucz szyfrowania jest trzymany w trzech niezależnych kopiach (sekret Workera, skarbiec 1Password, zapieczętowana offline), utrata wszystkich trzech uczyniłaby historyczne kopie zapasowe nieodwracalne, więc traktujemy go jako pojedynczy punkt operacyjnej prawdy.

3. API Shield + ścisły CSP

Nasza publiczna specyfikacja OpenAPI 3.1 jest przesyłana do Cloudflare API Shield i każde żądanie do /api/* jest walidowane względem niej. Dryf schematów jest eliminowany przez hook post_deploy, który ponownie przesyła specyfikację przy każdym wdrożeniu produkcyjnym. Po stronie front-endu ścisła Polityka Bezpieczeństwa Treści zabrania inline skryptów wszędzie, każda strona odwołuje się do swojego JS przez <script src>, a nasz przedwdrożeniowy make check odmawia dostarczenia strony naruszającej regułę.

4. Dziennik audytu + rejestr GDPR

Każda mutacja (tworzenie/patch/usunięcie kodu, zaproszenie do zespołu, wydanie klucza, zmiana planu, edycja webhooka) zapisuje wiersz tylko do dołączania do audit_log z aktorem, zakresem i znacznikiem czasu, zachowany 180 dni i czyszczony przez sweepera. Rejestr żądań GDPR (gdpr_requests) śledzi każdy eksport / usunięcie / przywrócenie; wiersze przeżywają usunięcie konta (FK ON DELETE SET NULL, email zachowany), żebyśmy mogli udowodnić terminowe honorowanie każdego ustawowego żądania lata po zniknięciu konta.

5. Zabezpieczenia uwierzytelniania

Uwierzytelnianie jest delegowane do wspólnej warstwy tożsamości abundera.ai (EdDSA JWT przez JWKS). Dostępne dla klientów Pro:

  • 2FA (TOTP), RFC 6238 jednorazowe hasła oparte na czasie, dowolna standardowa aplikacja uwierzytelniająca, kody zapasowe wydawane przy rejestracji.
  • SSO SAML 2.0, Okta, Entra ID, JumpCloud, Google Workspace, niestandardowe IdP. Dostępne od Team+ (w zestawie w Agency/Enterprise).
  • Provisionowanie SCIM 2.0, RFC 7643/7644 cykl życia użytkownika + grupy, ograniczony per token, rejestrowany w audycie. Domyślnie wyłączony; włączany per klient.
  • Klucze API, Business+, przechowywane jako sha256(raw); surowa wartość abnd_qrpro_... jest zwracana tylko przy tworzeniu i nigdy więcej.

6. Podprzetwarzający

Krótka lista: Cloudflare (hosting, D1, KV, R2, API Shield), Stripe (płatności), Zoho / ZeptoMail (email transakcyjny), Twilio (weryfikacja telefonu + SMS). Zob. /trust/subprocessors/ dla kanonicznej listy z regionami, kategoriami danych i naszym zobowiązaniem do 30-dniowego powiadamiania o zmianach.

7. Umowa o przetwarzaniu danych

Nasze DPA dostosowane do GDPR (unijne SCC, aneks UK, aneks szwajcarski FADP) jest do pobrania pod abundera.ai/legal/dpa/. Dotyczy automatycznie wszystkich płatnych poziomów, bez osobnego kontrasygnowania, chyba że twój proces zaopatrzenia tego wymaga (podpiszemy na żądanie pod legal@abundera.ai).

8. SOC 2

SOC 2 Type II, w toku, cel Q3 2026. Jesteśmy w fazie ustalania zakresu / planowania okna obserwacji z firmą audytorską bliską Big-4. Do czasu wydania raportu nie będziemy wyświetlać odznaki SOC 2. Jeśli ukończenie SOC 2 jest dziś twardym wymogiem zaopatrzenia dla ciebie, napisz na enterprise@abundera.ai, możemy udostępnić bieżące dowody kontroli, nasz projekt opisu systemu i przewidywaną datę atestacji na NDA.

9. Bez pikseli stron trzecich, nigdy

To jest ważna obietnica i granica produktu, nie domyślna, którą moglibyśmy cicho zmienić. Nie wstrzykujemy Google Analytics, Google Tag Manager, Meta Pixel, TikTok Pixel, LinkedIn Insight, Hotjar, FullStory ani żadnego innego zewnętrznego trackera, ani do naszych odpowiedzi przekierowań, ani do naszych hostowanych stron docelowych, ani do powierzchni panelu, które widzą twoi skanujący. Twoi skanujący nigdy nie są remarketingowani. Jeśli potrzebujesz atrybucji opartej na pikselach na własnym celu, dodaj własne parametry UTM (lub piksel) do docelowego URL; zostajemy poza pętlą. Samo przekierowanie to 302 z naszego workera do twojego URL, nic innego nie działa.

10. Odpowiedzialne ujawnianie

Znalazłeś coś? Zacznij od /.well-known/security.txt dla aktualnego kontaktu, klucza PGP i zakresu. Napisz na security@abundera.ai, potwierdzimy w ciągu 24h (dni robocze), dokonamy triażu w ciągu 72h i skoordynujemy z tobą naprawę + ujawnienie. Badacze zgłaszający w dobrej wierze otrzymują publiczne podziękowanie pod abundera.ai/security/thanks/ po wdrożeniu poprawki.

11. Status + czas działania

Aktualny status, stan komponentów i historia incydentów są pod /status/. Ścieżka przekierowań jest monitorowana co 5 minut przez zewnętrzny Worker; zdegradowane lub niedziałające komponenty są odzwierciedlane na stronie statusu w ciągu jednego cyklu odpytywania.