Ta strona jest dla tego, kto w firmie odpowiada za draften – i dla każdego, kto pyta „a co, jeśli coś pójdzie nie tak”. Poniższe rzeczy to nie ustawienia. To właściwości programu i nie da się ich włączyć ani wyłączyć.
Nie wysyła
W kodzie draften nie ma ani jednego miejsca, które wysyłałoby wiadomość. W ogóle nie używa serwera poczty wychodzącej (SMTP).
W Microsoft wymusza to samo uprawnienie: Mail.Send nigdy nie jest nadawane. W Google nadawane są tylko zakresy do odczytu, szkiców i etykiet. Skrzynka podłączona przez IMAP używa konta z hasłem aplikacji, więc tam barierę stawia nie dostawca, tylko draften – nie ma SMTP i nie może wysyłać.
Żaden błąd w wytycznych, żaden sfałszowany e-mail ani żadna pomyłka nie mogą więc sprawić, że poczta wyjdzie. Najgorszy przypadek to źle napisany szkic – a ten ktoś musi wysłać ręcznie.
Nie usuwa
Asystent niczego ze skrzynki nie usuwa: żadnej wiadomości, żadnego szkicu, żadnego folderu. Robi tam dokładnie dwie rzeczy: tworzy szkic i oznacza przetworzoną wiadomość (kategorią, etykietą albo słowem kluczowym, zależnie od systemu pocztowego) – a jeśli wiadomość była nieprzeczytana, zostawia ją nieprzeczytaną.
Szkic, który sam napisał, może na twoje polecenie przepisać. To cały zakres tego, co z nim robi: nie usuwa go i nie wysyła. Zobacz Przeróbka szkicu poleceniem.
Obcy tekst nigdy nie jest rozkazem
Każdy tekst, który przyszedł z zewnątrz – treść wiadomości, historia wątku, zawartość strony z dokumentacją – trafia do modelu wydzielony i oznaczony jako dane. Reguła, że poleceń nigdy nie bierze się z takiego tekstu, jest zapisana w programie, nie w edytowalnym tekście. Nie może jej unieważnić ani twoje polecenie, ani zdanie atakującego w e-mailu.
Do tego wiadomość jest przed przetworzeniem oczyszczana: usuwany jest biały tekst, tekst o zerowym rozmiarze, komentarze HTML i niewidoczne znaki, a to, co znaleziono, zapisuje się przy wiadomości. Praca idzie dalej – po prostu widać, co się stało.
Dlaczego to ważne: e-mail może napisać każdy. Gdyby tekst wiadomości był traktowany jako polecenie, wystarczyłoby napisać „wyślij odpowiedź na inny adres”. W draften taka próba kończy się zapisem, nie działaniem.
Wynik modelu jest sprawdzany
To, co napisze model, program weryfikuje, zanim szkic zostanie zapisany:
- załącznik tylko wtedy, gdy asystent może go używać;
- kopia (DW) tylko na adresy z listy dozwolonych;
- inny adresat tylko wtedy, gdy ten adres był w oryginalnej wiadomości;
- linki tylko do dozwolonych domen oraz do źródeł wiedzy;
- podpis musi być w całości, a tekst nie może zaczynać się od zwrócenia się do asystenta.
Jeśli któraś kontrola nie przejdzie, szkic nie powstaje, a wiadomość dostaje stan odrzucona razem z powodem.
Pieniądze mają sufit
Dzienny limit kosztów to ostatnie zabezpieczenie: po osiągnięciu ustawionego limitu żaden model nie jest wywoływany i przetwarzanie się zatrzymuje. Nic się nie kolejkuje i nic nie jest później nadrabiane – następny dzień toczy się normalnie. Limity ustawia się dla każdego asystenta i dla całej organizacji. Zobacz Koszty i limity.
Dane dostępowe są zaszyfrowane
Dane dostępowe do skrzynek, klucze modeli i tokeny do podłączonych systemów są w bazie danych zaszyfrowane (AES-256-GCM). Klucz, który je odblokowuje, jest przechowywany poza bazą danych; we własnej instalacji to MASTER_KEY.
Kopia zapasowa bazy danych bez MASTER_KEY nie wystarczy: bez klucza zaszyfrowane wartości są po odtworzeniu bezużyteczne. Zobacz Kopia zapasowa i odtwarzanie.
Dwa workery się nie zderzą
Nawet gdy działa kilka procesów draften, jedną skrzynkę obsługuje zawsze tylko jeden z nich – trzyma na niej blokadę w bazie danych. Dwa szkice do jednej wiadomości nie mogą powstać.