dash-b · Funkcje · Łączenie

Jedno wejście, cokolwiek łączysz.

Baza danych, którą prowadzisz, plik, który wrzucasz, mały skrypt na własnym serwerze. Wszystkie są wpisami w tej samej tabeli, wszystkie rejestruje się tak samo, a dodanie nowego rodzaju to wpis, a nie nowy ekran.

Z czym możesz się połączyć już dziś

Dwa kształty i plik

Baza danych, bezpośrednio

PostgreSQL, MySQL albo MongoDB. Host, port, baza, użytkownik, hasło, TLS domyślnie włączony. Tylko do odczytu — nic, co robi dash-b, nie może zapisywać w twoich danych produkcyjnych.

Łącznik na twoim własnym serwerze

Jeden plik PHP, który wgrywasz obok bazy. dash-b otrzymuje adres i sekret podpisujący, i nic więcej: bez hosta, bez nazwy użytkownika, bez hasła. To jedyne źródło, które może zapisywać, i właśnie dlatego.

Plik

Upuść arkusz kalkulacyjny albo plik CSV na tablicę, a stanie się prawdziwą tabelą, z kolumnami odczytanymi z pliku, a nie odgadniętymi przez ciebie. Bez rejestracji, bez poświadczeń, bez niczego do skonfigurowania.

Co dzieje się z hasłem

Sekret nigdy nie jest ci pokazywany ponownie

Gdy poświadczenie zostanie zapisane, formularz, który je zapisał, nie może go ponownie wyświetlić. To nie jest ustawienie — to osobny fragment kodu, inny niż ten, który wypełnia formularze zapisanymi wartościami, celowo utrzymany osobno, żeby „pokaż zapisaną wartość” nie było jednym przełącznikiem od wpisania hasła do bazy danych w stronę, którą można zrzucić ekranem, udostępnić przez udostępnianie ekranu albo odczytać z DOM.

Łącznik istnieje po to, żeby najsilniejszy sekret, jaki masz, nigdy nie opuścił twojego własnego serwera.

Poświadczenia twojej bazy pozostają w pliku konfiguracyjnym na maszynie, która już je miała. dash-b przechowuje adres i podpis, a żadne z nich nie otwiera twojej bazy nikomu innemu.

Logowanie do czegoś innego

Dlaczego nie ma tu pola logowania

Łączenie konta — w odróżnieniu od bazy danych — oznacza własną stronę logowania dostawcy, w osobnym oknie, oraz pośrednika, który przechowuje sekret aplikacji, tak żeby dash-b nigdy go nie posiadał i nigdy nie widział twojego hasła.

Nie dzieje się to wewnątrz strony i to nie jest kwestia preferencji. Google i Facebook oba odmawiają osadzania w ramce, celowo: formularz logowania wyświetlony w cudzym dokumencie jest nieodróżnialny od strony phishingowej, a zbudowanie takiego oznaczałoby wysłanie pustego prostokąta.

Katalog jest pod nie zbudowany, a mechanizm jest na miejscu; same połączenia nie są jeszcze otwarte, więc projektant nie zaoferuje ci przycisku, który zawiedzie po tym, jak go wybierzesz. Gdy się otworzą, pojawią się jako wpisy w tej samej tabeli co wszystko powyżej.

Dwie rzeczy przypięte na próbę

Testy, którym nie wolno się cofnąć

  • Żaden sekret nie jest wyświetlany z powrotem. Test wstawia znacznik do każdego pola każdego dostawcy, a następnie szuka go na wyrenderowanej stronie.
  • Odpowiedź logowania jest uznawana tylko wtedy, gdy wszystko się w niej zgadza — skąd przyszła, jej kształt, jednorazowa wartość, którą musi nieść, i jej wiek — i wszystko to jest weryfikowane, zanim odczyta się choć jedno jej pole. W danym momencie trwa dokładnie jedno logowanie, więc na stare nie może odpowiedzieć późniejsza wiadomość.

Oba istnieją, bo awaria, której zapobiegają, jest cicha: pierwszy przeciekałby hasłem na zrzucie ekranu, a drugi pozwoliłby, by link połączył czyjeś konto z twoim.

Połączenie to dopiero połowa sukcesu.

Kafelek może czytać to, co podłączysz. Z łącznikiem kafelek może też w nim zapisywać — przycisk na tablicy, który dodaje wiersz do twojej własnej bazy danych.