dash-b · Funksjoner · Koble til
Én vei inn, uansett hva det er du kobler til.
En database du kjører, en fil du slipper, et lite skript på din egen tjener. De er alle oppføringer i samme tabell, de registreres alle på samme måte, og å legge til en ny type er en oppføring i stedet for en ny skjerm.
Hva du kan koble til i dag
To former, og en fil
En database, direkte
PostgreSQL, MySQL eller MongoDB. Vert, port, database, bruker, passord, TLS på som standard. Skrivebeskyttet – ingenting dash-b gjør kan skrive til dine produksjonsdata.
En kobling på din egen server
Én PHP-fil du laster opp ved siden av databasen. dash-b får en adresse og en signeringhemmelighet, og ingenting annet: ingen vert, intet brukernavn, intet passord. Det er den eneste kilden som kan skrive, og det er nøyaktig derfor.
En fil
Slipp et regneark eller en CSV på tavlen, og det blir en ekte tabell, med kolonnene lest fra filen i stedet for gjettet av deg. Ingen registrering, ingen legitimasjon, ingenting å sette opp.
Hva som skjer med et passord
En hemmelighet vises aldri tilbake til deg
Når en legitimasjon er lagret, kan skjemaet som lagret den ikke vise den igjen. Det er ikke en innstilling – det er en egen kodebit fra den som fyller skjemaer med lagrede verdier, holdt adskilt med vilje, slik at «vis den lagrede verdien» ikke er ett flagg unna å skrive et databasepassord inn på en side som kan skjermdumpes, skjermdeltes eller leses ut av DOM-en.
Koblingen finnes slik at den sterkeste hemmeligheten du har aldri forlater din egen tjener.
Databaselenkedinasjonene dine blir i en konfigurasjonsfil på maskinen som allerede hadde dem. dash-b holder en adresse og en signatur, og ingen av dem åpner databasen din for noen andre.
Å logge inn i noe annet
Hvorfor det ikke er noen innloggingsboks her
Å koble til en konto – i motsetning til en database – betyr en leverandørs egen innloggingsside, i et vindu for seg, og en megler som holder applikasjonshemmeligheten slik at dash-b aldri gjør det og aldri ser passordet ditt.
Det gjøres ikke inne på siden, og det er ikke en preferanse. Google og Facebook nekter begge å rammes inn, bevisst: et innloggingsskjema vist inne i noens annet dokument er umulig å skille fra en phishing-side, og å bygge en ville sendt ut en tom rektangel.
Katalogen er bygget for disse og mekanismen er på plass; selve tilkoblingene er ikke åpne ennå, så designeren vil ikke tilby deg en knapp som feiler etter at du har valgt den. Når de åpner, kommer de som oppføringer i samme tabell som alt over.
To ting festet av test
Sjekkene som ikke får lov til å regresere
- Ingen hemmelighet gjengis tilbake. En test legger et merke inn i hvert felt hos hver leverandør og søker deretter i den gjengitte siden etter det.
- Et innloggingssvar troes bare når alt ved det sjekkes ut — hvor det kom fra, formen sin, engangsverdien det må bære, og alderen — og alt dette verifiseres før ett eneste felt av det leses. Nøyaktig én innlogging er underveis om gangen, så en gammel kan ikke besvares av en senere melding.
Begge finnes fordi feilen de forhindrer er stille: den første ville lekke et passord inn i et skjermbilde, og den andre ville la en lenke koble noens konto til din.
Tilkoblet er bare halve jobben.
En flis kan lese det du kobler til. Med en kobling kan en flis også skrive til det — en knapp på tavlen som legger en rad i din egen database.